當您準備修改伸縮組中的伸縮配置或鏡像,并希望應用這些更改時,可以利用實例刷新功能。伸縮組會基于新的伸縮配置或鏡像來創建新實例,逐步替換原有的舊實例,以實現滾動更新伸縮組中正在運行的實例,確保服務實例平滑升級。
功能介紹
在您需要滾動更新伸縮組的實例配置和實例鏡像時,可以通過實例刷新功能實現。在啟用實例刷新任務后,伸縮組會自動根據您指定的期望配置,創建新實例逐步取代舊實例,實現平滑版本迭代。該功能有以下特點:
滾動更新:該功能通過創建新的實例,釋放舊的實例,實現滾動更新。
與伸縮組滾動升級功能的區別:在使用滾動升級更新實例鏡像時,不會釋放實例,而是分批更換實例的鏡像。
允許伸縮組中實例數暫時超過或低于期望實例數量:伸縮組在執行實例刷新任務時,伸縮組允許組內實例數暫時超過或低于期望實例數,您可以根據需求,自行控制允許超過或低于限制的百分比。
不影響伸縮活動:在實例刷新任務執行期間,伸縮活動可照常進行,其中,在觸發擴容時,伸縮組會以實例刷新任務中指定的伸縮配置或鏡像創建實例,保證伸縮組中實例的一致性。
與滾動升級的區別:在執行滾動升級任務期間,伸縮組會暫停擴縮容流程。
不影響服務中的實例:在實例刷新功能執行期間,不會將實例轉為備用狀態,而是在新實例創建完成后釋放,實現更加平滑的過渡。
自動修改伸縮配置:在實例刷新任務執行完成后,會自動選用期望配置為伸縮組中生效的伸縮配置,或直接修改生效配置中的鏡像。
使用限制
僅ECS類型伸縮組支持實例刷新功能。
實例回收模式為停機回收模式或強制停機回收模式的伸縮組不支持該功能。
當伸縮組中正在生效的伸縮配置中開啟了“使用vCPU個數計算伸縮組容量”這一選項時,不支持實例刷新功能,同時,不支持期望配置開啟“使用vCPU個數計算伸縮組容量”這一選項。
功能使用流程
場景一:僅需更新伸縮組中實例的鏡像
當您僅需更新業務服務程序或者實例內部某些配置時,您可以參考以下流程實現。
準備新的實例鏡像。
首先,您需要準備包含您修改后實例的鏡像,執行實例刷新時會使用該鏡像創建新實例。創建自定義鏡像,請參見使用實例創建自定義鏡像。
啟動實例刷新任務。
需在啟動實例刷新任務時,指定期望鏡像以及以何種方式滾動更新伸縮組中的實例。具體操作步驟與配置項說明,請參見啟動實例刷新任務。
監控實例刷新任務。
在實例刷新任務執行期間,您可以持續關注任務執行的狀態,在必要時可以采用暫停、取消、回滾等操作。具體操作,請參見實例刷新操作指引。
場景二:更新伸縮組中的實例使用的伸縮配置
如果您需要更新伸縮配置中的某些選項并期望在伸縮組中的實例中生效,您可以參考以下流程實現。
創建新的伸縮配置。
首先,您需要準備一個新的伸縮配置,執行實例刷新任務期間,會通過該配置創建新實例。創建伸縮配置,請參見創建伸縮配置(ECS實例)。
創建新的伸縮配置的目的:在創建實例刷新任務時,伸縮組會篩選出沒有使用目標伸縮配置的實例進行刷新,因此,通過先修改伸縮配置再刷新的方式,可能會造成無法刷新實例的情況。若在刷新完成后出現意料之外情況時,更清晰的配置版本可以幫助您快速找到上一個可用配置并恢復。
啟動實例刷新任務。
需在啟動實例刷新任務時,指定期望伸縮配置以及以何種方式滾動更新伸縮組中的實例。具體操作步驟與配置項說明,請參見啟動實例刷新任務。
監控實例刷新任務。
在實例刷新任務執行期間,您可以持續關注任務執行的狀態,在必要時可以采用暫停、取消、回滾等操作。具體操作,請參見實例刷新操作指引。
實例刷新操作指引
操作入口:進入實例刷新功能頁面
實例刷新的功能集中在伸縮組的實例刷新頁面,您可以參考以下步驟進入該頁面。
登錄彈性伸縮控制臺。
在左側導航欄中單擊伸縮組管理。
在頂部菜單欄處,選擇地域。
在伸縮組管理頁,找到待操作伸縮組,單擊伸縮組名稱進入伸縮組詳細頁面。
單擊實例刷新頁簽,進入實例刷新功能頁。
啟動實例刷新任務
伸縮組同時刻只能有一個正在運行中的實例刷新任務。
實例刷新任務執行期間無法修改伸縮組生效的伸縮配置。
在實例刷新功能頁面,單擊實例刷新按鈕,彈出實例刷新配置頁面。
在實例刷新配置頁面,根據界面提示,完成容量策略配置和期望配置。
該策略主要需要關注兩個配置項:
:代表實例刷新期間,保持伸縮組中正常提供服務的容量占伸縮組容量的比例。
:實例刷新期間,伸縮組中實例可以超出伸縮組容量的比例。
您可以根據您的需求,參考下面的場景進行配置。
優先保證可用性
可以選擇先創建新實例,再釋放舊實例,使用此選項,在執行實例刷新任務時,會先啟動新實例,待實例準備就緒后,釋放舊實例。您可以設置最大值,控制創建實例的速率與批次,同時控制額外的成本。
例如需要分兩批更新,每批更新一半的實例,可設置最大值為150,表示最多可以先創建超出伸縮組期望容量50%的實例,當這批實例準備就緒時,會在釋放舊實例,直至伸縮組中運行的實例數滿足期望實例數。您可以在當前伸縮組容量預估中預覽臨時最小、最大健康實例數。
優先考慮成本
可以選擇釋放舊實例的同時,創建新實例,使用此選項,在執行實例刷新任務時,釋放舊實例和創建新實例會同時進行。您可以設置最小值,控制最小可用的實例數。
平衡可用性與成本
選擇使用自定義策略,可以同時指定最小值和最大值,實現根據您的需求,平衡成本和可用性。
檢查配置后,單擊啟動實例刷新按鈕,實例刷新任務開始執行。
暫停/恢復實例刷新任務
如果您在實例刷新任務執行期間發現問題,您可以暫停實例刷新任務,排查問題,確認是否繼續進行實例刷新任務。暫停/恢復操作的位置如圖所示。
如果在暫停實例刷新任務之前,新創建的實例已經開始進行初始化或者加入伸縮組,暫停時實例會繼續進行初始化和加入伸縮組。
暫停實例刷新任務
恢復實例刷新任務
回滾實例刷新任務
如果您在實例刷新任務執行期間發現問題,您可以直接回滾到之前使用的伸縮配置或鏡像。回滾實例刷新任務的操作位置如圖所示。
取消實例刷新任務
除了回滾之外,您可以取消正在進行實例刷新任務。取消實例刷新任務的操作位置如圖所示。
與回滾不同,任務取消后,會保留已經完成替換和擴容的新實例。