CodeDeploy阻止我删除EC2中的实例

时间:2017-10-24 14:27:35

标签: amazon-ec2 aws-code-deploy

我正在尝试设置项目,而我的BeforeInstall脚本失败了。我正在解决这个问题,但它会产生副作用,每当我尝试部署时,我都会获得新的实例。我达到了22.当我尝试删除实例时,它们会在以后重新出现。有些事情迫使他们活着。

我并不完全熟悉这里发生的事情,但我的理论是CodeDeploy为每个部署创建一个新的AutoScaling组,并且这些组配置为有3个实例。

所以我的问题是:

  1. 以上是怎么回事?
  2. 为什么CodeDeploy每次都会创建一个新的自动缩放组?
  3. 如果(2)是正确的行为,为什么不删除旧组,或者为什么在部署失败时不删除新组。
  4. 与(3)相关,我是否正确配置了某些内容?
  5. 感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

“为什么CodeDeploy会创建一个新的自动缩放组?” - 除非您选择自动复制Auto Scaling组选项创建蓝绿色部署,否则CodeDeploy不会创建新的自动缩放组。您进入的行为是因为如果您使用CodeDeploy一次部署到Autoscaling组中的实例,则会在CodeDeploy和Auto Scaling组之间建立一个钩子,并且每当您对任何实例的部署失败时,Austoscaling都会标记该实例作为一个错误的实例并旋转一个新实例并通知CodeDeploy将最后一个成功的修订部署到该实例。有关详细信息,请参阅http://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html

要解决此问题,您可以将自动扩展组所需的值设置为0以终止所有实例或暂停扩展策略。