DevOps 涉猎的范围很是的普遍,包括软件研发全生命周期的方方面面,对于刚开始涉及 DevOps 的人来讲会有种盲人摸象的感受,这正是 DevOps 转型的一个难点。在 DevOps 转型过程当中,标准化是重要手段。那么,标准化关注的具体是什么内容呢?服务器
DevOps 的转型目标在于缩短前置时间,加快部署频率,提升系统的可用性,减小服务恢复时间,下降变动失败率。这就要求咱们在设计运行平台的时候,除了具有自动恢复功能的之外,还要提供丰富的运维监控数据以及强大的数据分析能力,这样可以帮助运维人员在极短的时间以内恢复服务。变动失败的缘由主要有 2 个,一是功能质量没有达标,二是需求理解不到位。运维
图片中是咱们整理的一些标准化的关注点。做为产品经理或业务分析的人员,须要关注需求如何顺利到达研发团队,并可以适应他们进行敏捷的开发。做为研发人员须要关注的点相对比较多,尤为是要关注配置信息标准化管理。工具
标准化的目的是为了实现自动化,包括集成的自动化、部署的自动化、测试的自动化和运维的自动化。下图是一个典型的 DevOps 循环图。咱们认为业务敏捷是前提,DevOps 流程是从敏捷型需求为起点,通过了运维监控这个最后的节点回到计划,实现闭环。测试
编码过程标准化的重点在于测试驱动的开发,这也是敏捷要求的一个标准,可是实际上能作到这个标准的团队并非不少。测试驱动开发首先要面向接口作一些测试和开发,面向接口作测试的时候须要关注接口名称、接口协议、接口参数名称和类型、接受条件。其次咱们须要关注数据,包括每一个接口输入的数据以及其得出的结果。针对引用的相对复杂业务逻辑的其余服务,需使用 mock 工具来减小依赖。每一个测试用例的测试场景须要完整注释。编码
最后咱们总结一下前面的内容:1、需求敏捷化是起点。2、TDD 开发模式是快速迭代开发时代保障软件质量基线的有效手段。3、注重环境配置文件的标准化,保证程序的可测试性。4、研发流程的标准化是创建自动化 CI、CD 流程的前提,而 CI、CD 流程的自动化是实现 DevOps 的关键点。5、Jenkins 是实现 CI、CD 流程的有效工具,可是在处理复杂业务场景时还须要有其余合适工具的帮衬。6、服务器运行环境的标准化,能够促进流程脚本的标准化。设计