AWS CodeDeploy
用户指南 (API 版本 2014-10-06)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

本指南中的过程支持新的控制台设计。如果您选择使用较旧版本的控制台,可以在本指南中找到许多仍然适用的概念和基本过程。要访问新控制台中的帮助,请选择信息图标。

步骤 2:将应用程序部署到 Amazon EC2 Auto Scaling 组

在此步骤中,您会将修订部署到 Amazon EC2 Auto Scaling 组中的单个 Amazon EC2 实例。

创建部署 (CLI)

  1. 调用 create-application 命令以创建一个名为 SimpleDemoApp 的应用程序。

    aws deploy create-application --application-name SimpleDemoApp
  2. 您应该已经按照步骤 3:为 CodeDeploy 创建服务角色中的说明创建了一个服务角色。该服务角色将向 CodeDeploy 授予访问 Amazon EC2 实例以展开(读取)其标签的权限。您将需要服务角色 ARN。要获取服务角色 ARN,请按照获取服务角色 ARN (CLI) 中的说明操作。

  3. 现在您已拥有一个服务角色 ARN,请调用 create-deployment-group 命令,使用名为 CodeDeployDemo-AS-Group 的 Amazon EC2 Auto Scaling 组和名为 CodeDeployDefault.OneAtATime 的部署配置创建一个与名为 SimpleDemoApp 的应用程序相关联的名为 SimpleDemoDG 的部署组(具有指定的服务角色 ARN)。

    注意

    create-deployment-group 命令支持创建触发器,这些触发器导致向主题订阅者发送有关部署和实例中的指定事件的 Amazon SNS 通知。此命令还支持以下选项:自动回滚部署和设置警报以便在满足 Amazon CloudWatch 警报中的监控阈值时停止部署。本教程中未包含适用于这些操作的命令。

    在本地 Linux, OS X, or Unix 计算机上:

    aws deploy create-deployment-group \ --application-name SimpleDemoApp \ --auto-scaling-groups CodeDeployDemo-AS-Group \ --deployment-group-name SimpleDemoDG \ --deployment-config-name CodeDeployDefault.OneAtATime \ --service-role-arn service-role-arn

    在本地 Windows 计算机上:

    aws deploy create-deployment-group --application-name SimpleDemoApp --auto-scaling-groups CodeDeployDemo-AS-Group --deployment-group-name SimpleDemoDG --deployment-config-name CodeDeployDefault.OneAtATime --service-role-arn service-role-arn
  4. 调用 create-deployment 命令,使用指定位置的修订创建一个与名为 SimpleDemoApp 的应用程序、名为 CodeDeployDefault.OneAtATime 的部署配置、名为 SimpleDemoDG 的部署组相关联的部署。

    对于 Amazon Linux 和 RHEL Amazon EC2 实例,从本地 Linux, OS X, or Unix 计算机调用

    对于 中国(北京)区域:

    aws deploy create-deployment \ --application-name SimpleDemoApp \ --deployment-config-name CodeDeployDefault.OneAtATime \ --deployment-group-name SimpleDemoDG \ --s3-location bucket=aws-codedeploy-cn-north-1,bundleType=zip,key=samples/latest/SampleApp_Linux.zip

    对于 中国 (宁夏) 区域:

    aws deploy create-deployment \ --application-name SimpleDemoApp \ --deployment-config-name CodeDeployDefault.OneAtATime \ --deployment-group-name SimpleDemoDG \ --s3-location bucket=aws-codedeploy-cn-northwest-1,bundleType=zip,key=samples/latest/SampleApp_Linux.zip

    对于 Amazon Linux 和 RHEL Amazon EC2 实例,从本地 Windows 计算机调用

    对于 中国(北京)区域:

    aws deploy create-deployment --application-name SimpleDemoApp --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name SimpleDemoDG --s3-location bucket=aws-codedeploy-cn-north-1,bundleType=zip,key=samples/latest/SampleApp_Linux.zip

    对于 中国 (宁夏) 区域:

    aws deploy create-deployment --application-name SimpleDemoApp --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name SimpleDemoDG --s3-location bucket=aws-codedeploy-cn-northwest-1,bundleType=zip,key=samples/latest/SampleApp_Linux.zip

    对于 Windows Server Amazon EC2 实例,从本地 Linux, OS X, or Unix 计算机调用

    对于 中国(北京)区域:

    aws deploy create-deployment \ --application-name SimpleDemoApp \ --deployment-config-name CodeDeployDefault.OneAtATime \ --deployment-group-name SimpleDemoDG \ --s3-location bucket=aws-codedeploy-cn-north-1,bundleType=zip,key=samples/latest/SampleApp_Windows.zip

    对于 中国 (宁夏) 区域:

    aws deploy create-deployment \ --application-name SimpleDemoApp \ --deployment-config-name CodeDeployDefault.OneAtATime \ --deployment-group-name SimpleDemoDG \ --s3-location bucket=aws-codedeploy-cn-northwest-1,bundleType=zip,key=samples/latest/SampleApp_Windows.zip

    对于 Windows Server Amazon EC2 实例,从本地 Windows 计算机调用

    对于 中国(北京)区域:

    aws deploy create-deployment --application-name SimpleDemoApp --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name SimpleDemoDG --s3-location bucket=aws-codedeploy-cn-north-1,bundleType=zip,key=samples/latest/SampleApp_Windows.zip

    对于 中国 (宁夏) 区域:

    aws deploy create-deployment --application-name SimpleDemoApp --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name SimpleDemoDG --s3-location bucket=aws-codedeploy-cn-northwest-1,bundleType=zip,key=samples/latest/SampleApp_Windows.zip

    注意

    当前,CodeDeploy 不提供要部署到 Ubuntu Server Amazon EC2 实例的示例修订。要自己创建修订,请参阅使用 CodeDeploy 的应用程序修订

  5. 调用 get-deployment 命令以确保部署已成功。

    在调用此命令之前,您需要应该已经通过调用 create-deployment 命令返回的部署 ID。如果需要再次获取部署 ID,请针对名为 SimpleDemoApp 的应用程序和名为 SimpleDemoDG 的部署组调用 list-deployments 命令:

    aws deploy list-deployments --application-name SimpleDemoApp --deployment-group-name SimpleDemoDG --query "deployments" --output text

    现在,使用部署 ID 调用 get-deployment 命令:

    aws deploy get-deployment --deployment-id deployment-id --query "deploymentInfo.status" --output text

    请在返回的值为 Succeeded 之后继续。

