使用 CodeDeploy 创建应用程序
应用程序 只是 CodeDeploy 使用的一个名称或容器,确保在部署过程中引用了正确的修订、部署配置和部署组。您可使用 CodeDeploy 控制台、AWS CLI、CodeDeploy API 或 AWS CloudFormation 模板创建应用程序。
您的代码(即应用程序修订)将通过一个名为“部署”的过程安装到实例。CodeDeploy 支持两种类型的部署:
-
就地部署:停止部署组中每个实例上的应用程序,安装最新的应用程序修订版,然后启动和验证应用程序的新版本。您可以使用负载均衡器,以便在部署期间取消注册每个实例,然后在部署完成后让其重新提供服务。只有使用 EC2/本地 计算平台的部署才能使用就地部署。有关就地部署的更多信息,请参阅就地部署概述。
-
蓝/绿部署:部署的行为取决于您使用的计算平台:
-
EC2/本地 计算平台上的蓝/绿部署:部署组中的实例(原始环境)将被不同的实例集(替代环境)所代替,步骤如下:
-
系统将为替代环境配置实例。
-
替代实例上将安装最新的应用程序修订。
-
对于应用程序测试和系统验证等活动来说,等待时间可选。
-
替代环境中的实例在 Elastic Load Balancing 负载均衡器中进行注册,使得流量重新路由至这些实例。系统将撤销原始环境中的实例注册,进而终止或因其他使用情形而保持运行。
注意
如果您使用EC2/本地 计算平台,请注意蓝/绿部署仅适用于 Amazon EC2 实例。
-
-
AWS Lambda 计算平台上的蓝/绿部署:流量从当前无服务器环境转移到包含更新后的 Lambda 函数版本的环境。您可以指定执行验证测试的 Lambda 函数并选择流量转移方法。所有 AWS Lambda 计算平台部署都是蓝/绿部署。因此,您无需指定部署类型。
-
Amazon ECS 计算平台上的蓝/绿部署:流量从具有 Amazon ECS 服务中的容器化应用程序的原始版本的任务集转换为同一服务中的替换任务集。指定负载均衡器侦听器的协议和端口用于重新路由生产流量。在部署期间,测试侦听器可以用于在运行验证测试时为替换任务集提供流量。
有关蓝/绿部署的更多信息,请参阅蓝/绿部署概述。
-
当您使用 CodeDeploy 控制台创建应用程序时,可同时配置其首个部署组。当您使用 AWS CLI 创建应用程序时,可在单独的步骤中创建其首个部署组。
要查看已向您的 AWS 账户注册的应用程序的列表,请参阅使用 CodeDeploy 查看应用程序详细信息。有关使用 AWS CloudFormation 模板创建应用程序的信息,请参阅 适用于 CodeDeploy 的 AWS CloudFormation 模板参考。
这两个部署类型不适用于所有目标。下表列出了哪些部署类型与到三种部署目标类型的部署一起使用。
部署目标 | 就地 | 蓝/绿 |
---|---|---|
Amazon EC2 | 是 | 是 |
本地 | 是 | 否 |
无服务器 AWS Lambda 函数 | 否 | 是 |
Amazon ECS 应用程序 | 否 | 是 |