如果您的應用有多個應用執行個體且需要升級,那麼您可以按需通過灰階或分批發布方式升級應用執行個體版本。本文介紹什麼是分批發布,以及如何為應用配置分批發布和復原。
前提條件
應用執行個體數大於1。
背景資訊
分批發布按批次進行應用部署,每次僅對應用的一部分執行個體進行升級。分批發布過程中如果出現故障,則可以及時終止並回退,待問題修複後重新發布。
應用進行分批發布時,應用內的執行個體數會平均分配到每個批次進行部署,即按相同的節點數量分為多次發布,並且您可以在每個批次之間選擇手動或自動審核。如果無法平均分配,則靠前的批次分配到的執行個體數少,靠後的批次分配到的執行個體數多。
只有當應用的執行個體數量大於1時才能使用分批發布。如果您通過IntelliJ IDEA,以輸入命令列的方式來分批發布只有1個執行個體的應用,會導致系統報錯。
情境樣本
某應用程式套件含10個應用執行個體,每個應用執行個體的部署版本為Ver.1版本,現需將每個應用執行個體升級為Ver.2版本。假設將所有應用執行個體分3批進行部署,分批發布流程。
操作步驟
重新部署應用後,該應用將會被重啟。為避免業務中斷等不可預知的錯誤,請在業務低峰期執行部署操作。
在SAE應用列表中,在頂部選擇目標地區和命名空間,點擊目標應用ID跳轉到應用詳情頁。
在目標應用的基礎資訊頁面,單擊部署應用。
配置部署參數。
說明部署方式由應用首次部署方式決定,請根據所需的部署方式設定參數。
WAR包部署:重新上傳WAR包或者輸入新部署WAR包的地址,並完成相關環境和參數設定。
JAR包部署:重新上傳JAR包或者輸入新部署JAR包的地址,並完成相關環境和參數設定。
ZIP包部署:重新上傳ZIP包或者輸入新部署ZIP包的地址,並完成相關環境和參數設定。
鏡像:在配置鏡像地區,單擊修改鏡像,在修改鏡像面板,重新選擇鏡像倉庫或鏡像版本。
在發布原則設定地區,配置分批發布。
配置項
說明
發布策略
選擇分批發布。
發布批次
設定應用執行個體發布的批次。
批次內部署間隔
每一批內,如果應用執行個體數大於1,應用執行個體間的部署時間間隔。單位為秒。
最大峰值
對應K8s中MaxSurge參數,用來指定可以建立的超出期望執行個體數的執行個體數量。
重要此功能目前處於邀約測試階段。如果您想使用此功能,請在DingTalk群(群號:32874633)聯絡相關技術人員開通。
說明若最小存活執行個體數為 100%(即MaxUnavailable為0),則最大峰值不能為0。
以百分比計算時需向上取整。例如設定為25%,如果當前為5個執行個體,則最大峰值為2。
最小存活執行個體數
每次滾動升級的最小存活執行個體數。
說明最小存活執行個體數建議≥1,保證業務不中斷。如果設定為0,應用在升級過程中將會中斷業務。
以百分比計算時需向上取整。例如設定為25%,如果當前為5個執行個體,則最小存活執行個體數為2。
配置完成後,單擊確定。
通過以下方式驗證配置是否生效。
方式一:在應用的變更記錄頁面,查看應用變更詳情與發布狀態。如果所有批次都執行成功,則說明應用程式更新成功。
方式二:在應用基礎資訊頁面的執行個體列表頁簽,查看執行個體的運行狀態。如果執行狀態顯示為Running,表示應用部署成功。
應用復原
採用灰階發布或者分批發布方式升級應用執行個體時,如果應用執行個體中存在未完成升級的執行個體,則當前應用升級狀態處於進行中。
在即時跟蹤應用升級時,如果首批應用執行個體升級突發異常停止回應,為了保證業務不受影響,請在變更詳情頁面中單擊立即復原,將已升級的執行個體回退至升級前版本,並將配置還原為升級前原有配置。
在應用變更過程中,如果出現部署套件不可用、健全狀態檢查失敗等變更流程異常情況,將導致應用升級失敗,SAE將停止當前應用並進行回退。
在SAE上進行應用升級耗時約為30分鐘,超出該時間後SAE將上報逾時異常並暫停變更流程,請在變更詳情頁面手動終止發布流程並復原應用。
更多資訊
SAE部署應用完成後,您可以對應用進行如下操作。
操作 | 相關文檔 |
更新、擴縮容、啟停、刪除應用等生命週期管理的操作 | |
自動Auto Scaling、CLB綁定和批量啟停等提升應用效能的操作 | |
日誌管理、監控管理、應用事件查看和變更記錄查看等聚焦應用運行狀態的操作 |