教程:通过验证测试部署 Amazon ECS 服务 - Amazon CodeDeploy
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

教程:通过验证测试部署 Amazon ECS 服务

在本教程中,您将了解如何使用 Lambda 函数验证更新的 Amazon ECS 应用程序部署的一部分 (Amazon ECS) 应用程序的部分部署。本教程使用您在中使用的CodeDeploy应用程序、CodeDeploy部署组和 Amazon ECS 应用程序教程:将应用程序部署到亚马逊 ECS。请先完成上述教程,然后再开始本教程。

要添加验证测试,请先在 Lambda 函数中实现测试。接下来,在部署AppSpec文件中,为要测试的生命周期挂钩指定 Lambda 函数。如果验证测试失败,部署将停止,然后回滚,并标记为失败。如果测试成功,部署将继续下一个部署生命周期事件或挂钩。

在使用验证测试的 Amazon ECS 部署期间,CodeDeploy使用配置了两个目标组的负载均衡器:一个生产流量侦听器和一个测试流量侦听器。下图显示了在部署开始之前,负载均衡器、生产和测试侦听器、目标组和您的 Amazon ECS 应用程序是如何关联的。本教程使用一个 Application Load Balancer。您也可以使用Network Load Balancer。

在 Amazon ECS 部署期间,有五个生命周期挂钩可供测试。本教程在第三个生命周期部署挂钩 (AfterAllowTestTraffic) 期间实施了一次测试。有关更多信息,请参阅用于 Amazon ECS 部署的生命周期事件挂钩的列表:成功部署之后,生产流量侦听器将流量提供给新的替换任务集,原始任务集终止。下图显示了成功部署后资源之间的关联方式。有关更多信息,请参阅Amazon ECS 部署期间会发生什么

注意

完成本教程可能会对您的 Amazon 账户收费。这些费用包括可能对 CodeDeploy、Amazon Lambda 和 CloudWatch 收取的费用。有关更多信息,请参阅Amazon CodeDeploy定价Amazon Lambda定价亚马逊CloudWatch定价