阿里巴巴DevOps实践指南.pdf
《阿里巴巴DevOps实践指南.pdf》由会员分享,可在线阅读,更多相关《阿里巴巴DevOps实践指南.pdf(182页珍藏版)》请在咨信网上搜索。
1、阿里巴巴DevOps实践指南从 DevOps 到 BizDevOps(2021)ALPD系列丛书目录01目录DevOps概述1.1 DevOps 的起源 0101.2 DevOps 的目标是支持业务敏捷 0151.3 阿里巴巴 DevOps 实施的价值主张 02002 业务驱动的协作和产品导向的交付2.1 需求的层次结构 0262.2 业务驱动的协作 0302.3 产品导向的交付 0382.4 规模化实施路径 04403 建设和提升持续交付的工程能力3.1 以特性为核心的持续交付 0513.2 本地开发 055 3.3 云端开发 065 3.4 代码评审 069 3.5 代码检测 073 3.
2、6 测试提效 0823.7 测试环境与路由 0913.8 应用环境能力 0973.9 基于应用和变更的交付模式 103 3.10 提升构建的效率 1093.11 基于制品元数据提升交付效率 11504 基于应用的持续运维05 阿里巴巴 DevOps 工具体系 17306 DevOps 能力提升模型 1804.1 监管控一体化运维 1244.2 业务系统安全工程 129 4.3 全景监控 1374.4 发布策略 146 4.5 编排运维 156 4.6 智能运维 163序数字化是一次产业革命,DevOps 是其中的重要组成部分。每一次产业变革都从革命性的技术开始,围绕它建立新的基础设施,形成新的
3、技术和管理范式,最终彻底变革整个产业。那些及早建立新基础设施,并引领新技术和管理范式迁移的经济体将从一轮产业革命中崛起。第一次工业革命建立了蒸汽动力和机器生产的基础设施,形成了工业化的基本范式,英国从中崛起。第二次工业革命建立了内燃机和电气化的基础实施,形成了科学管理的基本范式,美国和德国实现超越。数字化革命发端于 1970 年代的美国硅谷,它以信息化为肇始,带来互联网在全球蓬勃发展,而这只是开始。今天,数字化变革正深入每一个具体产业,驱动深层次的产业变革,让企业对客户、市场和环境的反应更精准、灵活、即时和高效。数字化和产业将发生化学反应,客户体验和产业效率都必须发生质的提升,这是数字化变革给
4、每个产业的命题和挑战。以云计算、大数据、人工智能、IoT 等为代表,新的数字化基础设施已经就绪,并将继续演进。更重要的是与之配套的技术和管理范式的转变,如:数字化转型路径、面向数字化的组织、数字化的全链路协同、数字化时代的 IT 研发模式。其中 DevOps 已成为数字化时代 IT 研发和管理范式,并成为企业数字化转型重要的组成部分。DevOps 是什么?企业该如何建设 DevOps 能力?我们必须在数字化转型的背景下加以考察,具体来说包含业务交付和系统运行两个方面。第一:持续顺畅高质量地交付有效价值。它的目的是缩短从业务想法的提出到实现和交付的时长,使这一过程更加顺畅和精准。数字化的组织,要
5、围绕这一目标构建技术工程体系和协作模式,消除业务需求交付过程中的一切阻碍和等待,让 IT 交付节奏,跟上业务发展的需要。第二:极致弹性和韧性的系统运行。IT 系统必须满足业务运营的要求,具备极致的弹性和韧性。弹性是指它随业务负载自动、实时的扩缩容,以精准的弹性和合理的成本满足业务;韧性指的是确保系统安全、合规和稳定的运行,实现系统运行的连续可用性和安全稳定。以上两者,都要求打破 IT 开发部门和 IT 运维部门之间的隔阂,包括技术、流程和组织上的隔阂,也就是所谓开发运维一体化(DevOps)。一体化是手段,最终的成果必须体现为顺畅的业务交付和连续稳定的系统运行。而这一切都必须以业务为源头,打通
6、从业务到开发再到运维的整个流程,实现业务、产品和运维的有机融合,形成高效的业务交付、运行和反馈闭环。严格意义上 DevOps 应该是包含业务在内的 BizDevOps,延续业界的习惯,我们还是称其为 DevOps,不过其内涵一定是包含业务,且以业务为根本驱动的。DevOps 是数字化时代的研发新范式,需要协作模式和工程技术两个方面的变革,这两者相辅相成,又相互制约。阿里巴巴 DevOps 实践指南,将分别从协作模式和工程技术两个方面展开。工程技术对应研发敏捷,协作模式对应组织敏捷,帮助组织顺应数字化变革的要求,让技术发挥其核心作用,加速业务发展,引领业务创新。在数字化变革的浪潮中,中国作为产业
7、规模最大和门类最齐全的经济体,迎来百年未有的崛起机会。拥抱数字基础设施,探索符合数字化时代要求的技术和管理范式,将帮助我们切实把握机会,实现伟大的复兴。而把握这一机会的组织,将在数字化变革的浪潮中脱颖而出。DevOps 是其中不可或缺的环节,希望我们的实践总结对你有所启发。推荐语数字化转型是从社会到企业的整体转型,需要顶层设计和统一规划。数字生态最终是一个高度连接的社会而非一座座割裂的竖井。阿里巴巴 DevOps 实践指南说明,一体化的开发和运维要支持的目标正是全链路、全生命周期的业务,这是技术发展的方向,也是数字生态的必然要求。IBM 副合伙人、银行数字化转型作者、极客时间说透数字化转型专栏
8、作者 付晓岩企业的数字化转型必然绕不过 DevOps,核心点还是 IT 如何赋能业务,创造价值。该本指南书体系思路非常清晰,个人理解是从交付态和运行态两个视角去阐述,并完全以应用为视角。交付态也就是今天 DevOps 里面提到的核心工程实践:持续交付。持续交付是对过去割裂的 IT 组织交付模式的一次革命;运行态,是从连续性运维的角度去探讨,其中又引入了多个不同的最新实践,如智能化运维。难得的是,书中的很多实践都来自于阿里实际,实践完善了理论,理论才可以更好地指导实践。的确是一本难得的实践指南书!优维科技创始人&CEO 王津银DevOps 与云化开发平台的结合实现了软件开发工具平台的一次飞跃,不
9、仅实现了软件开发工具的集成化和流水线化,而且使得基于大数据分析的软件开发质量与效能提升成为可能。阿里巴巴 DevOps 实践指南的推出为我们了解业界 DevOps 和云化开发实践、开展软件开发大数据分析研究工作提供了重要指导。围绕相关话题,学术界和工业界有望开展更多的交流与合作,共同推进软件工程研究与实践的发展。复旦大学计算机科学技术学院副院长、软件学院副院长、教授 彭鑫过去 10 多年,阿里云在 IT 基础设施方面做了非常多的探索和努力,得到了客户和社会的认可。云、大数据、AI、IoT 等,已成为新一代数字化基础设施。如何让这些基础设施发挥更大作用,推动产业数字化变革,这也是我们持续努力的方
10、向,DevOps 能力是其中的核心环节之一,希望阿里巴巴 DevOps 实践指南对你有所启发,成为你在数字化转型道路上的伙伴。蒋江伟 阿里巴巴合伙人技术创造新商业,技术已成为数字化时代业务创新和发展的核心环节。提升技术的业务响应和交付能力,并保障系统运行的连续性和稳定性,已成为数字化组织的共同挑战。阿里巴巴 DevOps 实践指南源自阿里巴巴多年的一线实践,并做了系统性的沉淀。不管是工程、协作、运维还是工具,希望你能有所收获,并用以指导实际工作。刘国华 阿里巴巴研究员、混合云平台负责人从 B2B 到淘宝、从跨境电商到本地生活,面对如此丰富、如此大规模的业务交付需求,阿里巴巴在软件交付效率上一直
11、走在行业的前列。为此,公司从技术文化、技术架构、软件基础设施及平台、以及流程上做了全面和深入的设计和优化。阿里巴巴 DevOps 实践指南总结了其中精华的部分,并详细解释了实践背后的思考,指南的内容主要是由工作在一线的资深工程师撰写,读来体感强烈,推荐给大家。许晓斌 阿里巴巴高级技术专家概述DevOps概述1.1 DevOps 的起源谈到 DevOps,就必须从敏捷和精益开发说起。DevOps 在它们基础上发展而来,借鉴了其中的方法、理念,并发展和完善了它们的实践体系。敏捷软件开发的兴起敏捷软件开发的实践最早出现在上世纪 90 年代。当时,一批轻量的软件工程方法和框架相继诞生,它们共同的特点是
12、,相对传统软件工程,都遵循演进和迭代的模型,过程更加轻量灵活。其中 Scrum 和极限编程(ExtremeProgramming)在实践上最为成功,影响最大。它们都是迭代和增量的软件开发框架,区别是Scrum 只包含管理实践,而极限编程则同时涵盖工程和管理实践。上世纪 90 年代,PC 软件流行和第四代编程语言的出现,面向对象和设计模式运动的兴起,让小型项目的开发蓬勃发展。同时,互联网应用和开源社区兴起,有别于传统的开发模式不断涌现,优秀个人在程序开发中的作用得到凸显。这些因素都让非传统开发方法有了实验的土壤。其结果是,一方面质量问题层出不穷,这部分促使了源自全面质量管理体系的 CMM/CMM
13、I 在这一时间的繁荣和推广;另一方面也产生了许多不同于传统方法的有效实践,让业界看到了新的可能。敏捷运动这时已经呼之欲出,它既是对传统的反叛,也是对野蛮生长的规范。2001 年 2 月,17 位轻量级软件工程方法的代表人物,齐聚美国犹他州的雪鸟滑雪胜地,其中也包括 Scrum和 极 限 编 程 的 几 位 发 明 人。在 两 天 的 会 议 之 后,发 布 了 后 来 产 生 巨 大 影 响 的 敏 捷 宣 言(参 见http:/agilemanifesto.org/),敏捷宣言陈述了他们共同认可的关于软件的开发方法的理念,同样重要的是他们找到了敏捷这个词来总领这些理念。010敏捷概念在 20
14、01 年出现,可以说适逢其时。当时,一方面传统方法变得越来越臃肿笨重,却没有解决软件危机;另一方面,人类正在进入互联网时代,软件业对响应变化和创新的要求迅速升级,这是更根本的原因,毕竟需求才是行业发展的最好助推剂。敏捷宣言发布后,敏捷成为了一场运动,被迅速地推广和应用。但是,早期的敏捷专注的还是研发交付阶段,站在业务的角度,它的目标是帮助产品和研发团队提升敏捷响应能力,也就是:“更早地交付价值,更灵活地应对变化”。然而,在企业数字化转型的背景之下,IT 不仅要保证产品的开发和交付,系统部署和运行同样重要。DevOps 继承了敏捷开发的理念,又补上了运维的部分,但 DevOps 绝不是开发和运维
15、的简单叠加,这个我们后面还会说到。精益产品开发的出现精益思想最早源自生产制造领域,根源于丰田在产品制造中管理和工程实践。1988 年斯隆管理评论的一篇论文精益生产系统的胜利比较了西方的生产方式和丰田生产方式在效率和质量上巨大差距,挑战了规模生产带来效益的神话。从此,精益开始进入西方的视野,逐渐成为现代管理学的重要组成部分。精益思想一书将精益定义为:有效组织人类活动的一个新的思维方法,目标是消除浪费,以更多地交付有用的价值。书中进一步总结了精益的 5 个原则,同时也是精益的 5 个实施步骤:1.定义价值:站在用户的视角定义什么是价值,并把它描述为具体产品或服务;2.识别价值流:识别和映射创造价值
16、的流程步骤,消除不增加用户价值的步骤和活动;3.让价值持续流动:让用户价值在流程步骤中流动起来,使它们持续、顺畅地流向最终用户;4.用户价值拉动:由用户价值拉动流动,避免不带来用户价值的浪费;5.精益求精:不断重复 1 到 4 步。追求完美的价值和价值流动,消除过程中所有浪费。在这个抽象层次上,精益思想超越了其诞生的制造业,深刻影响了各个行业,如精益政务、精益医院、精益领导力、精益服务业、精益供应链、精益教育等,这其中也包含产品开发。事实上,主流的敏捷开发方法都直接受到了精益思想的影响,遵循精益的基本原则。与此同时,精益产品开发作为独立的实践体系也快速发展,它聚焦两个方面的目标价值交付过程和价
17、值本身。阿里巴巴 DevOps 实践指南011第一,关注价值交付过程。其中比较有代表性的是“精益看板方法”,它由 David Anderson 在 2006 年左右基于自己的实践发展而来,并在 2010 年出版的看板方法一书中加以系统总结。“看板方法”是精益思想在软件开发中具体应用。它从可视化需求交付端到端的价值流开始,通过系统的实践提升需求的流动效率,并确保流动的过程质量,从而实现端到端的系统改进。“看板方法”为代表的这一类精益实践的本质改变是:从关注资源的使用效率,转变为关注价值的流动效率。这也带动使用者从过去的局部优化转向端到端的全局优化。第二,关注价值本身。其中比较有代表性的是“精益创
18、业”。精益创业的实践最初由 Steve Blank 基于自己和其他硅谷的创业实践发展而来,Eric Ries 在精益创业一书中对精益创业的理念和实践,做了系统的总结,并让精益创业的理念迅速普及。精益创业认为创业是一个巨大不确定的过程,其最大的浪费是交付没用的(不能解决用户问题,或带来业务成功)的东西。为此它把价值的探索和发现融入产品交付过程,提出了著名的“开发-测量-学习”循环。循环从关于市场和产品的待检验概念开始。接下来,循环的第一步是开发用以验证这一概念的最小可行产品(MVP,Minimal Viable Product);第二步:基于最小可行产品收集市场、用户的反馈,并获得测量数据;第三
19、步:用数据验证假设,证实或证伪它们,并加以调整,产生经实证的认知。然后,进入下一循环,持续探索商业模式和产品功能设计。精益创业的影响远超初创公司,事实上“精益创业”一书中把“创业”定义为在不确定的环境下,开创新的业务和产品。而“不确定性”似乎已成为今天 IT 领域身处环境的共性,也因此,MVP、“开发-测量-学习”循环等理念已成为 IT 创新领域公认的实践,并且围绕精益创业发展出一套完整的创新实践体系,如精益数据分析、精益客户开发、精益交付设计等。探索和发现有效的价值,并让价值顺畅流动。围绕这两个目标,并遵循精益思想,精益产品开发已经发展成为系统的实践。精益思想对 DevOps 的影响也非常根
20、本,DevOps 三原则就完全遵循了精益思想。DevOps 的诞生最初,敏捷和精益社区都还只是关注开发侧的实践和行为,运维并没有成为他们关注的重点。但是,光有系统开发是不够的,开发完的系统必须即时顺利部署,并连续稳定运行才能够实现价值。而传统上,这部分是由运维负责的。从价值的角度,开发加运维才构成相对完整的 IT 价值链。当然更完整的还应该包含业务,这是后话了,这012还不是早期 DevOps 社区关注的重点。DevOps 诞生之初,解决的问题还是开发和运维之间的问题,这是影响 IT 价值链的最突出问题。在传统的 IT 组织下,开发团队(Dev)和运维团队(Ops)之间诉求不同开发团队(尤其是
21、敏捷团队)追求变化,运维团队追求稳定。双方往往存在利益的冲突,比如,精益和敏捷的团队把持续交付作为目标,而运维团队则为了线上的稳定而强调变更控制。部门墙由此建立起来,这当然不利于 IT 价值的最大化。2009 年,在美国举行的第二届 Velocity 大会上,来自 Flickr 公司的 John Allspaw 和 Pauk Hammond发表了一个演讲10+Deploys Per Day:Dev and Ops Cooperation at Flickr。在这个演讲中,Allspaw和 Hammond 以角色扮演的方式,生动地表现了开发与运维之间的各种冲突。演讲中出现很多金句,如“Its n
22、otmy code,its your machines!”,这深刻反映了 Dev 和 Ops 关系的现状。接着,他们又展示了如何通过消除开发团队(Dev)和运维团队(Ops)的壁垒,双方通力合作,借助工具和文化的改变让软件的发布和运维变得持续和高效。这次演讲是 DevOps 发展历程中的标志性事件。它提出了正确的问题为了更快交付和实现价值,必须弥合开发和运维之间的鸿沟,并给出了解决方案为了弥合开发和运维之间的鸿沟,需要在文化、工具和实践方面的系列变革。同一年,比利时独立 IT 咨询师 Patrick Debois 看到这个演讲,受到启发,组织了第一届 DevOpsDays,DevOps 正式登
23、上舞台,DevOps 的理念开始流行,其相关的工具和实践也快速发展。期间以容器化和自动编排调度为代表的云原生技术的出现也极大加速了这一进程。今天,DevOps 已成为企业数字化的核心能力之一,是对 IT 交付和运行的基本要求。其后,在 凤凰项目和DevOps 实践指南两本书中,Gene Kim 等人总结了 DevOps 实施的三步工作法,它们分别是:流动原则:聚焦 IT 系统的整体价值流,全局优化,保证价值从左(上游)到右(下游)的快速流动。反馈原则:创建从左到右的反馈循环,并缩短反馈周期和放大反馈效果。这样,就可以更快的响应和理解内外部客户,并即时获取改进所需要的知识。持续的实验和学习原则:
24、创建承担风险、持续实验并从错误中学习的文化,在不断的尝试中精进能力,并提高系统的韧性。Kim 等人认为,这三步工作法是其他一切 DevOps 流程、实践的价值和哲学根基,所有 DevOps 模式都可以从这三个原则派生而来。阿里巴巴 DevOps 实践指南013稍作探究,就能够觉察,DevOps 三步工作法是精益原则的翻版。更确切的讲,是精益原则在 IT 开发和运行上下文中的具体实例。事实上,DevOps 的基础部分,体现了精益原则的影响和应用。总结回顾敏捷、精益和 DevOps 的发展,我们可以得出如下两个结论。第一,DevOps 是敏捷开发实践的自然发展。敏捷开发的目标是“更早地交付价值,更
25、灵活地应对变化”。敏捷运动始于开发侧,但运维侧如果不做改变,就一定会成为瓶颈,最终敏捷的目标还是无法达成。为了让敏捷实践发挥真正的价值,开发运维的联动就势在必行了。第二,DevOps 是精益思想应用在 IT 领域的必然结果。精益产品开发的目标是:“顺畅的交付有效价值”,精益思想则要求端到端的系统优化和持续的改进。而开发和运维是系统的两个重要组成部分,缺一不可。DevOps 三原则,正是精益思想在 IT 开发运维领域的具体实例。最后,从精益思想出发,我们可以看到 DevOps 的必然发展方向,那就是向业务侧延伸。业务是产品开发和运维的源头,完整的价值流必须从源头开始。这不是预测,而是正在发生的事
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 阿里巴巴 DevOps 实践 指南
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【Stan****Shan】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【Stan****Shan】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。