如果需要實現高可用集群搭建、低成本故障轉移和精細化的網絡管理,同時需要公網訪問能力,您可以在擴容時為新的ECS實例自動綁定帶有EIP的輔助彈性網卡。如果伸縮組中的ECS實例已綁定了帶有EIP的輔助彈性網卡,但您需要及時釋放ECS資源(例如業務進入低谷期),或不再需要公網訪問能力,您可以在縮容時自動釋放不再需要的輔助彈性網卡和EIP以優化資源使用并降低成本。
準備工作
已創建伸縮組,且該伸縮組處于啟用狀態。具體操作,請參見配置伸縮組。
授予OOS服務訪問其他云產品權限。具體操作,請參見為OOS服務設置RAM權限。
創建RAM角色。
本步驟中RAM角色的受信服務為系統運維管理,RAM角色名稱以
OOSServiceRole
為例。為RAM角色添加授權策略。
通過OOS執行任務時涉及ECS、彈性伸縮以及EIP資源,因此您需要為
OOSServiceRole
角色添加以下系統策略:AliyunECSFullAccess
AliyunESSFullAccess
AliyunEIPFullAccess
擴容時為ECS實例自動綁定帶有EIP的輔助彈性網卡
創建生命周期掛鉤。
主要配置項說明如下所示,未提及的配置保持默認即可。具體操作,請參見配置生命周期掛鉤。
配置項
說明
名稱
輸入
ESSHookForAttachNicWithEip
。適用的伸縮活動類型
選擇彈性擴張活動。
超時時間
輸入適當的超時時間,例如300秒。
重要該參數用于執行自定義操作的時間,若超時時間過短,可能導致自定義操作失敗,請評估自定義操作耗時并設置適當的超時時間。
掛鉤期間執行的動作
執行動作選擇OOS模板。配置步驟如下:
OOS模板類型選擇公共模板。
選擇OOS公共模板
ACS-ESS-LifeCycleCreateNetworkInterfaceAndEipAndAttachToInstance
,實現擴容時為ECS實例自動綁定帶有EIP的輔助彈性網卡。單擊
ACS-ESS-LifeCycleCreateNetworkInterfaceAndEipAndAttachToInstance
模板后的設置參數。主要參數示例如下,未提及的參數保持默認即可。
EIP的計量方式:PayByBandwidth為按帶寬計費,PayByTraffic為按流量計費。本教程以PayByBandwidth為例。
EIP的帶寬峰值:本教程以5為例,代表使用EIP時帶寬峰值為5 Mbit/s。
OOS扮演的RAM角色:選擇
OOSServiceRole
即可。
彈性伸縮觸發擴容活動。
本步驟以手動執行伸縮規則增加1臺ECS實例為例。您也可以通過定時任務、報警任務等方式觸發擴容。具體操作,請參見配置伸縮規則。
說明手動執行伸縮規則觸發擴容時,生命周期掛鉤會生效,但手動添加已有ECS實例時,生命周期掛鉤不會生效。
成功觸發擴容活動后,伸縮組會自動擴容1臺ECS實例,但由于伸縮組內已創建生命周期掛鉤
ESSHookForAttachNicWithEip
,ECS實例會被掛起,同時自動通知OOS服務執行運維操作,即創建輔助彈性網卡(同時自動為該網卡分配了一個EIP)并將其綁定在ECS實例上。如果伸縮活動的狀態為失敗,且出現以下報錯,請前往OOS控制臺查看運維任務執行情況。具體操作,請參見(可選)查看OOS執行情況。
查看擴容的ECS實例是否已自動綁定帶有EIP的輔助彈性網卡。
在伸縮組的
頁簽下,單擊自動創建的ECS實例對應云服務器ID/名稱列下的實例ID。在ECS實例詳情頁,單擊彈性網卡頁簽,查看ECS實例綁定的彈性網卡。
如下圖所示,表示ECS實例已自動綁定了1張輔助彈性網卡,并且為該輔助彈性網卡分配了EIP。
說明如果成功創建了ECS實例,但ECS實例并沒有自動綁定輔助彈性網卡和EIP,請前往OOS控制臺查看運維任務執行情況。
(可選)查看OOS執行情況。
在任務執行詳情頁面查看執行的相關信息。您可以在基本信息區域查看執行ID、執行狀態等,也可以在執行步驟和結果區域,查看執行詳情和相應日志。具體操作,請參見查看執行詳情。
重要如果執行失敗,在執行詳情頁面也會顯示相關的報錯信息。
(可選)配置輔助彈性網卡。
ECS實例綁定輔助彈性網卡后,部分鏡像可能無法自動識別輔助彈性網卡的IP地址并添加路由,導致輔助彈性網卡無法正常使用。具體操作,請參見配置輔助彈性網卡。
縮容時為ECS實例自動釋放帶有EIP的輔助彈性網卡
創建生命周期掛鉤。
主要配置項說明如下所示,未提及的配置保持默認即可。具體操作,請參見配置生命周期掛鉤。
配置項
說明
名稱
輸入
ESSHookForDeleteNicAndEip
。適用的伸縮活動類型
選擇彈性收縮活動。
超時時間
輸入適當的超時時間,例如300秒。
重要超時時間即用于執行自定義操作的時間,若超時時間過短,可能導致自定義操作失敗,請評估自定義操作耗時并設置適當的超時時間。
掛鉤期間執行的動作
執行動作選擇OOS模板。配置步驟如下:
OOS模板類型選擇公共模板。
選擇OOS公共模板
ACS-ESS-LifeCycleDetachNetworkInterfaceAndDeleteEip
,實現擴容時為ECS實例自動釋放帶有EIP的輔助彈性網卡。單擊
ACS-ESS-LifeCycleDetachNetworkInterfaceAndDeleteEip
模板后的設置參數。設置OOS扮演的RAM角色為
OOSServiceRole
即可,其他參數保持默認即可。
彈性伸縮觸發縮容活動。
本步驟以手動執行伸縮規則減少1臺ECS實例為例。您也可以通過定時任務、報警任務等方式觸發擴容。具體操作,請參見配置伸縮規則。
說明手動執行伸縮規則觸發縮容時,生命周期掛鉤會生效,但手動移出已有ECS實例時,生命周期掛鉤不會生效。
成功觸發縮容活動后,伸縮組會自動減少1臺ECS實例,但由于伸縮組內已創建生命周期掛鉤
ESSHookForDeleteNicAndEip
,ECS實例會被掛起,同時自動通知OOS服務執行運維操作(即已成功釋放ECS上的輔助彈性網卡和EIP)。查看縮容的ECS實例是否已自動釋放輔助彈性網卡和EIP。
您可以前往網卡列表和彈性公網IP列表,查看對應的輔助彈性網卡和EIP,如果不存在,則說明釋放了輔助彈性網卡和EIP。
說明如果成功刪除了ECS實例,但并沒有同時釋放輔助彈性網卡和EIP,請前往OOS控制臺查看運維任務執行情況。
(可選)查看OOS執行情況。
在任務執行詳情頁面,查看執行的相關信息。您可以在基本信息區域查看執行ID、執行狀態等,也可以在執行步驟和結果區域,查看執行詳情和相應日志。具體操作,請參見查看執行詳情。
重要如果執行失敗,在執行詳情頁面也會顯示相關的報錯信息。
常見問題
如果運維任務執行失敗,請根據執行結果中的報錯信息排查原因。更多信息,請參見常見問題。
常見的報錯信息如下:
報錯信息 | 原因 | 解決方案 |
Forbidden.Unauthorized message: A required authorization for the specified action is not supplied. | 您并未向彈性伸縮授權操作當前Action。 | 請檢查是否為RAM角色OOSServiceRole添加了相應的權限。 |
Forbidden.RAM message: User not authorized to operate on the specified resource, or this API doesn't support RAM. | RAM用戶或RAM角色沒有操作對應資源的權限。 | 請檢查是否為RAM角色OOSServiceRole添加了相應的權限。例如為RAM角色授予OOS服務的示例權限。您需要為RAM角色添加操作權限,確保OOS服務能夠操作OOS模板中涉及的資源。 |
LifecycleHookIdAndLifecycleActionToken.Invalid message: The specified lifecycleActionToken and lifecycleActionId you provided does not match any in process lifecycle action. | 正在進行的生命周期動作已經過期或中止。 | 請評估生命周期掛鉤的超時時間,確保在超時時間內可以執行完OOS模板中定義的運維任務。 |
相關文檔
EIP計費項包含公網網絡費、EIP配置費(公網IP保有費)和EIP綁定費,更多信息,請參見EIP計費概述。
您可以在擴容時為新的ECS實例自動綁定EIP以保持服務的可訪問性,并在縮容時自動釋放不再需要的EIP以優化資源使用并降低成本。具體操作,請參見自動綁定和釋放EIP。