2017-08-28 61 views
1

我試圖將自動擴展組中的實例部署到自動擴展組中。當找到新的啓動配置時,Auto Scaling組中的EC2實例自動更新

不幸的是,我不能考慮CodeDeploy或其他AWS服務,所以我只想用EC2工具來做到這一點。

這是我的方法: 我編寫了一個腳本,用於從「主」實例(我正在部署的唯一一個實例)創建AMI,然後使用它創建新的啓動配置,然後更新我的自動縮放組用它。

我試圖利用終止政策,更具體地說是「最古老的發射配置」之一。 它的作用像一個魅力,但你也許已經知道,這隻適用於縮放

當我不縮放時,如何更新我的實例?關於如何強制終止「舊」實例的任何建議?

感謝您的幫助!

回答

0

您是對的 - Auto Scaling Termination Policy決定當Auto Scaling組(移除實例)時縮放哪個實例。

因此,刷新你的機隊總數的最佳方式是:

  • 向外擴展通過增加最小大小自動縮放組
  • 等待一切啓動和穩定
  • 尺度在減少的最小尺寸

根據您的擴​​展策略,這會導致Auto Scaling組減少組中的實例數。具有最早的啓動配置的實例將首先終止。 (或者,您也可以使用OldestInstance,這將有類似的效果。)

如果您縮放策略不會導致實例終止,你可能會迫使所需的容量到一個較低的數字,從而觸發橫向擴展在。

+0

使用這種方法,我發現了一個名爲「AWS Autoscaling Rollout」的腳本,它只是通過指定自動縮放組名稱來完成。 你可以在這裏找到它:https://github.com/AndrewFarley/farley-aws-missing-tools/tree/master/aws-autoscaling-rollout 感謝您的建議! –

相關問題