DevOps 初学者的入门指南

 

什么是DevOps

随着软件发布迭代的频率越来越高,传统的「瀑布型」(开发—测试—发布)模式已经不能满足快速交付的需求。2009 年左右 DevOps 应运而生,简单地来说,就是更好的优化开发(DEV)、测试(QA)、运维(OPS)的流程,开发运维一体化,通过高度自动化工具与流程来使得软件构建、测试、发布更加快捷、频繁和可靠。

 

关于 DevOps 是什么,DevOps 的合著者 John Willis 写了一个非常好的帖子,在这里.

Devops 的好处与价值

在2016 DevOps 新趋势调查报告显示,74% 的公司在尝试接受 DevOps,那么 Devops 有哪些好处与价值呢?

  • 代码的提交直接触发:消除等待时间,快速反馈

  • 每个变化对应一个交付管道:使问题定位和调试变得简单

  • 全开发流程高效自动化:稳定,快速,交付结果可预测

  • 持续进行自动化回归测试:提升交付质量

  • 设施共享并按需提供:资源利用最大化

以上可以看出,DevOps 的好处更多基于在于持续部署与交付,这是对于业务与产品而言。而 DevOps 始于接受 DevOps 文化与技术方法论,它是部门间沟通协作的一组流程和方法,有助于改善公司组织文化、提高员工的参与感。

Devops与持续集成

DevOps 是一个完整的面向IT运维的工作流,以 IT 自动化以及持续集成(CI)、持续部署(CD)为基础,来优化程式开发、测试、系统运维等所有环节。

纵观各个 DevOps 实践公司的技术资料,最全面最经典的是 flickr 的10+ deploys per day最佳实践提到的 DevOps Tools 的技术关键点:

1.Automated infrastructure(自动化,系统之间的集成)  
2.shared version control(SVN共享源码)  
3.one step build and deploy(持续构建和部署)  
4.feature flags(主干开发)  
5.Shared metrics  
6.IRC and IM robots(信息整合)  

以上的技术要点由持续集成/部署一线贯穿,主干开发是进行持续集成的前提,自动化以及代码周边集中管理是实施持续集成的必要条件。毫无疑问,DevOps 是持续集成思想的延伸,持续集成/部署是 DevOps 的技术核心,在没有自动化测试、持续集成/部署之下,DevOps就是空中楼阁。

我们做了一款 Hosted 持续集成产品—— flow.ci ,它融入了 workflow 机制的持续集成(CI)服务,也可以理解为自动化流程平台,除了集成代码、编译、测试之外,还可以集成常用的工具、灵活自定义流程,帮助你们塑造一个更优秀智能的 DevOps 环境。

 

DevOps 的技术栈与工具链

Everything is Code,DevOps 也同样要通过技术工具链完成持续集成、持续交付、用户反馈和系统优化的整合。Elasticbox 整理了 60+ 开源工具与分类,其中包括版本控制&协作开发工具、自动化构建和测试工具、持续集成&交付工具、部署工具、维护工具、监控,警告&分析工具等等, 
补充了一些国内的服务,可以让你更好的执行实施 DevOps 工作流。

  • 版本控制&协作开发:GitHub、GitLab、BitBucket、SubVersion、Coding、Bazaar

  • 自动化构建和测试:Apache Ant、Maven 、Selenium、PyUnit、QUnit、JMeter、Gradle、PHPUnit

  • 持续集成&交付:Jenkins、Capistrano、BuildBot、Fabric、Tinderbox、Travis CI、flow.ci Continuum、LuntBuild、CruiseControl、Integrity、Gump、Go

  • 容器平台: Docker、Rocket、Ubuntu(LXC)、第三方厂商如(AWS/阿里云)

  • 配置管理:Chef、Puppet、CFengine、Bash、Rudder、Powershell、RunDeck、Saltstack、Ansible

  • 微服务平台:OpenShift、Cloud Foundry、Kubernetes、Mesosphere

  • 服务开通:Puppet、Docker Swarm、Vagrant、Powershell、OpenStack Heat

  • 日志管理:Logstash、CollectD、StatsD

  • 监控,警告&分析:Nagios、Ganglia、Sensu、zabbix、ICINGA、Graphite、Kibana

 

 

顺便再跟大家分享一个 DevOps BookMarks,这里面涉及了DevOps方方面面的工具和内容,有兴趣的同学可以前去学习。

DevOps 最佳实践

自 2009 年提出 DevOps 的概念起,很多公司都开始实施 DevOps,国外比较著名的有Amazon 、Google、Facebook等,国内著名的有百度、华为、阿里等。Amazon 是 DevOps 最佳实践的最有说服力的代表之一。这是 Amazon 在 Why We Need DevOps 一个月的 DevOps 快照:

    11.6 seconds: 平均部署时长 (工作日)
    1,079: 一小时的最大部署量
    10,000: 主机平均并发接收部署量
    30,000: 主机最高并发接收部署量

