企业级DevOps技术与工具实战
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

4.9 常见的理解误区和实践经验

本节将介绍常见的理解误区和与实践经验相关的内容,分别如下。

1.理解误区:项目的成熟度越高越好

成熟度自然是需要不断提高和改善的,但是盲目地追求高的成熟度而不计其他未必会带来好的效果。项目应该根据自身特点,结合项目目标不断改进,DevOps最重要的目的不是提高成熟度模型的评分,而是实现组织目标。所以在推行 DevOps 实践的时候,最重要的是先行判断每一项改善能够为组织带来什么样的收益,以此指导DevOps实践的推动和发展。

2.实践经验:开发者应承担更多的责任

在架构中考虑非功能性因素,要将软件运维所需要的功能在开发阶段进行考量,运用基础设施即代码等方式保证系统无论何时都可以快速、标准化构建。

3.实践经验:应保证流水线随时可用

创建一条稳定的部署流水线比较简单,但是如果要让这条流水线一直保证稳定,则需要做很多事情。例如,基础设施发生了变化,构建流水线有可能需要进行调整;随着功能的添加,构建时间和测试时间越来越长,已经不能保证最大可能出现的部署需要,同样需要对当前的流水线进行优化以保证其可用性。

4.实践经验:自动化测试应该包括更多内容

自动化测试不应该只是做单元测试和确认覆盖率,集成测试、API 接口测试、功能测试、安全性测试、合规性测试等都应该加以考虑,并且要将它们不断集成部署到统一的流水线中,以提供稳定的、可持续的交付能力。

5.实践经验:应该给部署系上一条安全带

组织文化应通过更好的工具集成和流程机制来改善,而不是单纯地靠检查清单及惩罚条例来保证不再出问题,信心的建立应该结合稳定的保障机制。通过蓝绿部署等方式保证系统始终都会有一个稳定的版本可回溯,通过金丝雀部署来进行小规模试错,充分测试后再进行整体发布,这些都可以为部署系上一条安全带,随着部署频度和成功率的大幅度提高,整个团队的信心也会增强。