Amazon-Ec2
僅在更改自動縮放組中的 ECS 主機 ami 時創建新實例後關閉舊的 EC2 實例
這是我在 ECS 集群中的 AutoScalingGroup 的 LaunchConfiguration - 使用 cloudformation。
UpdatePolicy: AutoScalingRollingUpdate: MinInstancesInService: 1 MaxBatchSize: 1 PauseTime: PT15M WaitOnResourceSignals: true
我對目前設置的問題是,當我對 ECS 主機 AMI 進行更改時,它將導致每個 EC2 實例被關閉並一次更換一個。這會導致目前執行的任何/所有 ECS 服務甚至在創建新的 EC2 實例之前就被終止。
有沒有辦法做到這一點?他們的文件沒有提到實現我們想要的行為。
任何指針或提示表示讚賞。
將 MinInstancesInService 設置為等於更新前 ASG 的目前計數 - 這將使 Cloudformation 在每次終止最舊的實例之前創建一個新實例。確保在進行更新時暫停 ASG 上的程序,否則自動縮放可能會干擾 cloudformation 對需要替換哪些實例的理解。此外,使用自動縮放生命週期掛鉤心跳暫停您的實例關閉 15 分鐘左右,並使用 Lambda 攔截終止並將實例設置為 DRAINING 模式。請參閱此部落格文章:https ://aws.amazon.com/blogs/compute/how-to-automate-container-instance-draining-in-amazon-ecs/