是aws cloudformation中的原子堆栈更新吗?

时间:2018-02-19 08:19:53

标签: amazon-web-services amazon-cloudformation devops

我们说我有一个由

组成的堆栈
  1. ec2实例作为应用程序服务器
  2. 一个ELB作为负载均衡器
  3. 两个Elasticsearch节点
  4. 然后,如果我出于任何原因更新堆栈,可能是为了增加应用程序服务器的数量,所有新组件都准备好与我当前的堆栈并行,并且我的当前堆栈会立即替换为新的堆栈,比如数据库系统中的原子操作?

    因为这种减少涉及对Elasticsearch中的现有数据进行去分割,即使减少Elasticsearch节点的数量,是否也适用相同的过程?

1 个答案:

答案 0 :(得分:1)

执行堆栈更新时,只有您更改的资源为updated or replaced。在您的用例中,如果您更改ES群集中​​的节点数,则EC2实例和ELB将保持不变并保持不变。

如果您想要检查哪些资源会受到您对模板所做更改的影响,可以在应用之前使用CloudFormation Change Sets预览更改。

如果您只是添加Auto Scaling组中的实例数,现有的实例将保留在那里。但是,如果要减少ASG中的实例数,将首先删除最旧的实例。您可以使用AutoScalingRollingUpdate policy来控制它。

或者,您可以指定在执行更新时使用新的ASG替换整个ASG,包括所有新的EC2实例。使用AutoScalingReplacingUpdate policy可以配置此行为。