本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
部署先决条件
在您开始部署之前,请确保完成以下步骤。
Amazon Lambda 计算平台上的部署先决条件
-
创建一个应用程序,其中至少包括一个部署组。有关信息,请参阅使用创建应用程序 CodeDeploy和使用创建部署组 CodeDeploy。
-
准备应用程序修订(也称为 AppSpec 文件),用于指定要部署的 Lambda 函数版本。该 AppSpec 文件还可以指定 Lambda 函数来验证您的部署。有关更多信息,请参阅 正在处理的应用程序修订版 CodeDeploy。
-
如果要将自定义部署配置用于您的部署,请在开始部署过程之前创建配置。有关信息,请参阅 Create a Deployment Configuration。
EC2/本地计算平台上的部署先决条件
-
对于就地配置,创建或配置要部署到的实例。有关信息,请参阅 使用以下实例 CodeDeploy。对于蓝绿部署,您可使用现有 Amazon EC2 Auto Scaling 组作为替换环境的模板,或指定一个或多个实例或 Amazon EC2 Auto Scaling 组作为原始环境。有关更多信息,请参阅 教程:用于 CodeDeploy 将应用程序部署到 Auto Scaling 组 和 CodeDeploy 与 Amazon EC2 集成 Auto Scaling。
-
创建一个应用程序,其中至少包括一个部署组。有关信息,请参阅使用创建应用程序 CodeDeploy和使用创建部署组 CodeDeploy。
-
准备好要部署到部署组中的实例的应用程序修订。有关信息,请参阅 正在处理的应用程序修订版 CodeDeploy。
-
如果要将自定义部署配置用于您的部署,请在开始部署过程之前创建配置。有关信息,请参阅 Create a Deployment Configuration。
-
如果您从 Amazon S3 存储桶部署应用程序修订,则该存储桶与您的部署组中的实例位于同一 Amazon 区域。
-
如果您要从 Amazon S3 存储桶部署应用程序修订,可对该存储桶应用 Amazon S3 存储桶策略。此策略为您的实例授予下载应用程序修订所需的权限。
例如,以下 Amazon S3 存储桶策略允许从名为
DOC-EXAMPLE-BUCKET
的 Amazon S3 存储桶中的任何位置,下载附加了 IAM 实例配置文件(其中包含 ARNarn:aws:iam::444455556666:role/CodeDeployDemo
)的任意 Amazon EC2 实例:{ "Statement": [ { "Action": [ "s3:Get*", "s3:List*" ], "Effect": "Allow", "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*", "Principal": { "AWS": [ "arn:aws:iam::444455556666:role/CodeDeployDemo" ] } } ] }
以下 Amazon S3 存储桶策略允许从名为
DOC-EXAMPLE-BUCKET
的 Amazon S3 存储桶中的任意位置,下载具有关联 IAM 用户(其中包含 ARNarn:aws:iam::444455556666:user/CodeDeployUser
)的任意本地实例:{ "Statement": [ { "Action": [ "s3:Get*", "s3:List*" ], "Effect": "Allow", "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*", "Principal": { "AWS": [ "arn:aws:iam::444455556666:user/CodeDeployUser" ] } } ] }
有关如何生成和附加 Amazon S3 存储桶策略的信息,请参阅存储桶策略示例。
-
如果您正在创建蓝绿部署,或者您已为就地部署指定部署组中的可选经典负载均衡器、应用程序负载均衡器或网络负载均衡器,则您已使用包含至少两个子网的 Amazon VPC 创建一个 VPC。(CodeDeploy 使用 Elastic Load Balancing,它要求负载均衡器组中的所有实例都位于单个 VPC 中。)
如果您尚未创建 VPC,请参阅 Amazon VPC 入门指南。
-
如果您要创建蓝绿部署,则您已在 Elastic Load Balancing 中配置了至少一个经典负载均衡器、应用程序负载均衡器或网络负载均衡器,并用它注册了构成原始环境的实例。
注意
替换环境中的实例稍后将用这个负载均衡器进行注册。
有关配置负载均衡器的更多信息,请参阅在 Elastic Load Balancing 中为 CodeDeploy Amazon EC2 部署设置负载均衡器和为 A CodeDeploy mazon ECS 部署设置负载均衡器、目标组和侦听器。
蓝/绿部署的部署先决条件 Amazon CloudFormation
-
您的模板不需要为 CodeDeploy 应用程序或部署组对资源进行建模。
-
对于至少包含两个子网且使用 Amazon VPC 的 VPC,您的模板必须包含相应资源。
-
您的模板必须在 Elastic Load Balancing 中包含一个或多个经典负载均衡器、应用程序负载均衡器或网络负载均衡器的资源,用于将流量定向到目标群组。