Ume*_*mer 2 amazon-web-services amazon-elb aws-cloudformation autoscaling
如果我的ec2启动配置发生任何更改,我将使用cloudformation UpdatePolicy属性执行滚动更新。使用按需实例时,这可以正常工作。但是当我使用竞价型实例时,出现以下错误:
Autoscaling rolling updates cannot be performed because the current launch configuration is using spot instances and MinInstancesInService is greater than zero.
Run Code Online (Sandbox Code Playgroud)
将MinInstancesInService属性设置为零可以使其正常工作,但是我会在3-5分钟左右的时间内停机。
有没有一种方法可以使用Cloudformation在不停机的情况下实现这一目标?否则,有人会指出一种更好的方法来自动执行此滚动更新过程,因为我有多个环境,而手动执行此操作很容易出错。谢谢
MinInstancesInService使用竞价型实例时,您不能设置为0以外的任何值,因为竞价型实例可以随时终止,从而使AWS无法保证在滚动更新期间保持最少数量的实例处于服务状态。
但是,您可以将MaxBatchSizeUpdatePolicy中的参数设置为1,因此一次只能更新一个实例。为了确保高可用性,您必须确保AutoScalingGroup中有2个或更多实例可用,否则滚动更新将终止您的单个实例,从而导致停机。
| 归档时间: |
|
| 查看次数: |
675 次 |
| 最近记录: |