開啟伸縮配置的備選模式提高擴容成功率
伸縮配置支援開啟備選模式。開啟後,當伸縮組擴容遇到庫存不足時,Auto Scaling會根據您設定的備選範圍,自動補充其他執行個體規格或可用性區域來建立執行個體,提升擴容成功率。
功能說明
當伸縮組使用單一執行個體規格或少量可用性區域時,如果遇到庫存不足,擴容可能會失敗。備選模式基於即時庫存資料,在您預先授權的範圍內自動補充可用的執行個體規格和可用性區域,從而提升擴容成功率。
開啟備選模式時,您可以通過以下選項控製備選範圍:
|
備選範圍 |
說明 |
|
價格上限 |
設定備選執行個體規格的價格上限,單位為元/小時。備選規格的價格不會超過該上限。例如,當前所選規格最高單價為 5 元/小時,您可以將價格上限設定為 6 元/小時。 若不設定,備選模式會自動以當前已選規格的最高價格作為上限。 |
|
允許其他代系執行個體規格 |
開啟後,備選範圍將擴充到其他代系的同等大小執行個體規格。例如,當前規格為 ecs.c7.large,開啟後可備選 ecs.c6.large、ecs.c8.large 等同等大小的不同代系規格。 |
|
允許補充其他可用區的交換器 |
開啟後,當所有已選可用性區域均無法擴容時,Auto Scaling會根據即時庫存狀況在其他可用性區域自動建立交換器並添加到伸縮組中。開啟時需要指定交換器網段。例如,伸縮組配置了 cn-hangzhou-h 和 cn-hangzhou-g 可用性區域,當兩個可用性區域均無法擴容時,Auto Scaling可能會在 cn-hangzhou-k 可用性區域建立交換器並添加到伸縮組中。 |
前提條件
-
已建立ECS伸縮組。
-
伸縮配置的執行個體配置方式為指定執行個體規格。使用指定執行個體屬性方式時不支援備選模式。
使用限制
當開啟允許補充其他可用區的交換器時,必須同時指定交換器網段。交換器網段要求如下:
-
交換器的網段的掩碼長度範圍為 16~29 位。
-
交換器的網段必須從屬於所在 VPC 的網段。更多資訊,請參見什麼是Virtual Private Cloud。
-
交換器的網段不能與所在 VPC 中路由條目的目標網段相同,但可以是目標網段的子集。
-
交換器的網段不能是
100.64.0.0/10及其子網網段。
開啟備選模式
您可以通過控制台、CLI 或 API 在建立或修改伸縮配置時開啟備選模式。
控制台
-
在左側導覽列,單擊伸縮組管理。在頂部功能表列,選擇地區。
-
在伸縮組管理頁,找到待操作伸縮組,單擊伸縮組名稱進入詳細頁。
-
在伸縮配置頁簽下,執行以下操作之一:
-
建立伸縮配置:單擊建立伸縮配置按鈕。
-
修改現有伸縮配置:找到目標伸縮配置,單擊操作列的修改。
-
-
在鏡像和執行個體地區,執行個體配置方式選擇指定執行個體規格,並選擇所需的執行個體規格。
-
在已選執行個體規格地區上方,單擊備選模式按鈕。
系統彈出設定備選規格範圍對話方塊。
-
在設定備選規格範圍對話方塊中,按需配置備選範圍。各配置項說明如下表所示。
配置項
說明
價格上限
設定備選執行個體規格的價格上限,單位為元/小時。系統會顯示當前所選接受最高單價供您參考,建議將價格上限設定為當前最高單價的基礎上適當上浮(最高10%),以獲得更多備選規格。
執行個體規格
開啟允許其他代系執行個體規格開關後,備選範圍將包含與當前規格同等大小但不同代系的執行個體規格。例如,當前規格為 ecs.c7.large,開啟後可備選 ecs.c6.large 和 ecs.c8.large 等規格。
交换机
開啟允許補充其他可用性區域的交換器開關後,當所有已選可用性區域均無法擴容時,伸縮組會自動在其他可用性區域建立交換器並添加到伸縮組中。
交換器網段
僅當開啟了允許補充其他可用區的交換器後才需配置。指定自動建立交換器時使用的 IPv4 網段及掩碼。網段要求如下:
-
掩碼長度範圍為 16~29 位;
-
必須從屬於所在 VPC 的網段;
-
不能與所在 VPC 中路由條目的目標網段相同(可以是其子集);
-
不能是 100.64.0.0/10 及其子網網段。
-
-
單擊確定按鈕,完成備選模式的設定。
返回伸縮配置頁面後,您可以在執行個體規格列表下方看到備選規格和備選可用區的預覽資訊,展示根據當前備選範圍設定可能補充的執行個體規格和可用性區域。
-
完成其他伸縮配置項的設定後,單擊創建或修改按鈕,完成伸縮配置。
-
(可選)啟用伸縮配置。
CLI/API
通過CLI或SDK調用CreateScalingConfiguration或ModifyScalingConfiguration介面時,通過以下參數設定備選模式:
|
參數 |
類型 |
必填 |
說明 |
|
InstanceTypeCandidateOptions.Enabled |
boolean |
否 |
是否開啟備選模式。取值:
|
|
InstanceTypeCandidateOptions.MaxPrice |
float |
否 |
備選執行個體規格的價格上限,單位為元/小時。備選的執行個體規格價格不會超過該上限。 |
|
InstanceTypeCandidateOptions.AllowDifferentGeneration |
boolean |
否 |
是否允許補充其他代系的執行個體規格。例如當前規格為 ecs.c7.large,開啟後可備選 ecs.c6.large 和 ecs.c8.large 等規格。 |
|
InstanceTypeCandidateOptions.AllowCrossAz |
boolean |
否 |
是否允許補充其他可用性區域的交換器。開啟後,當所有已選可用性區域均無法擴容時,會根據即時庫存狀況自動在其他可用性區域建立交換器並添加到伸縮組中。設定為 true 時,必須同時設定 AllowCidrBlocks。 |
|
InstanceTypeCandidateOptions.AllowCidrBlocks.N |
string |
否 |
允許補充其他可用性區域交換器時,指定交換器的網段。網段要求:掩碼長度範圍為 16~29 位;必須從屬於所在 VPC 的網段;不能與 VPC 中路由條目的目標網段相同(可以是其子集);不能是 |
查看備選模式配置
伸縮配置建立完成後,您可以通過控制台、CLI 或 API 查看備選模式的配置資訊。
控制台
-
伸縮配置列表:開啟了備選模式的伸縮配置,在伸縮配置列表中會顯示備選模式標籤,方便您快速識別。
-
伸縮配置詳情頁:單擊伸縮配置ID進入詳情頁,在詳情頁中可以查看備選模式的完整配置資訊,包括:
-
是否開啟備選模式。
-
價格上限。
-
是否允許其他代系執行個體規格。
-
是否允許補充其他可用性區域的交換器。
-
交換器網段(如已配置)。
-
CLI/API
通過CLI或SDK調用DescribeScalingConfigurations介面,返回參數中包含以下備選模式相關欄位:
|
參數 |
類型 |
說明 |
|
InstanceTypeCandidateOptions.Enabled |
boolean |
是否已開啟備選模式。 |
|
InstanceTypeCandidateOptions.MaxPrice |
float |
備選執行個體規格的價格上限(元/小時)。 |
|
InstanceTypeCandidateOptions.AllowDifferentGeneration |
boolean |
是否允許補充其他代系的執行個體規格。 |
|
InstanceTypeCandidateOptions.AllowCrossAz |
boolean |
是否允許補充其他可用性區域的交換器。 |
|
InstanceTypeCandidateOptions.AllowCidrBlocks |
array of string |
允許補充的交換器網段列表。 |
修改備選模式配置
控制台
-
在左側導覽列,單擊伸縮組管理。在頂部功能表列,選擇地區。
-
在伸縮組管理頁,找到待操作伸縮組,單擊伸縮組名稱進入詳細頁面。
-
在伸縮配置頁簽下,找到目標伸縮配置,單擊操作列的修改。
-
單擊編輯備選範圍。在設定備選規格範圍對話方塊中,按需配置備選範圍。各配置項說明如下表所示。
配置項
說明
價格上限
設定備選執行個體規格的價格上限,單位為元/小時。系統會顯示當前所選接受最高單價供您參考,建議將價格上限設定為當前最高單價的基礎上適當上浮(最高10%),以獲得更多備選規格。
執行個體規格
開啟允許其他代系執行個體規格開關後,備選範圍將包含與當前規格同等大小但不同代系的執行個體規格。例如,當前規格為 ecs.c7.large,開啟後可備選 ecs.c6.large 和 ecs.c8.large 等規格。
交换机
開啟允許補充其他可用性區域的交換器開關後,當所有已選可用性區域均無法擴容時,伸縮組會自動在其他可用性區域建立交換器並添加到伸縮組中。
交換器網段
僅當開啟了允許補充其他可用區的交換器後才需配置。指定自動建立交換器時使用的 IPv4 網段及掩碼。網段要求如下:
-
掩碼長度範圍為 16~29 位;
-
必須從屬於所在 VPC 的網段;
-
不能與所在 VPC 中路由條目的目標網段相同(可以是其子集);
-
不能是 100.64.0.0/10 及其子網網段。
-
-
單擊修改按鈕,完成伸縮配置的修改。
修改伸縮配置中的備選模式後,新建立的 ECS 執行個體會使用新的備選模式配置,但不會影響伸縮組內已有 ECS 執行個體的配置。
CLI/API
通過CLI或SDK調用ModifyScalingConfiguration介面時,通過以下參數設定備選模式:
|
參數 |
類型 |
必填 |
說明 |
|
InstanceTypeCandidateOptions.Enabled |
boolean |
否 |
是否開啟備選模式。取值:
|
|
InstanceTypeCandidateOptions.MaxPrice |
float |
否 |
備選執行個體規格的價格上限,單位為元/小時。備選的執行個體規格價格不會超過該上限。 |
|
InstanceTypeCandidateOptions.AllowDifferentGeneration |
boolean |
否 |
是否允許補充其他代系的執行個體規格。例如當前規格為 ecs.c7.large,開啟後可備選 ecs.c6.large 和 ecs.c8.large 等規格。 |
|
InstanceTypeCandidateOptions.AllowCrossAz |
boolean |
否 |
是否允許補充其他可用性區域的交換器。開啟後,當所有已選可用性區域均無法擴容時,會根據即時庫存狀況自動在其他可用性區域建立交換器並添加到伸縮組中。設定為 true 時,必須同時設定 AllowCidrBlocks。 |
|
InstanceTypeCandidateOptions.AllowCidrBlocks.N |
string |
否 |
允許補充其他可用性區域交換器時,指定交換器的網段。網段要求:掩碼長度範圍為 16~29 位;必須從屬於所在 VPC 的網段;不能與 VPC 中路由條目的目標網段相同(可以是其子集);不能是 |
關閉備選模式
控制台
-
在左側導覽列,單擊伸縮組管理。在頂部功能表列,選擇地區。
-
在伸縮組管理頁,找到待操作伸縮組,單擊伸縮組名稱進入詳細頁面。
-
在伸縮配置頁簽下,找到目標伸縮配置,單擊操作列的修改。
-
在選擇執行個體規格右側,關閉備選模式開關。
-
單擊修改按鈕,完成伸縮配置的修改。
CLI/API
通過CLI或SDK調用ModifyScalingConfiguration介面,將 InstanceTypeCandidateOptions.Enabled 設定為 false 即可關閉備選模式。
關閉備選模式後,伸縮組在擴容時將不再自動補充其他執行個體規格或可用性區域。如果當前配置的執行個體規格和可用性區域庫存不足,擴容可能會失敗。
使用樣本
以下樣本示範備選模式如何在庫存不足時提升擴容成功率。
情境:某伸縮組配置了單一執行個體規格 ecs.c7.large,使用杭州可用性區域 J(cn-hangzhou-j),由於該規格在可用性區域 J 庫存不足,擴容頻繁失敗。
解決方案:在伸縮配置中開啟備選模式,配置如下:
|
配置項 |
配置值 |
|
價格上限 |
1.1 元/小時(當前規格單價 1 元/小時,上浮 10%) |
|
允許其他代系執行個體規格 |
開啟 |
|
允許補充其他可用性區域的交換器 |
開啟 |
|
交換器網段 |
192.168.3.0/24 |
效果:當 ecs.c7.large 在 cn-hangzhou-j 庫存不足時,伸縮組會自動嘗試以下策略:
-
在 cn-hangzhou-j 可用性區域使用備選規格(如 ecs.c6.large 或 ecs.c8.large)建立執行個體。
-
如果 cn-hangzhou-j 所有備選規格均庫存不足,自動在其他可用性區域(如 cn-hangzhou-k)建立交換器,並使用原規格或備選規格建立執行個體。
通過備選模式,伸縮組的擴容成功率提升,無需人工幹預。
相關文檔
-
建立伸縮配置的完整參數說明,請參見建立伸縮配置(ECS執行個體)。
-
管理伸縮配置(啟用、修改、刪除等操作),請參見管理伸縮配置。
-
通過指定執行個體屬性方式自動篩選執行個體規格,請參見使用指定執行個體屬性方式配置伸縮配置。
-
可調用CreateScalingConfiguration或ModifyScalingConfigurationAPI 通過
InstanceTypeCandidateOptions參數設定備選模式。 -
可調用DescribeScalingConfigurationsAPI 查詢伸縮配置中的備選模式設定。