DevOps 是基于持续交付的软件工程。DevOps的核心知识体系在DevOps 四书。持续交付主要是指应用软件集成交付环节,通过配置管理、构建与持续集成、测试管理、部署与发布管理、环境管理、数据管理和度量管理领域的能力建设和工程实践保证软件持续顺畅高质量的对用户完成发布。
DevOps 四书
《持续交付》奠定了基础:三个基础能力(配置、集成、自动化),部署流水线,交付生态圈。
《DevOps实践指南》拔高到三步法:流动、反馈、学习。
《加速》进一步拔高到五大能力:
持续交付能力
架构能力
产品与流程能力
精益管理与监控能力
文化能力
《Effective DevOps》聚焦人因。
DevOps一二三四五与DevOps四书
一个基础(持续交付)《持续交付》
二个方面(工具与文化)《Effective DevOps》
三步法《DevOps实践指南》
四大指标《DORA报告》
五大能力《加速》
一句话解读持续交付核心能力:
一、三个基础能力:配置管理、持续集成、自动化测试
1、配置管理:承载内容一致性,是代码的账本,要找的东西都能找到,保证能从版本控制系统从头创建生产系统。
2、持续集成:解决积累问题,把好的代码收进来,使应用程序时刻可工作,需与配置管理、自动化构建和测试配合使用。
3、测试管理:解决质量一致性问题,每次修改之后都能运行一次自动化测试集合,以保证质量。
配置管理、持续集成、自动化测试是持续交付的三个最基础能力,三位一体,分别解决记账、积累、质量问题,保证持续积累高质量、完整一致可工作的代码集合。正确性、一致性、自动化是效能最基本的逻辑。
二、部署流水线:流水线、自动化、开发测试、验收测试、非功能测试、自动化部署
4、部署流水线:将构建、部署、测试、发布流程可视化,以落地精益思想、价值流、持续改善。
5、自动化:构建、测试、部署、发布自动化。自动化是提升持续交付成熟度的关键。
6、提交阶段的测试:尽快捕捉因修改向系统中引入的常见错误。
7、自动化验收测试:为系统进行大范围修改提供防护网。
8、非功能测试:创建好的、全面、可维护的非功能测试。
9、自动化部署与发布:日常频繁做。
三、交付生态圈:环境管理、数据管理、组件管理、主干开发、成熟度
10、环境管理:也要自动化。
11、数据管理:数据的生成与迁移都要自动化。
12、组件和依赖管理:松耦合、自动化。
13、主干开发,随时保持最新且完整的状态。
14、引入成熟度,强化核心能力,管理持续交付。
持续交付的落地方法,是以核心能力为指导,挖掘并补足短板。
领取专属 10元无门槛券
私享最新 技术干货