本文中含有需要您注意的重要提示信息,忽略該信息可能對您的業務造成影響,請務必仔細閱讀。
當您使用傳統集群運維時,會遇到系統維護成本高、擴縮容速度慢、容量規劃難以及資源利用率低等問題。在分布式應用管理中,彈性伸縮能夠感知應用內各個實例的狀態,并根據實例狀態自動增加或減少實例數量,即擴容或縮容。結合SAE應用實例監控,您可以了解資源使用量,選擇合適的彈性策略與指標、設置彈性閾值,從而提高資源利用率、降低資源成本。
視頻教程
您可以觀看以下視頻,了解什么是彈性伸縮以及如何在SAE控制臺快速使用彈性伸縮策略。
前提條件
背景信息
SAE彈性伸縮支持以下方式:
手動擴縮:當應用擴縮容為緊急需求時,例如突發性的流量高峰,您可以選擇手動擴縮方式。具體操作,請參見手動擴縮。
自動擴縮:當應用擴縮容為非緊急需求時,例如周期性的流量高峰,您可以選擇自動擴縮方式,即配置彈性伸縮策略。SAE彈性伸縮策略包括定時彈性策略、監控指標彈性策略和混合彈性策略。更多信息,請參見SAE彈性伸縮最佳實踐。
配置彈性伸縮策略的全流程如下圖所示。
適用場景
SAE支持配置三種類型的彈性伸縮策略。
注意事項
最多支持創建5條定時策略、1條監控指標策略或1條混合彈性策略,三種策略不能同時使用。
彈性策略啟用時,請勿手動進行應用生命周期管理操作,例如應用擴縮、部署應用、更改規格、重啟應用和停止應用。如果需要對應用進行該類操作,先停用彈性策略后,再手動執行操作。
如果當前應用處于擴容、縮容、部署(單批、分批或灰度)、更改規格、重啟和停止等過程,需等待過程完成后,才可添加或啟動彈性策略。
單應用的實例數上限為50。如需提升額度,請加入釘群(釘群號:32874633),申請開通白名單。
查看應用實例監控(邀測)
如果您未使用彈性功能,可以依據應用實例的監控指標趨勢,評估是否需要為自己的業務設置彈性策略;如果您正在使用彈性功能,可以通過查看監控指標檢驗彈性規則啟用后的效果,合理調整彈性閾值、設置報警規則。
應用實例趨勢圖的功能邀測中,如需使用,請加入釘群(釘群號:32874633),申請開通白名單。
登錄SAE控制臺。
在左側導航欄,選擇 ,在頂部菜單欄選擇地域,然后單擊具體應用名稱。
在基本信息頁簽的應用實例趨勢圖,按需篩選監控維度。
您可以滑動趨勢圖下方的時間軸,調整數據展示的時間范圍;也可以單擊左下角的圖例,選擇數據展示的類別。
說明SAE僅支持查詢7天內的應用實例監控數據。
配置彈性伸縮策略
登錄SAE控制臺。
在左側導航欄,選擇 ,在頂部菜單欄選擇地域,然后單擊具體應用名稱。
在基本信息頁面,單擊右上角的自動擴縮,進入添加彈性策略面板。
在添加彈性策略面板,設置策略信息。
配置項
說明
策略類型
選擇定時策略。
策略名稱
自定義。
選擇時間
短期:需要指定執行定時彈性伸縮策略的起止日期。
長期:無需指定執行定時彈性伸縮策略的結束日期。
周期
執行定時彈性伸縮策略的周期。
每天:每天指定時間執行定時策略。
每周:每周指定天數的指定時間執行定時策略。
每月:每月指定日期的指定時間執行定時策略。
單天內的觸發時間
設置彈性伸縮策略觸發的時間,以及該時間段內需要保持的應用實例數。示例如下。
如果周期設為每天,第一條定時策略觸發開始時間為08:00,目標實例數為10個;第二條定時策略開始時間為20:00,目標實例數為3個。則在08:00至20:00之間,SAE依據所設的規則,將該應用的實例數保持為10個,在20:00至次日08:00之間,應用實例數保持為3個。
重要單條定時策略內,兩個鄰近的單天內的觸發時間間隔需大于5分鐘。如果設置了多條定時策略,SAE會檢查重復日期內的多個觸發時間點的時間間隔。
如果設置了多條定時策略,并且兩個觸發點時間重復,那么遵循以新蓋舊的原則,以最后添加的觸發點策略為準。設置定時策略時,需避免時間沖突。
配置項
說明
策略類型
選擇監控指標策略。
策略名稱
自定義。
觸發條件
設置以下監控指標中的一個或多個。默認顯示CPU使用率和內存使用率指標類型,單擊添加設置更多指標。
CPU使用率:15 秒內應用所有實例平均CPU利用率。
內存使用率:15 秒內應用所有實例平均Mem利用率 。
TCP活躍連接數:30秒內單個實例的平均TCP活躍連接數。
TCP總連接數:30秒內單個實例的平均TCP總連接數。
應用QPS:1分鐘內單個實例的平均QPS。
應用響應時間(RT):1分鐘內應用所有服務接口RT的平均值。
公網CLB QPS:15秒內公網CLB平均QPS。
公網CLB響應時間:15秒內公網CLB平均RT。
私網CLB QPS:15秒內私網CLB平均QPS。
私網CLB響應時間:15秒內私網CLB 平均RT。
實例數設置
輸入實例數或者滑動下方的指針設置實例數。
應用最小實例數:觸發彈性伸縮條件后,應用縮容,其實例數可達到的目標值。
應用最大實例數:觸發彈性伸縮條件后,應用擴容,其實例數可達到的目標值。
最小存活實例數:每次部署最小存活的實例數。取值需大于等于0,且小于等于當前應用實例總數。僅當應用最小實例數小于應用最小存活實例數時,才會顯示該配置項。單擊設置,在設置最小存活實例數對話框設置最小存活實例數量。
說明手動擴縮與添加彈性策略能夠設置的最大實例數同步。每次滾動部署最小存活的實例數建議大于等于1,保證業務不中斷。如果設置為0,應用升級過程中業務將會中斷。
高級設置
彈性擴容步長:單位時間內最多擴容的實例數。
彈性縮容步長:單位時間內最多縮容的實例數。
擴容穩定窗口:穩定窗口期系統趨于維穩狀態。通過自動擴縮算法來保證當需要執行擴容時,使用指定時間間隔內所計算的期望目標實例數中的最小值。
縮容穩定窗口:穩定窗口期系統趨于維穩狀態。通過自動擴縮算法來保證當需要執行縮容時,使用指定時間間隔內所計算的期望目標實例數中的最大值。
禁止縮容:開啟后將永遠不會縮容該應用的實例,能有效防止在流量高峰期縮容造成業務風險。默認關閉。
配置項
說明
策略類型
選擇混合彈性策略。
策略名稱
自定義。
觸發條件
設置以下監控指標中的一個或多個。默認顯示CPU使用率和內存使用率指標類型,單擊添加設置更多指標。
CPU使用率:15 秒內應用所有實例平均CPU利用率。
內存使用率:15 秒內應用所有實例平均Mem利用率 。
TCP活躍連接數:30秒內單個實例的平均TCP活躍連接數。
TCP總連接數:30秒內單個實例的平均TCP總連接數。
應用QPS:1分鐘內單個實例的平均QPS。
應用響應時間(RT):1分鐘內應用所有服務接口RT的平均值。
公網CLB QPS:15秒內公網CLB平均QPS。
公網CLB響應時間:15秒內公網CLB平均RT。
私網CLB QPS:15秒內私網CLB平均QPS。
私網CLB響應時間:15秒內私網CLB 平均RT。
應用最大最小實例數設置
默認設置
設置應用實例數。
應用最小實例數:觸發彈性伸縮條件后,應用縮容,其實例數可達到的目標值。
應用最大實例數:觸發彈性伸縮條件后,應用擴容,其實例數可達到的目標值。
最小存活實例數:每次部署最小存活的實例數。取值需大于等于0,且小于等于當前應用實例總數。僅當應用最小實例數小于應用最小存活實例數時,才會顯示該配置項。單擊設置,在設置最小存活實例數對話框設置最小存活實例數量。
說明手動擴縮與添加彈性策略能夠設置的最大實例數同步。每次滾動部署最小存活的實例數建議大于等于1,保證業務不中斷。如果設置為0,應用升級過程中業務將會中斷。
特殊時間段設置
給特定的時間段設置特定的實例最大最小值。默認顯示選擇時間1。單擊+添加特殊時間段,設置選擇時間2。
短期:需要指定執行定時彈性伸縮策略的起止日期。
長期:無需指定執行定時彈性伸縮策略的結束日期。
說明特殊時間段設置不超過2條。
同一條策略內,單天內的觸發時間段不能重合,不超過20條。
周期
在周期下拉列表,選擇每天、每周或每月,并配置相應信息。
每天:每天指定時間執行定時策略。
每周:每周指定天數的指定時間執行定時策略。
每月:每月指定日期的指定時間執行定時策略。
單天內的觸發時間
設置彈性伸縮策略觸發的時間,以及該時間段內需要保持的應用實例數。示例如下。
如果周期設為每天,特殊時間段觸發時間為08:00~20:00,應用最小實例數為3個,應用最大實例數為10個,那么基于已配置的觸發條件,SAE在指定的日期內會執行以上定時彈性伸縮策略。
高級設置
彈性擴容步長:單位時間內最多擴容的實例數。
彈性縮容步長:單位時間內最多縮容的實例數。
擴容穩定窗口:穩定窗口期系統趨于維穩狀態。通過自動擴縮算法來保證當需要執行擴容時,使用指定時間間隔內所計算的期望目標實例數中的最小值。
縮容穩定窗口:穩定窗口期系統趨于維穩狀態。通過自動擴縮算法來保證當需要執行縮容時,使用指定時間間隔內所計算的期望目標實例數中的最大值。
禁止縮容:開啟后將永遠不會縮容該應用的實例,能有效防止在流量高峰期縮容造成業務風險。默認關閉。
說明混合彈性策略設置的多個特殊時間段之間不可重疊。
單條混合彈性策略內設置的觸發時間,不能小于系統當前時間;如果小于當前時間,該策略將在下個執行周期內生效。
單擊下一步:預覽定時策略確認策略信息,然后單擊確認。
策略設置完成后,在實例部署信息頁簽的彈性伸縮區域,單擊目標策略操作列的啟用。
在啟用彈性策略對話框,單擊確認,啟用該策略。
當該策略的狀態切換至已啟用時,表明策略啟用成功。
驗證彈性伸縮策略
啟用彈性策略后,SAE會自動監控應用狀態,當滿足觸發條件時,SAE依據彈性策略進行應用實例擴容或縮容。您可以通過以下步驟驗證彈性伸縮策略是否生效。
登錄SAE控制臺。
在左側導航欄,單擊應用列表,在頂部菜單欄,選擇地域,然后在應用列表頁面,找到目標應用。
可以在彈性策略啟用狀態和當前實例數/目標實例數列查看彈性策略的運行狀態;也可以單擊目標名稱,在基本信息頁簽的應用信息區域,查看應用運行實例數。
如果運行實例數與彈性策略設置的實例數一致,說明彈性策略已生效。
可選:在左側導航欄,單擊應用事件,在全部來源類型下拉列表,選擇自動彈性(HorizontalPodAutoscaler),查看彈性伸縮原因。
更多操作
為應用配置彈性伸縮策略后,您可以在實例部署信息頁簽,查看已配置策略的詳細信息。
登錄SAE控制臺。
在左側導航欄,選擇 ,在頂部菜單欄選擇地域,然后單擊具體應用名稱。
在基本信息頁面,單擊實例部署信息頁簽,展開彈性伸縮折疊區域,然后在指定策略的操作列,按需進行啟停、編輯、刪除等操作。