1.Auto Scaling是什麼?
Auto Scaling可以有助於隨時確保有適當的 Amazon EC2 執行個體我們可用下方的圖形進行說明,這是三張利用CloudWatch來測量的一週內每天 EC2 資源要求,從圖中可得知週二需求量最大,週三需求量最小,可能是因為週二使用者使用較多,那這邊就有三種不同的分配方法。
Auto Scaling符合兩項AWS關鍵的特性:可擴展性及自動化。
可擴展性有分擴展跟縮減,擴展是Auto Scaling在使用率上升的時候增加更多執行個體,縮減則是終止執行個體。
如果要自動調整規模需具備三大要件:
啟動組態就是要定義Auto Scaling要啟動的項目,可以說是有關此EC2的所有項目,例如前面有介紹的AMI、執行個體的類型或是安全群組等。
Auto Scaling群組是要定義部署的位置,也就是要定義要在哪一個VPC部署執行個體以變與負載平衡器互動。另外還可以定義上限及下限,設定最高及最低的執行個體數量。
Auto Scaling 政策是要指定何時啟動或終止 EC2 執行個體,可以指定一個時間或者條件來新增或移除 EC2 執行個體。最佳的範例是至少建立一個 Auto Scaling 政策來指定何時進行擴展,並至少建立一個政策來指定何時縮減。
2.實際動手做 - Auto Scaling實作
Step.1 在主控台中點選EC2
Step.2 按下左方選單下方的「Auto Scaling」
Step.3 此頁面可得知目前並沒有任何的Auto Scaling群組,所以請選擇「建立Auto Scaling群組」。
Step.4 這裡不是要用啟動範本,而是啟動組態,所以先選擇「轉換至啟動組態」,然後要建立一個新的,所以要選擇「建立啟動組態」。
Step.5 接下來要開始建立啟動組態,先命名,再來要選擇AMI,可以直接輸入AMI ID(ami-010954cbfd082429),執行個體類型要選擇m4.large,再來下面都不用改,直到最後一個項目金鑰對要選擇現有金鑰對,並選擇先前的demo-EC2金鑰對,這樣就可以直接建立
Step.6 再來就可以回到Step.4的畫面輸入群組的畫面並選擇剛剛建立的啟動組態
Step.7 接下來要設定網路,這邊VPC會直接輸路,僅需選擇一個子網路即可,選完之後即可按下「下一步」
Step.8 步驟三要設定進階選項,在這裡都先不用設定,可以直接按「下一步」
Step.9 接下來上方所需容量改成2,然後設定在兩個到八個執行個體之間進行擴展,下方擴展政策平均 CPU 使用率設定為 60%。仔細看我們選擇的是目標追蹤的擴展政策,目標追蹤就是會自動擴展及縮減,當然也可以建立個別的擴展政策和縮減政策。完成後按下「下一步」。
Step.10 接下來可以設定通知,以及下一步的標籤,通知就是當啟動或終止群組中的EC2執行個體時,就會通知,那這邊兩項就不多做設定,直接按「下一步」兩次。
Step.11 最後一步就是檢閱,稍微檢查一下,沒問題即可按下「建立Auto Scaling」。
3.考前重點大補帖
⦁ Auto Scaling 有助於確保您有適當數量的 Amazon EC2 執行個體
⦁ 擴展 – 新增執行個體
縮減 – 終止執行個體
⦁ 自動調整規模需具備的三大要件:
⦁ 以條件為基礎的政策能讓您的 Auto Scaling 動態調整,且能夠滿足波動的需求
⦁ CloudWatch 本身並不會新增或移除 EC2 執行個體
⦁ 正常來說,當超過效能閾值時,CloudWatch 警示會觸發 Auto Scaling 事件,然後擴
展或縮減環境中的 EC2 執行個體。
⦁ Auto Scaling 符合兩個關鍵的 AWS 最佳實務:
4.經典歷屆試題
單選題
《詳解》
此題的A選項為陷阱,要注意Load balancing與Auto Scaling雖然都是分配工作負載,但Load balancing只會在現有的實例分配工作負載,並不會新增或減少實例的個數,而Auto Scaling就正好相反。