从早期的大型 SOA (Service Oriented Architecture)到 DevOps 文化的形成,Amazon 的每个工程师都可以完全独立地编写代码,测试代码,版本管理,部署上线,服务监测等任务。这套内部强大的 DevOps 文化最终形成核聚变, Amazon 一跃成为世界级别的云服务领导者 —— Amazon Web Services (AWS)。

除了 Amazon 外还有一些国内外的 DevOps 实践公司,一起来看看。

  • flickr

最全面最经典的是 flickr 的10+ deploys per day,简直是 DevOps 教科书般的存在。

  • 百度

百度技术团队是如何利用DevOps,来看看解密百度持续交付方法与实践。

  • Netflix

解密Netflix 技术团队在整个 DevOps 过程中使用的部署工具和服务.

How We Build Code at Netflix.

  • Etsy

2009年,Etsy建立自己的工具来更好更快地部署发布,「Etsy 如何应用 DevOps」值得一读。

  • LinkedIn

2009年,LinkedIn 团队就开始使用自动化部署工具,用于管理在1000+节点环境下发布上千个应用/服务的复杂性。这是 LinkedIn 自己造的轮子 >>Deployment and Monitoring Automation with glu.

  • Airbnb

Airbnb 作为第三方平台公司,需要迅速发布多个小型部署。关于 Airbnb 的数据和基础设施,可以参考这个slides。

  • Starbucks

星巴克的 DevOps 计划>> Starbucks Announces #DevOpsTogether.

http://Ancestry.com 是 DevOps 运动的早期采用者,是 Continuous Delivery 和 DevOps 运动的先锋。想了解更多关于他们的过程、迁移和 DevOps 文化,不妨查看一下他们的系列文章DevOps – Tech Roots。

DevOps = Culture + Tools

如果想整个业务部署 DevOps,不但需要软性要求即从上而下的培养 DevOps 文化自上而下地进行探索,也有硬性工具链要求,才能获得更高质量的软件交付。

最后,不论你是技术Leader,还是一名Dev、QA 或 Ops,实现全面的 DevOps 非常理想化也十分有挑战,希望这份 DevOps 初学者指南是一个好的开始:)

 

共享单车数据分析与需求预测项目 除了自行车共享系统的有趣的实际应用之外,这些系统生成的数据特征使它们成为研究的有吸引力的对象。由于这些系统在交通、环境和健康问题中的重要作用,它们引起了极大的关注。Huber 回归器:一个对异常值具有鲁棒性的模型,CV 得分为 0.4660,表明它对此数据集可能不那么有效。代码中的内容cv_score就像您正在使用的机器学习模型的成绩单。它告诉您模型的表现如何。减少异常值的影响:它还可以减少异常值的影响,因为对数转换显着缩小了数据的范围。因此,cv_score平均分数表明您的模型的预测效果如何。 阅读详情

相关推荐

OB4.X集群状态running但是oceanbase-ce is not running

自 V3.2.0 起,若 obd 设置了加密密钥,执行 display 命令输出的集群信息中,密码相关内容为加密状态。若需输出明文密码,可在命令中添加 --epk/–encryption-passkey 指定密钥用于验证。obd 运维的数据库,启停需要使用obd进行操作,停机时候没有使用obd会导致集群状态running但是oceanbase-ce is not running。查看集群中的租户时无租户反馈,警告oceanbase-ce is not running,但是查询集群状态明明是running。

qq961573863的博客 1213

「DevOps」入门指南

DevOps是一种思想、文化和实践方法,旨在加强开发和运维团队之间的协作和沟通,以提高软件交付和部署的效率和质量。在学习DevOps之前,需要了解它的定义、原则和目标,以及它与其他技术方法的区别。

技术路上的探险家 2534

YOLOv8改进策略【Neck】| CVPR 2024 MFM(Modulation Fusion Module,调制融合模块):动态特征加权融合,突出关键特征抑制冗余

