AWS CDK是否提供部署ECS应用程序的结构



我们通常使用BlueGreen&滚动部署策略,

对于ECS容器实例中的docker容器;更新。


Ansible ECS模块允许通过以下模块实现此类部署策略:

https://docs.ansible.com/ansible/latest/modules/ecs_taskdefinition_module.html

https://docs.ansible.com/ansible/latest/modules/ecs_task_module.html

https://docs.ansible.com/ansible/latest/modules/ecs_service_module.html


AWS CDK是否为实施部署策略提供了此类构造?

CDK支持更高级别的ECS构造,称为"ECS模式"。其中之一是ApplicationLoadBalancedFargateService,它允许您在应用程序负载均衡器后面定义ECS Fargate服务。在这种情况下,支持开箱即用的滚动更新。您只需使用更新的Docker映像运行cdk deploy,ECS就会负责部署。它将:

  1. 使用新的Docker镜像启动一个新任务
  2. 等待新部署的几次成功运行状况检查
  3. 开始向新任务发送新流量,同时让现有连接正常完成旧任务
  4. 所有旧连接完成后,ECS将自动停止旧任务

如果您的新任务没有启动或不正常,ECS将继续运行原始任务。

关于蓝绿部署,我认为它还没有在CloudFormation中得到支持。一旦完成,它就可以在CDK中实现。如果您可以在没有BlueGreen作为IaC的情况下生活,那么您可以手动定义CodeDeploy。

检查这个NPM插件,它有助于使用CDK进行蓝绿色部署。

https://www.npmjs.com/package/@cloudcomponents/cdk蓝绿色容器部署

现在云构建中支持蓝绿色部署。

https://aws.amazon.com/about-aws/whats-new/2020/05/aws-cloudformation-now-supports-blue-green-deployments-for-amazon-ecs/

不要认为CDK的实现已经完成。

相关内容

  • 没有找到相关文章

最新更新