OPS05-BP04 使用构建和部署管理系统
使用构建和部署管理系统。这些系统可以减少手动过程引起的错误,并减少部署更改的工作量。
在 AWS 中,您可以使用像
AWS 开发人员工具
期望的结果: 您的构建和部署管理系统支持组织的持续集成/持续交付(CI/CD)系统,后者提供使用正确的配置自动进行安全部署的功能。
常见反模式:
-
在开发系统上编译代码后,您将可执行文件复制到生产系统上,但它无法启动。本地日志文件显示这是因为缺少依赖项。
-
您成功地在开发环境中构建了具有新功能的应用程序,并将代码送交质量检查(QA)。由于缺少静态资产,它没有通过质量检查。
-
星期五,经过大量的努力,您成功地在开发环境中手动构建了应用程序,包括新编码的功能。星期一,您无法重复这一成功构建应用程序的步骤。
-
您执行为新版本创建的测试。下周,您将设置测试环境,并执行所有现有的集成测试,然后执行性能测试。新代码产生了难以接受的性能影响,因此必须重新开发并测试。
建立此最佳实践的好处: 制定相应机制来管理活动的构建和部署。这样,您可以减少执行重复任务的工作量,让团队成员腾出时间专注于高价值的创造性任务,还可以减少手动程序导致的错误。
未建立这种最佳实践的情况下暴露的风险等级: 中
实施指导
构建和部署管理系统用于跟踪和实施变更,减少手动过程引起的错误,并减少安全部署所需的工作量。将集成和部署管道完全自动化,从代码签入到构建、测试、部署和验证都包含在内。这可以缩短准备时间,降低成本,鼓励更频繁地进行变更,减少工作量并增进协作。
实施步骤
-
使用 AWS CodeCommit 对资产(例如文档、源代码和二进制文件)进行版本控制、存储和管理。
-
使用 CodeBuild 编译源代码、运行单元测试和生成可随时部署的构件。
-
使用 CodeDeploy 作为部署服务,自动将应用程序部署到 Amazon EC2
实例、本地实例、无服务器 AWS Lambda 函数或 Amazon ECS 。 -
监控您的部署。
资源
相关最佳实践:
相关文档:
相关视频: