DevOps:软件架构师行动指南1.4 DevOps与敏捷

1.4 DevOps与敏捷


DevOps的一个特征是强调DevOps实践与敏捷实践的关系。本节将把DevOps实践覆盖在IBM规范敏捷交付上。我们的重点不是解释规范敏捷交付,而是说明DevOps中增加的内容。如果想了解规范敏捷交付,可参阅《Disciplined Agile Delivery: A Practitioner’s Approach》一书。如图1-2所示,规范敏捷交付包含3个阶段——开始、构造和转换。在DevOps的语境中,我们把转换解释为部署。

DevOps实践影响所有这三个阶段。

1)开始阶段。在开始阶段中,完成发布计划和初始需求规格说明。

a.运维人员考虑的内容将为开发人员增加一些需求。本书后面会介绍更多细节,其中的两个需求是维护发布向后兼容性以及软件可切换的特性。运行日志信息的形式和内容影响运维人员排查问题的能力。

b.发布计划包含了为功能定优先级,它也包含了与运维人员之间的配合,包括发布调度、确定运维人员为了支持新发布需要做哪些培训。发布计划也包含了确保与生产环境中的其他软件包的兼容性以及发布失败时的恢复计划。DevOps实践使得在发布计划中与协作相关的很多主题不再需要,而其他方面变得高度自动化。

 

图1-2 每个发布的规范敏捷交付阶段(改编自Ambler和Lines编著的《Disciplined Agile Delivery: A Practitioner’s Guide》一书)[标注法:波特价值链]

2)构造阶段。在构造阶段中,DevOps实践的关键要素是对代码分支的管理、持续集成和持续部署的使用、自动化测试的测试用例的合并。这些也是敏捷实践,但却是实现自动化部署流水线的一个重要组成部分。一个新的元素是在构建与转换活动之间,集成和自动连接的。

3)转换阶段。在转换阶段中,对解决方案进行部署,并由开发团队负责部署、监控部署的过程,确定是否需要回滚以及何时回滚,并监控部署后的运行。开发团队有一个“可靠性工程师”的角色,他在部署和后续运行过程中负责监控及排查问题。

时间: 2024-09-20 06:15:47

DevOps:软件架构师行动指南1.4 DevOps与敏捷的相关文章

《DevOps:软件架构师行动指南.》导读

本节书摘来自华章出版社<DevOps:软件架构师行动指南.>一书中作者伦恩·拜斯(Len Bass) [澳]   英戈·韦伯(Ingo Weber)    著 朱黎明(Liming Zhu)   前言   多年以来,我们一直在探索研究运维中的问题.自然而然地,我们也一直在追踪DevOps运动.它正在沿着Gartner成熟度曲线向上发展.这种现象有着坚实的业务原因.我们能够找到从信息技术经理视角对DevOps的探讨(例如小说<凤凰项目:一个IT运维的传奇故事>),也能找到从项目经理视

DevOps:软件架构师行动指南1.1 概述

第一部分 背 景 这一部分为本书的后续章节提供了必要的背景知识.DevOps是一项运动,它设想在开发组和运维组之间没有冲突.DevOps的出现与云发展成为大小型组织的基本平台是同时发生的.第一部分有3章. 在第1章中,我们将定义DevOps,并且讨论DevOps的各种驱动力.DevOps是一个包罗万象的术语,它可以涵盖多个含义,包括让开发人员和运维人员互相沟通:允许开发团队自动化地部署到生产环境:当在生产环境中发现错误时,让开发团队成为第一个响应者.在这一章中,我们将梳理出各种关注点,并且关于D

DevOps:软件架构师行动指南1.2 为什么是DevOps

1.2 为什么是DevOps 从很多方面来讲,DevOps是对缓慢发布的问题做出的响应.发布投放到市场的时间越长,从中获得的功能或质量提升的收益就越低.理想情况下,我们希望持续发布.常常用术语持续交付或持续部署来表示.我们在第5章和第6章讨论这两个术语的细微差别.在本书中,我们使用术语持续部署,或部署.我们开始时先描述一个正式发布过程,然后深入探讨缓慢发布的一些原因. 1.2.1 发布过程 向客户发布新系统或现存系统的新版本是软件开发周期中最敏感的步骤.不论系统或版本是对外发布.直接由客户使用还

