天天看點

AWS 彈性三劍客

彈性三劍客

如下圖所示,ELB,AutoScaling和CloudWatch組成了AWS的彈性三劍客,三個服務保證了應用的彈性。

當ELB中的目标組中的執行個體的名額(比如CPU使用率)出現告警時,會觸發cloudwatch監控,cloudwatch進行擴充或者縮減政策,auto scaling通過該政策進行EC2執行個體的擴充或者縮減,并注冊在ELB目标組中。

AWS 彈性三劍客

Auto scaling 冷卻時間、預熱時間作用

  • 冷卻時間作用:Auto Scaling 組在使用簡單擴充政策擴充後,會等到冷卻時間完成,然後再執行簡單擴充政策可以啟動的任何擴充活動。(比如若一個執行個體的啟動需要安裝配置腳本和檔案,可能需要幾分鐘,在此期間,若沒有冷卻時間,對于任何标準精度警報,可能會持續每分鐘觸發 CloudWatch 警報,進而導緻 Auto Scaling 組在警報每次觸發時都另外啟動一個執行個體)。
  • 預熱時間作用:當觸發警告後,執行個體開啟,同時開啟預熱時間計時,執行個體開啟完成後加入ELB目标組,等待預熱時間過後,ELB對EC2進行健康檢查,檢查通過後ELB正式轉發流量,目的主要是為了機器能完成開啟并完成服務加載。

Auto Scaling 重要參數

關聯目标組

負載均衡器将作為 Auto Scaling 組的所有傳入 Web 流量的單一接觸點。将執行個體添加到您的組時,它需要注冊到負載均衡器中,否則不會有流量路由到該執行個體。從您的組中移除某個執行個體時,必須在負載均衡器中登出它,否則流量會繼續路由到該執行個體。

當您将 Elastic Load Balancing 負載均衡器與 Auto Scaling 組配合使用時,無需将 EC2 執行個體注冊到負載均衡器或目标組。通過 Elastic Load Balancing,由 Auto Scaling 組啟動的執行個體将自動注冊到負載均衡器或目标組,由 Auto Scaling 組終止的執行個體将自動從負載均衡器或目标組中登出。

AWS 彈性三劍客
運作狀況檢查類型

由于EC2類型的健康檢查隻是單純的檢查機器硬體層面以及OS系統是否正常開啟,并沒有檢查應用服務層面,會出現機器能開啟但是應用沒有正常加載的情況。是以最佳實踐是選擇ELB作為健康檢查類型。

AWS 彈性三劍客

繼續閱讀