创建部署(控制台)

  1. 您应该已经按照步骤 3:为 CodeDeploy 创建服务角色中的说明创建了一个服务角色。该服务角色将向 CodeDeploy 授予访问您的实例以展开(读取)其标签的权限。在使用 CodeDeploy 控制台部署应用程序修订之前,您需要服务角色 ARN。要获取服务角色 ARN,请按照获取服务角色 ARN(控制台) 中的说明操作。

  2. 现在您已拥有服务角色 ARN,可以开始使用 CodeDeploy 控制台部署您的应用程序修订。

    Sign in to the AWS 管理控制台 and open the CodeDeploy console at https://console.amazonaws.cn/codedeploy.

    注意

    Sign in with the same account or IAM user information you used in CodeDeploy 入门.

  3. 选择 Create application

  4. 选择自定义应用程序

  5. 应用程序名称中,输入 SimpleDemoApp

  6. 计算平台中,选择 EC2/本地

  7. 选择 Create application

  8. 部署组选项卡中,选择创建部署组

  9. 部署组名称中,输入 SimpleDemoDG

  10. 服务角色中,选择您的服务角色的名称。

  11. 部署类型中,选择就地

  12. 环境配置中,选择 Amazon EC2 Auto Scaling 组,然后选择 CodeDeployDemo-AS-Group

  13. 部署配置中,选择 CodeDeployDefault.OneAtATime

  14. 清除启用负载均衡

  15. 选择 Create deployment group (创建部署组)

  16. 在“部署组”页面中,选择创建部署

  17. 部署组中,选择 SimpleDemoDG

  18. 修订类型中,选择 S3

  19. 修订位置中,输入您的操作系统的示例应用程序的位置和区域。

    对于 Amazon Linux 和 RHEL Amazon EC2 实例

    对于 中国(北京)区域:

    https://s3.cn-north-1.amazonaws.com.cn/aws-codedeploy-cn-north-1/samples/latest/SampleApp_Linux.zip

    对于 中国 (宁夏) 区域:

    https://s3.cn-northwest-1.amazonaws.com.cn/aws-codedeploy-cn-northwest-1/samples/latest/SampleApp_Linux.zip

    对于 Windows Server Amazon EC2 实例

    对于 中国(北京)区域:

    https://s3.cn-north-1.amazonaws.com.cn/aws-codedeploy-cn-north-1/samples/latest/SampleApp_Windows.zip

    对于 中国 (宁夏) 区域:

    https://s3.cn-northwest-1.amazonaws.com.cn/aws-codedeploy-cn-northwest-1/samples/latest/SampleApp_Windows.zip

    对于 Ubuntu Server Amazon EC2 实例

    键入存储在 Amazon S3 中的自定义应用程序修订的位置。

  20. 保留部署描述为空。

  21. 展开 Advanced

  22. 警报中,选择忽略警报配置

  23. 选择 Create deployment

    注意

    如果显示失败而不是成功,则您可能需要尝试监控您的部署并排除故障中的一些方法(使用应用程序名称 SimpleDemoApp 和部署组名称 SimpleDemoDG)。