我们说我有一个由
组成的堆栈然后,如果我出于任何原因更新堆栈,可能是为了增加应用程序服务器的数量,所有新组件都准备好与我当前的堆栈并行,并且我的当前堆栈会立即替换为新的堆栈,比如数据库系统中的原子操作?
因为这种减少涉及对Elasticsearch中的现有数据进行去分割,即使减少Elasticsearch节点的数量,是否也适用相同的过程?
答案 0 :(得分:1)
执行堆栈更新时,只有您更改的资源为updated or replaced。在您的用例中,如果您更改ES群集中的节点数,则EC2实例和ELB将保持不变并保持不变。
如果您想要检查哪些资源会受到您对模板所做更改的影响,可以在应用之前使用CloudFormation Change Sets预览更改。
如果您只是添加Auto Scaling组中的实例数,现有的实例将保留在那里。但是,如果要减少ASG中的实例数,将首先删除最旧的实例。您可以使用AutoScalingRollingUpdate policy来控制它。
或者,您可以指定在执行更新时使用新的ASG替换整个ASG,包括所有新的EC2实例。使用AutoScalingReplacingUpdate policy可以配置此行为。