DevOps:软件架构师行动指南1.8 小结

1.8 小结 本章的主要知识点是:人们从不同的视角定义DevOps.例如,运维人员采用敏捷实践,开发人员承担运维责任,以及其他一些视角的定义.但共同目标是缩短一个功能或改进点从业务思路构想到最终部署给用户的时间. 由于文化及技术上的挑战,DevOps面临着障碍.它可能对团队架构.软件架构.运维的传统方式形成巨大的冲击.我们列出了一些常见的实践,让你对这种冲击有初步的了解.我们将在本书剩余部分详细讲述这些主题. DevOps涉及的一些权衡如下: 现在需要支持DevOps工具了.在对工具进行支持与缩

DevOps:软件架构师行动指南3.2 运维服务

3.2 运维服务 运维服务包括供给硬件.供给软件,或者支持各种不同的IT功能.由运维提供的服务,还包含服务级别协议(Service Level Agreement,SLA)的规格说明和监控.容量规划.业务连续性以及信息安全. 3.2.1 供给硬件 硬件可以是组织拥有的物理硬件,也可以是由第三方或云供应商管理的虚拟硬件,也可以是由个人.项目,或者大型组织中的一部分所使用的硬件.表3-1展示了这些可能性. 表3-1 个人.项目和组织使用的硬件类型 使用者 物理硬件 虚拟硬件 个人 笔记本电脑.台式机

快速指南:在DevOps中实现持续交付

本文讲的是快速指南:在DevOps中实现持续交付[编者的话]时至今日,以几乎相同的步调实现开发与交付已经成为一种必需.本份快速指南将帮助大家弄了解持续交付概念中的那些"良方"与"毒药". [烧脑式Kubernetes实战训练营]本次培训理论结合实践,主要包括:Kubernetes架构和资源调度原理.Kubernetes DNS与服务发现.基于Kubernetes和Jenkins的持续部署方案 .Kubernetes网络部署实践.监控.日志.Kubernetes与云原

DevOps第一讲:什么是DevOps

DevOps第一讲:什么是DevOps DevOps概念早先升温于2009年的欧洲,因传统模式的运维之痛而生. DevOps是为了填补开发端和运维端之间的信息鸿沟,改善团队之间的协作关系.不过DevOps其实包含了四个部分:产品.开发.测试和运维. DevOps希望做到的是软件产品交付过程中IT工具链的打通,使得各个团队减少时间损耗,更加高效地协同工作.专家们总结出了下面这个DevOps能力图,良好的闭环可以大大增加整体的产出. 那么究竟什么是DevOps 需要购买阿里云各种产品,点击文字链领取

DevOps:软件架构师行动指南1.7 障碍

1.7 障碍 如果DevOps解决了开发中长期存在的问题并有如此明显的好处,为什么不是所有的组织都采用DevOps实践呢?本节将探讨采用DevOps时遇到的障碍. 1.7.1 文化及组织类型 在讨论DevOps时,文化很重要.在跨组织以及同一个组织中的不同群体之间,与DevOps相关的文化问题都会影响它的形式与采用.文化不仅取决于你的角色,而且取决于你所在组织的类型. DevOps的目标之一是缩短新功能或新产品投向市场的时间.在采用DevOps实践时,组织要考虑的一个问题是缩短面市时间所带来的收

DevOps:软件架构师行动指南DevOps:软件架构师行动指南2.3 独特的云特性对DevOps的影响

2.3 独特的云特性对DevOps的影响 云影响DevOps的3个独特特性是简单地创建和切换环境的能力:轻松创建虚拟机的能力,以及数据库的管理.我们首先讨论环境. 2.3.1 环境 在我们的上下文中,环境是足够执行软件系统的一组计算资源,包括所有支持软件.数据集.网络通信,以及执行软件系统所需定义的外部实体. 这个定义的关键点是:除了明确定义的外部实体外,环境是自包含的.一个环境通常独立于其他环境.在第5章中,我们会看到一些环境,例如开发.集成.用户测试,以及生产环境.在第12章的案例研究中,环