持续交付中的关键点

做持续交付就是提升整个研发体系效率的关键。持续交付覆盖了应用的整个生命周期,涉及产品、开发、测试、运维以及项目管理等相关方面。从生命周期出发,自然就会牵出整个自动化的全貌,就会有从全局着眼的规划设计,这时无论是在开发还是运维过程中存在的问题,都会完完整整地暴露出来。那么,应该以什么样的主线开展?各方应该如何配合?应该以怎样的优先级明确任务?这些问题就都清楚了。同时,也避免了各个环节只把注意力放在各自职责范围内的事情上,而忽略了整体的配合。

持续交付的关键点

1. 配置管理

配置管理是非常关键的基础工作。有一点值得注意,那就是标准化是一个持续的过程。我们不太可能在一开始就把所有运维对象、属性和关系全部都考虑清楚,面面俱到是不太现实的,所以,一定要具备标准化的意识,在开展运维工作的过程中,持续不断地用这个思路去标准化新出现的对象。先标准,再固化,然后自动化。

2. 需求拆解

需求拆解这个工作跟业务需求部门和业务开发有更直接的关系。在这里,运维需要做的是,明确需求拆解的粒度和我们最终发布上线的粒度相匹配。

3. 提交管理

需求拆解完成后,就进入到开发阶段,开发完成后向代码库中提交代码,这个过程中代码分支的合并策略选择就是提交管理。

4. 构建打包

这一部分是指将提交后的代码编译成可发布的软件包。

5. 自动化测试

自动化测试包括功能测试和非功能性测试。对于运维来说,会更注重非功能方面的特性,所以后面我会着重讲非功能性相关的测试环节。

6. 部署发布

这一部分是指发布到不同的环境,如开发环境、预发环境、线上 Beta 以及线上全量环境。针对不同的环境,发布策略和注意事项也会不同。

以上是一个完整的持续交付过程中最重要的几个环节。从实践经验来看,配置管理、提交管理、构建和部署发布是持续交付的重中之重,是关键路径,是从开发代码开始,到发布上线的必经之路。

整个系统从原来的只具备持续部署发布功能的平台,逐步演进为具有持续交付能力的平台。由此可见,实现持续交付的过程,也不是一蹴而就的,而是在摸索中逐步演进完善的。

此文章为3月Day20 学习笔记,内容来源于极客时间《赵成的运维体系管理课》,推荐该课程。

猜你喜欢

转载自blog.csdn.net/key_3_feng/article/details/129665019
今日推荐