Amazon ECS 线性部署所需的资源
要使用支持托管流量转移的线性部署,服务必须使用以下功能之一:
-
应用程序负载均衡器
-
Service Connect
注意
线性部署不支持网络负载均衡器。要获得网络负载均衡器支持,请改用蓝绿部署。
以下列表简要概述了配置 Amazon ECS 线性部署所需的内容:
-
您的服务使用应用程序负载均衡器或 Service Connect。配置相应的资源。
-
应用程序负载均衡器:有关更多信息,请参阅适用于蓝绿部署、线性部署和金丝雀部署的应用程序负载均衡器资源。
-
Service Connect:有关更多信息,请参阅适用于 Amazon ECS 蓝绿部署、线性部署和金丝雀部署的 Service Connect 资源。
-
-
将服务部署控制器设置为
ECS。 -
在服务定义中将部署策略配置为
linear。 -
或者,配置其他参数,例如:
-
新部署的烘焙时间
-
每个增量中要转移的流量百分比。
-
每个流量转移增量之间等待的持续时间(以分钟为单位)。
-
用于自动回滚的 CloudWatch 警报
-
部署生命周期挂钩(这些是在指定的部署阶段运行的 Lambda 函数,例如 BEFORE_INSTALL、PRODUCTION_TRAFFIC_SHIFT 或 POST_PRODUCTION_TRAFFIC_SHIFT)
-
最佳实践
请遵循下面的最佳实践以成功进行 Amazon ECS 线性部署:
-
确保您的应用程序可以处理同时运行的两个服务修订。
-
规划足够的集群容量,以便在部署期间处理两个服务修订。
-
在生产环境中实施回滚程序之前,先对其进行测试。
-
配置适当的运行状况检查,以准确反映应用程序的运行状况。
-
设置一个烘焙时间,以便充分测试新的服务修订。
-
实施 CloudWatch 警报,以自动检测问题并触发回滚。
-
选择步骤百分比和烘焙时间,以平衡部署速度和验证需求。
-
对关键应用程序使用较小步骤百分比(5-10%),以最大程度地降低风险。
-
对于需要时间预热或稳定的应用程序,设置更长的步骤烘焙时间。
-
实施 CloudWatch 警报,以任何流量增量自动检测问题并触发回滚。
-
在每次流量转移期间密切监控应用程序指标,以便及早检测性能下降。
-
确保您的应用程序可以处理同时运行的两个服务修订。
-
在生产环境中实施回滚过程之前,先在不同的流量百分比下对其进行测试。