本文主要利用DCMPNet中的 MFM 模块优化 YOLOv8 的目标检测网络模型。模块通过动态调制特征融合过程,实现了对多尺度、跨层级特征的智能聚合。将其应用于的改进过程中,针对目标检测中边界特征与语义信息的互补性需求,缓解网络中浅层细节与深层语义融合不足的问题。Depth Information Assisted Collaborative Mutual Promotion Network for Single Image Dehazing在图像去雾网络中,不同层级和类型的特征包含着互补的信息(如浅层的

Limiiiing的博客 351

DevOps入门

DevOps入门,看本文前要知道DevOps是什么,能解决什么问题

lendsomething的博客 460

VMware如何安装img镜像,VMware如何安装openwrt软路由(含相关工具镜像)

VMware如何安装img镜像,VMware如何安装openwrt软路由(含相关工具镜像)

XiaoqiangClub的博客 4007

QT+Halcon实现螺纹检测

工业上要检测螺丝的内外直径、内外牙距、内外角度,现在比较好用的图像处理库,开源的opencv,收费的有halcon。为了实现螺纹检测,和对比螺纹检测拿个库比较好。分别用opencv和halcon实现了螺纹检测,通过对比发现用halcon实现的效果比较。现在用博客把实现过程记录下来: 1、需要检测的螺纹数据如下: 2、为了实现检测螺丝以上数据,螺纹内径、螺纹外径、螺纹外牙距、螺纹...

专注现代C++实战,从核心语法到高性能编程,助力开发者深入掌握系统级编程精髓。 7050

Java的新项目学成在线笔记-day20(四)

3 Docker 3.1 虚拟化技术 3.1.1 问题描述 互联网的发展使软件业发生了巨大的变化,其中一个显著的变化是软件的规模越来越大,基于微服务架构的软件在 生产部署时遇到了这样的挑战: 1、微服务的开发语言、操作系统、依赖库等环境配置不同,如何快速安装、迁移、配置软件? 2、一个软件由若干微服务组成,如何快速批量部署微服务? 3、如...

czbkzmj的博客 325

在 SAP 里玩转 FTP:标准程序 RSFTP00x 全景解析与落地实践

摘要:SAP系统通过封装的标准FTP程序(RSFTP001-008)提供便捷的文件传输能力,适用于各类集成场景。关键点包括:1)依赖SAPFTP可执行程序和RFC目的地;2)使用RSFTP005进行前置检查并生成RFC配置;3)标准报表各司其职,如RSFTP002用于命令测试、RSFTP007/008提供参考实现;4)开发时组合FTP_CONNECT/COMMAND/DISCONNECT等函数模块。特别注意前台(SAPFTP)与后台(SAPFTPA)的环境差异,这是常见故障点。该方案通过标准化工具链显著降低

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 210

谈谈DevOps工程师需要学习的技能

点击上方蓝字⭐️关注“DevOps云学堂”,接收最新技术实践3月28日晚上8:00分享《使用Kustomize管理Kubernetes清单》点击下方预约按钮,预约直播上期直播回放,可以通过视频号观看今天是「DevOps云学堂」与你共同进步的第8天关注公众号,回复 devops,免费加入DevOps学习群获得问题解析、DevOps解决方案指导当今的软件开发环境中,DevOps成为了每个组织必...

DevOps持续集成的博客 459

Cesium雷达追踪追踪(圆锥体效果)

【代码】Cesium雷达追踪追踪(圆锥体效果)

God's asylum的博客 2931

使用MATLAB的COMSOL LiveLink:实时连接和数据传输

COMSOL LiveLink是一种功能强大的MATLAB工具包,它允许用户在MATLAB环境中与COMSOL Multiphysics软件进行实时连接和数据传输。COMSOL LiveLink是一种功能强大的MATLAB工具包,它允许用户在MATLAB环境中与COMSOL Multiphysics软件进行实时连接和数据传输。使用COMSOL LiveLink,你可以进行更复杂的模型设置和数据传输使用MATLAB的COMSOL LiveLink:实时连接和数据传输。

PixelNinja的博客 2092

devops入门与实践

即公司有几个专业化部门,如存储,网络,服务器等团队,则开发出的软件也会是由这几个部分进行整合而成。康威定律:设计系统的组织,其产生的设计等同于组织的沟通结构。软件质量管理pdca 计划,做,检查,执行。

m0_59198143的博客 319

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

给 DevOps 初学者的入门指南

当我们谈到 DevOps 时,可能讨论的是:流程和管理,运维和自动化,架构和服务,以及文化和组织等等概念。那么,到底什么是”DevOps”呢?什么是DevOps随着软件发布迭代的频率越来越高,传统的「瀑布型」(开发—测试—发布)模式已经不能满足快速交付的需求。2009 年左右 DevOps 应运而生,简单地来说,就是更好的优化开发(DEV)、测试(QA)、运维(OPS)的流程,开发运维一体化,通过高

FIRim的专栏 4万+

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Ansible第5篇【Ansible入门详解:DevOps初学者指南(配置文件深度剖析)】

通过这种逐步分解的方式,初学者可以清晰理解每个配置文件的组成和相互关系,在实际DevOps实践中循序渐进地掌握Ansible。

老韩的Linux云计算架构师进阶之路 197

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

