根據業務需求和策略設置伸縮規則,在業務需求增長時自動為您增加 ECS 實例以保證計算能力,在業務需求下降時自動減少 ECS 實例以節約成本,彈性伸縮不僅適合業務量不斷波動的應用程序,同時也適合業務量穩定的應用程序
創建彈性伸縮組
①. — 伸縮組名稱:自定義命名,此處我命名為 as-003
②. — 組內實例配置信息來源:可以繼承自定義模板(可以復用)或者繼承已有實例的配置,也可以從零開始創建
③. — 標簽:標記不同的伸縮組,方便分類管理不同的伸縮組(如果想給 ECS 實例打標簽,需要通過上述自定義模板配置)
④. — 實例移出策略:阿里雲社區文檔說明
⑤. — 暫停的流程:伸縮組處理到某個流程時(如擴容),會暫停(擴容),等待管理員處理,處理過后繼續執行自動化的伸縮流程(此處理解不是很透徹,可能有偏差)
⑥. — 開啟伸縮組保護:開啟后,該伸縮組不能通過 API 或者控制台直接刪除,必須將刪除保護關閉后,才能刪除
⑦. — 實例的健康檢查:是否對伸縮組內的 ECS 實例做健康檢查,將不健康的實例移出伸縮組
⑧. — 組內最小實例數:略
⑨. — 組內最大實例數:略
⑩. — 組內期望實例數:略
— 默認冷卻時間:執行了一次伸縮活動(添加或移出 ECS 實例)后,到下一次伸縮活動的冷卻時間,目前只針對報警任務觸發的伸縮活動有效
⑪. — 網絡類型:專有網絡(自定義創建)
⑫. — 多可用區擴容策略:下面單獨介紹
⑬. — 實例回收模式:釋放模式 & 停機回收模式(雲盤存儲資源等還會計費)
⑭. — 專有網絡:需要我們單獨創建一個私有 IP 網段,作為專有網絡
⑮. — 選擇交換機:在專有網絡下,創建多個虛擬交換機,此處我創建了三個虛擬交換機,每個虛擬交換機對應不同可用區,即可實現多可用區擴容策略(下面詳細說明)
⑯. — 其他:略
多可用區擴容策略
原理:同一個地域內,不同的可用區之間內網是互通的
①. — 優先級策略:當優先級較高的虛擬交換機所在可用區無法創建 ECS 實例時,自動使用下一優先級的虛擬交換機創建 ECS 實例
②. — 均衡分布策略:如圖,即平均分配伸縮組 ECS 實例到每一個可用區(需要配置虛擬交換機並通過虛擬交換機通信)
③. — 成本優化策略:略
添加伸縮配置
剛創建好的伸縮組,默認為停用狀態
選擇添加伸縮配置:
基礎配置
系統配置
確認配置
檢驗配置
啟用伸縮組后(等待一會),ECS 實例會自動創建,如下圖:
查看詳細實例列表內容:
創建伸縮規則
對於 as-003 伸縮組,添加伸縮規則:
伸縮規則的類型:
①. — 簡單規則
定義了伸縮組擴縮容的行為,當由報警任務觸發時,需要等待冷卻時間結束
②. — 目標追蹤規則
通過自動計算實例擴縮容數量將指定指標維持在目標值附近
③. — 預測規則
用戶可以配置要預測的性能監控,監控目標值等一系列參數,對伸縮組進行預測
④. — 步進規則
根據一組步長調整增加或減少組的當前容量,這些步長調整根據警報違規的大小而變化
創建報警任務
創建報警任務后,默認為已啟用狀態;
可以看到 as-alert001 狀態顯示 數據不足,是因為沒有 ECS 實例,我停用了這個報警任務監控的伸縮組,並刪除了伸縮組下的 ECS 實例
檢驗報警任務 && 伸縮規則
由於設置了報警任務並綁定觸發規則:
①. — 在 CPU 使用率平均值低於 30% 時,會報警
②. — 報警會觸發 as-rule003 伸縮規則,減少一台 ECS 實例
等一段時間后,可以觀察到 as-003 伸縮組的 ECS 實例已經減少到了最低數量(最小實例數:1)
報警任務詳情: