本文共 2727 字,大约阅读时间需要 9 分钟。
ci/cd实践的必要性
持续集成(CI)和持续交付(CD)通常与DevOps,DevSecOps,用于IT运营的人工智能(AIOps),GitOps等相关联。 仅仅说您正在做CI和CD是不够的。 有一些最佳实践,如果使用得当且一致,将使您的CI / CD管道更加成功。
短语“最佳实践”表示应该实施或执行的步骤,过程,方式,迭代等,以从诸如软件或产品交付之类的东西中获得最佳结果。 在CI / CD中,它还包括配置监视以支持设计和部署的方式。
部署管道就是一个很好的例子。 它包括构建,测试和部署的步骤:
其目的是通过以下方式自动化部署:
以下是不同部署管道的示例。
应用程序部署管道
服务器配置部署管道
防火墙配置部署管道
CI / CD中有多种最佳实践,可以改善您的工作流程和结果。 在本文中,我将探讨其中的一些。
CI / CD最佳实践涉及有效,高效的部署管道和编排工具(例如Jenkins,GitLab和Azure Pipelines)的结合。 这些优点包括提高速度,降低人为错误的风险以及实现自助服务。
使用共享版本控制是一种最佳实践,它为所有团队提供了一个真实的来源(例如,开发,质量保证[QA],信息安全,运营等),并将所有工件都放在一个存储库中。 版本控制也必须是安全的,利用诸如加密存储库,签名签入和职责分离(例如,需要两个人来提交)之类的标准。 您可能期望在版本控制中包括以下内容:
CI / CD最佳实践也扩展到质量管理。 部署管道必须进行测试,测试,测试和更多测试,以减轻紧迫性并关注恢复速度。 将重点放在与质量相关的原则上,例如:
最佳实践要求对测试进行自动化以更快地发现问题,并更快地缓解它们。 一些测试包括:
测试应包括代码,尤其是代码分析和自动化测试工具。
常见的代码分析工具包括:
常见的自动化测试工具包括:
团队应坚持执行CI,您可以通过回答以下问题来检查团队的绩效:
以下所有内容均应在CI / CD管道中自动化且连续进行:
集成 (一种高度自动化的通信过程,通过该过程可以进行测量并将其他数据收集到远程或无法访问的点,并传输到接收设备进行监视,显示和记录),这是将连续度量,监视和警报构建到其中的一种选择。您的CI / CD管道。
识别价值流然后进行映射可以帮助组织和团队解决问题。 它还通过将产品或服务从一开始一直传递到客户的活动帮助为客户创造价值。 价值流示例包括:
将基础结构视为代码(IaC)是一种最佳实践,它对CI和CD都有很多好处,例如:
增强反馈能力是另一项CI / CD最佳实践。 在复杂系统中可以安全工作的一种系统是:
有关响应故障的最佳实践应该内置到构建,测试,部署,分析和设计系统中。 这不仅是要考虑应该设计,构建和部署哪些故障响应系统; 组织或团队的应对方式也应经过深思熟虑并执行。
理想的文化认为和学习的机会,而不是一种责备的方式。 或验尸是使团队专注于事实,考虑多种观点,分配行动项目并学习的最佳实践。
围绕持续集成和交付创建学习和创新文化是另一种最佳实践,它将在短期内导致不断的实验和改进,从长远来看将导致可持续性,可靠性和稳定性。
领导者可以通过多种方式为这种文化转变创造必要的条件,包括:
最佳实践包括成功与失败,快速失败,消除障碍,微调系统,使用流行工具破坏复杂的软件,更重要的是,促使人们以快速解决问题,果断,富有创造力和创新性的方式做出回应。
这是关于创建人们期望更高的文化。 这是要转变您的思维方式,以兑现承诺并以令人愉悦的方式交付价值。
建立CI / CD管道是对弹性,持久性,驱动力和毅力的测试,该弹性,持久性,驱动力和毅力可以在需要时自动执行,而在不需要时可以拉回。 之所以能够做出决定,是因为它符合您的系统,依赖项,团队,客户和组织的最大利益。
翻译自:
ci/cd实践的必要性
转载地址:http://glizd.baihongyu.com/