AWS CodeDeploy
User Guide (API Version 2014-10-06)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

在 AWS CodeDeploy 中使用部署配置

部署配置是 AWS CodeDeploy 在部署期间使用的一组部署规则以及部署成功条件和失败条件。部署配置通过使用最小正常运行主机值来指定在部署期间的任何时候都必须保持可用的实例的数量或百分比。

您可以使用由 AWS 提供的三种预定义的部署配置之一,也可以创建自定义部署配置。如果您未指定部署配置,AWS CodeDeploy 将使用 CodeDeployDefault.OneAtATime 部署配置。

有关部署期间 AWS CodeDeploy 如何监控和评估实例运行状况的信息,请参阅实例运行状况。要查看已注册到 AWS 账户的部署配置列表,请参阅查看部署配置详细信息

AWS 中预定义的部署配置

下表列出了预定义的部署配置。

部署配置 说明
CodeDeployDefault.AllAtOnce

就地部署

一次性尝试将应用程序修订部署到尽可能多的实例。如果将应用程序修订部署到一个或多个实例,则整个部署的状态将显示为 Succeeded。如果尚未向任何实例部署应用程序修订,则整个部署的状态将显示为 Failed。在包含 9 个实例的示例中,CodeDeployDefault.AllAtOnce 将尝试一次性部署到所有 9 个实例。如果已向一个实例成功部署,则整个部署将成功;仅在向所有 9 个实例执行的部署都失败时,此部署才失败。

蓝/绿部署

  • 部署到替换环境:遵循的部署规则与适用于就地部署的 CodeDeployDefault.AllAtOnce 相同。

  • 流量重新路由:将流量一次路由到替换环境的所有实例中。如果流量成功地重新路由到至少一个实例,则部署成功。如果重新路由到所有实例失败,则部署失败。

CodeDeployDefault.HalfAtATime

就地部署

一次最多可部署到一半实例(小数向下取整)。如果将应用程序修订部署到至少一半实例(小数向下取整),则整个部署成功;否则部署失败。在包含 9 个实例的示例中,一次将部署到最多 4 个实例。如果成功部署到 5 个或更多实例,则整个部署成功;否则部署失败。

蓝/绿部署

  • 部署到替换环境:遵循的部署规则与适用于就地部署的 CodeDeployDefault.HalfAtATime 相同。

  • 流量重新路由:每次将流量路由到替换环境的最多半数实例中。如果成功地重新路由到至少半数实例,则部署成功;否则部署失败。

CodeDeployDefault.OneAtATime

就地部署

一次仅将应用程序修订部署到一个实例。

对于包含多个实例的部署组:

  • 如果已将应用程序修订部署到所有实例,则整个部署成功。此规则的例外情况是,如果无法部署到最后一个实例,则整个部署仍将成功。这是因为,AWS CodeDeploy 仅允许通过 CodeDeployDefault.OneAtATime 配置一次使一个实例脱机。

  • 一旦应用程序修订无法部署到任何实例(但最后一个实例除外),整个部署将失败。

  • 在使用 9 个实例的示例中,将一次部署到一个实例。如果已成功部署到前 8 个实例,则整个部署将成功;如果无法部署到前 8 个实例中的任一实例,则整个部署将失败。

对于仅包含一个实例的部署组,整个部署仅在成功部署到单个实例时成功。

蓝/绿部署

  • 部署到替换环境:遵循的部署规则与适用于就地部署的 CodeDeployDefault.OneAtATime 相同。

  • 流量重新路由:每次将流量路由到替换环境的一个实例中。如果流量成功地重新路由到所有替换实例,则部署成功。在第一次重新路由失败后,部署失败。此规则的例外情况是,如果最后一个实例无法注册,则整个部署仍将成功。

本页内容: