Amazon-Web-Services

AWS 實例無故繁殖和死亡

  • February 19, 2019

自從我們將集群項目從 Google 轉移到 AWS 以來,這種情況已經發生了幾次。

我們有一個 EFS 卷,它安裝在 Beanstalk 項目中的負載平衡集群上。

我將進行一些設置,要麼將一個大的 ZIP 文件上傳到該 EFS 卷(通過負載平衡集群上的實例),要麼從集群實例上的 ssh 會話中解壓縮一個,然後我會突然發現實例從我下面撕下來,發現集群已經培育了兩個(或更多)新實例,並且正在關閉我正在訪問的那個。

這裡發生了什麼?實例都是“t2-micro”實例;它們是否不足以承受持續負載,並且已耗盡突發容量?有沒有人見過這樣的事情?

所以你在我假設t2.microAuto Scaling Group (ASG) 中得到了這個?

並且此 ASG 配置為根據平均 CPU 負載向上/向下擴展?

您通過一些大型 ZIP 文件操作使其過載,用完**CPU Credits**,CloudWatch 注意到平均 CPU 負載超過門檻值並啟動一個新實例。正如預期的那樣。

這會降低平均 CPU 負載,並且 ASG 會終止執行時間最長的實例(您正在處理的實例)。也如預期。

  1. 我猜你的放大/縮小門檻值彼此太接近(也許你在負載 > 60% 時放大,當負載 < 50% 時縮小) - 配置更大的差距,例如 60% / 30%) .
  2. 不要超載 T2/T3、使用**T2/T3 Unlimited**或使用不使用 CPU 積分並提供一致性能的其他實例類型(如 M4、M5 或 C5)。
  3. 將 ASG 中的實例視為不可變的- 您永遠不需要登錄 ASG 中的實例,它們的所有配置都應通過 Launch Config 腳本自動完成。因為你永遠不知道它們何時開始或停止。

希望有幫助:)

引用自:https://serverfault.com/questions/954595