Puppet 发布的2020年DevOps报告显示,内部自助服务平台和有效的变更管理实践是组织提升 DevOps 发展阶梯的关键。安全集成在软件交付管道中也扮演着关键的角色。
本次报告已经是第 9 年发布了,覆盖了全球近 2400 名专业人士。欧洲的受访者最多(33%),美国和加拿大紧随其后(30%)。大多数受访者(33%)来自科技公司,其次是金融服务、工业和制造业。可以将这些百分比与前一年的报告进行对比。今年报告的目标是研究在组织中实现 DevOps 敏捷性的“结构性问题”。
图片来源:2020 年 DevOps 状态报告
2020 年的报告指出,内部平台团队变得更加普遍,他们的存在与 DevOps 实践的发展呈正相关性。Puppet 社区和开发者关系高级总监 Alanna Brown 指出:“我们发现 DevOps 的发展和内部平台的使用之间存在着很强的关系”。不断演化的组织为它们的开发人员提供了自助服务功能,如 CI/CD、开发环境、公共云和内部基础设施、监控/警报、数据库配置和审计跟踪。该报告还提到了包含五个阶段的“进化模型”,其中第五个是最高阶段,在这个阶段,具有可用的自助服务资源和自动事件响应,业务需求定义了应用程序的架构,而安全是设计和部署的关键部分。在各种不同级别的 DevOps 演化阶段,CI/CD 是最为常见的自助服务接口。
报告作者指出,最重要的是要把内部平台当作产品来对待,因此要为之分配资源、时间、固定的团队,并作出管理承诺,以此来保证它的成功。内部平台可以让应用程序开发人员专注于他们的核心能力,让他们可以访问标准化的工具集。作者写道:“内部平台团队负责提供一个平台,该平台提供基础设施、环境、部署管道和其他内部服务,让内部客户(通常是应用程序开发团队)能够构建、部署和运行他们的应用程序”。有 63%的受访者至少拥有一个内部平台,60%的受访者拥有 2 到 4 个平台。这些组织中的 31%有 26% 到 50%的开发人员使用一个平台。
在一个被引用的案例研究中,CircleCI 的平台副总裁 Mike Stahnke 表示,他们从可用性、成本、安全性和开发效率等方面来衡量内部平台成功与否。报告还指出,提供内部平台的最大挑战是缺乏时间、标准化以及团队缺乏技术技能。
报告还展示了变更管理的四种不同方法。有效的变更管理与强调自动化测试、部署、风险缓解和灵活的审批流程具有相关性。代码变更(包括基础设施即代码的变更)、员工影响变更以及流程和文化都是其中的组成部分。报告指出,将变更作为代码的好处是“变更可以受制于任何可用的代码验证技术”。
在运维方面比较成熟的公司是那些自动化程度最高、“正统”审批系统水平也很高的公司。这一看似矛盾的现象可以用以下事实来解释:这些典型的大中型企业已经有了成熟的变更部署流程,并且将自动化作为“数字化转变”的一部分。工程驱动型公司大多是技术公司(占全部受访者的 33%),而规模更大的公司通常更依赖人工审查,并注重治理,在这些受访者中,有 40%的公司员工超过 5000 人。最后一类在自动化、审批和工程工作等各个方面得分都很低。自动化变更管理的最大挑战是不完整的测试覆盖、组织的思维方式以及紧密耦合的应用程序架构。
将安全性与软件交付过程集成可以加快关键漏洞的处理过程。虽然这份报告没有提到安全集成的具体例子,但 2019 年的报告提到了。2020 年的报告可以从Puppet网站下载。
原文链接:
Puppet Releases Its 2020 State of DevOps Report
评论