软件工程开发初学者入门指南:从产品概念到DevOps实践的全流程概览

二、产品概念与定义理解软件产品的愿景是开发成功的关键。学生需要掌握如何理解产品的需求、目标用户以及市场定位,并能够设计出符合这些要求的产品原型。同时,合理定义产品,减少不确定性,是确保项目顺利进行的基础。学生需要学习利用合适的方式和表达范式来定义软件产品,为后续的开发工作打下坚实基础。1.产品概述3.功能列表4.数据存储与管理2.迭代周期五、品质管控与测试品质是软件的生命线。学生需要学习如何通过软件测试来提供质量管控的相应指标和验证方式。

Csy123520的博客 1274

2025年DevOps入门指南:工具演进与新手适配策略

对于 DevOps 初学者,建议优先考虑 Gitee DevOps 平台,其次可了解 Jenkins 和 CircleCI。Gitee DevOps作为国内领先的一站式开发协作平台,集成了代码托管、持续集成/持续交付(CI/CD)、项目管理等功能,界面简洁且对中文用户友好,特别适合国内开发者快速上手。其开箱即用的特性、本地化服务以及丰富的生态资源,能有效降低新手的学习成本。

weixin_42289451的博客 2132

2025年新手入门DevOps工具选型指南

对于 DevOps 初学者,建议优先考虑 Gitee DevOps,其次可了解 Jenkins 和 CircleCI。Gitee 作为国内领先的一站式 DevOps 平台,集成代码托管、CI/CD、项目管理等核心功能,特别适合中文用户群体。其开箱即用的特性、本地化服务以及丰富的生态资源,能有效降低新手的学习成本。

2501_90862934的博客 1255

新书速览|Kubernetes从入门到DevOps企业应用实战

全书共20章,第1~3章讲解容器技术,这是理解Kubernetes的必要基础,主要介绍容器的定义、创建和管理容器、容器网络和存储等方面的知识。《Kubernetes从入门到DevOps企业应用实战》基于Kubernetes 1.27新版本编写(本书的内容也适合1.20之后的所有版本),从零基础开始,涵盖理论知识、企业级案例,以及自动化运维DevOps体系和一些大厂架构设计思路,适合云原生领域的从业者、Kubernetest初学者、运维和开发人员使用,也可以作为企业内训、培训机构和大中专院校的教学用书。

quanzhankaifaqua的博客 1583

DevOps 路线图指南

**DevOps Roadmap for 2024** 是一个由Dr Milan Milanović和Romano Roth合作创建的开源项目,旨在提供成为DevOps工程师的逐步学习路径。这个项目包括了一个详细的步骤指南,链接到相关的学习资源,帮助你了解和掌握DevOps的各个方面。订阅作者的时事通讯可以获取更多关于DevOps的信息和更新。 ## 2. 项目快速启动 ### 安装Git 首...

gitblog_00780的博客 731

探索 Gitbooks-DevOps-Roadmap:一个全面的学习与规划工具

探索 Gitbooks-DevOps-Roadmap:一个全面的学习与规划工具 去发现同类优质开源项目:https://gitcode.com/ 上的 是一个精心策划的资源库,专为那些希望深入 DevOps 领域并构建自己职业道路的人而设计。该项目以 Gitbook 的形式组织,提供了一个清晰且结构化的学习路径,涵盖了从基础到高级的 DevOps 技术和实践。 技术分析 Gitbooks-Dev...

gitblog_00052的博客 560

3000 帧画面告诉你什么是 DevOps

DevOps是什么?可能不是很懂!没关系!CODING 团队历时 3 个月,用 3000 帧制作的 DevOps 科普视频 新鲜出炉啦~只需要 3分钟,Dev 和 Ops 果农将带你走...

边缘计算社区 254

从零开始掌握DevOps:7个免费资源助你突破持续集成与部署技术壁垒

在当今软件开发领域,DevOps已成为连接开发与运维的关键桥梁,而持续集成(CI)和持续部署(CD)则是DevOps实践的核心环节。本文精选了7个高质量免费资源,涵盖入门教程、实战课程和工具指南,帮助新手快速掌握DevOps技能,轻松应对CI/CD技术挑战。 ## 📚 1. 全面的DevOps入门课程 **推荐资源**:[Complete DevOps Zero to Hero Course

gitblog_00451的博客 454

Kubernetes面向初学者的架构介绍

要开始使用Kubernetes?看看这个关于Kubernetes架构基础知识的快速入门指南,以及一开始就应该知道的关键内容Kubernetes作为一个强大的平台,特别是对于云原生应用来说...

NewTyun的博客 235
上一篇: ORM框架使用优缺点
下一篇: .net技术栈
卓炳坤
博客等级 码龄10年 33粉丝 39原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值