為了提升彈性擴容成功率,您在配置伸縮組時,可通過擴充啟動模板屬性,同時配置多個執行個體規格,即您可以基於啟動模板配置多執行個體規格的伸縮組。本文介紹使用啟動模板作為執行個體配置來源建立伸縮組時,如何指定多個執行個體規格。
背景資訊
執行個體啟動模板包含了ECS執行個體的配置資訊,用於快速建立ECS執行個體。使用執行個體啟動模板建立ECS執行個體可以免去重複配置的操作,簡化配置流程。更多資訊,請參見執行個體啟動模板概述。
配置ECS類型的伸縮組時,可以選擇組內執行個體配置資訊來源為啟動模板,後續該伸縮組擴容時,會自動使用啟動模板包含的配置資訊來建立ECS執行個體。預設情況下,由於執行個體啟動模板僅支援指定一種執行個體規格,Auto Scaling基於啟動模板來建立ECS執行個體時可能會碰到指定規格庫存不足的情況。為了提升擴容的成功率,您可以為伸縮組擴充啟動模板屬性,配置多個執行個體規格來覆蓋啟動模板的單個規格配置,實現在某一規格庫存不足時,可以自動切換到其他規格,避免擴容失敗而影響業務。
準備工作
建立或配置伸縮組前,您需要前往ECS管理主控台的啟動模板頁面建立啟動模板,您也可以使用已有的啟動模板。關於如何建立啟動模板,請參見建立執行個體啟動模板。
Auto Scaling僅支援使用付費模式為隨用隨付和搶佔式執行個體的啟動模板,不支援付費模式為訂用帳戶的啟動模板。如果使用訂用帳戶的啟動模板,會自動轉換為隨用隨付的啟動模板。
本文使用以下啟動模板作為樣本:
付費模式:隨用隨付
執行個體規格:ecs.g5.large
操作步驟
以下步驟將建立兩個伸縮組,用於對比體現啟動模板+多執行個體規格的效果。
伸縮組A:只使用啟動模板,未擴充啟動模板屬性。
伸縮組B:使用啟動模板,並擴充啟動模板屬性,配置多個執行個體規格。
建立伸縮組A。
在伸縮組管理頁面,單擊建立伸縮組。
完成伸縮組配置,單擊建立。
本文使用以下參數配置作為樣本,未提及的參數可保持預設。更多資訊,請參見配置伸縮組。
參數
樣本
說明
伸縮組名稱
test-a
輸入伸縮組名稱。格式要求請參考介面提示。
伸縮群組類型
ECS
選擇ECS,表示伸縮組內的執行個體類型為ECS執行個體。
組內執行個體配置資訊來源
啟動模板
選擇啟動模板,表示伸縮組擴容時,會使用啟動模板配置的資訊來建立ECS執行個體。
選擇啟動模板
test
選擇準備好的啟動模板。
選擇模板版本
始終使用最新版本
按需選擇要使用的啟動模板版本。
組內最小執行個體數
1
設定伸縮組內執行個體數量的下限。當前執行個體數量低於下限時,伸縮組會自動添加執行個體,使得伸縮組內的執行個體數量等於下限。
組內最大執行個體數
1
設定伸縮組內執行個體數量的上限。當前執行個體數量超過上限時,伸縮組會自動移出執行個體,使得伸縮組內的執行個體數量等於上限。
建立伸縮組B。
請重複建立伸縮組A的步驟來建立伸縮組B(名稱為test-b),在伸縮組A配置的參數的基礎上,伸縮組B請配置擴充啟動模板屬性。具體操作如下:
在擴充啟動模板屬性處,選中覆蓋啟動模板執行個體規格。
按需選擇是否使用vCPU個數計算伸縮組容量。
選中使用vCPU個數計算伸縮組容量後,您可以在已選執行個體規格地區中查看已選執行個體對應的權重值。設定vCPU容量會重新計算伸縮組當前的容量,可能導致伸縮組觸發新的擴縮容活動,您也可以使用執行個體規格關聯的其他效能指標,例如記憶體大小,自訂伸縮組容量度量方式。更多資訊,請參見使用效能指標作為Auto Scaling的度量單位。
在使用者可選執行個體規格地區,單擊要選擇的執行個體規格前的表徵圖,配置多個執行個體規格。
啟動模板指定的執行個體規格預設已加入到已選執行個體規格。您可以按照選擇全部執行個體規格、按照執行個體規格推薦或按Vcpu推薦方式選擇多個執行個體規格。
本文以擴充ecs.g5ne.large和ecs.g6.large為例,建議您選擇更多的執行個體規格,減少所選規格庫存不足的風險。
在已選執行個體規格地區,調整規格的順序。
啟用伸縮組A和伸縮組B,並觸發擴容活動。
您可以通過設定最小執行個體數、期望執行個體數、執行伸縮規則等方法觸發伸縮組的擴容動作。
由於本文的兩個樣本伸縮組的最小執行個體數配置為1,因此啟用伸縮組後,兩個伸縮組會分別自動建立一台ECS執行個體。
效果對比
分別單擊伸縮組ID,開啟伸縮組詳情頁面,在執行個體列表頁簽,查看ECS執行個體資訊,對比規格差異。
伸縮組A:只使用啟動模板,未擴充啟動模板屬性。
由於啟動模板指定了ecs.g5.large,因此ECS執行個體的規格為ecs.g5.large。如果ecs.g5.large無庫存,將擴容失敗。
伸縮組B:使用啟動模板,並擴充啟動模板屬性,配置多個執行個體規格。
除了啟動模板指定的ecs.g5.large外,還增加了ecs.g5ne.large和ecs.g6.large。由於樣本配置中ecs.g6.large最優先,因此ECS執行個體的規格為ecs.g6.large。當ecs.g6.large無庫存,會依次嘗試ecs.g5.large和ecs.g5ne.large。
綜上,相比只使用啟動模板的伸縮組A,啟動模板+多執行個體規格的伸縮組B,在Auto Scaling方面可以更加靈活地適配實際業務情境需求,提高了擴容成功率。即:配置多個執行個體規格後,當某個執行個體規格沒有庫存時,Auto Scaling會自動切換到有庫存的執行個體規格進行擴容。