備份中心可用于解決Kubernetes集群內的應用備份與恢復,實現集群的備份容災能力。
使用限制
備份應用時,正在被刪除的資源不會被備份。
備份中心功能僅支持v1.16及以上版本的集群使用,如果集群版本過低,請升級ACK集群K8s版本。
其中,云盤數據備份默認使用ECS快照功能,該功能僅支持v1.18及以上版本的CSI集群使用,否則將改用云備份服務備份。
前提條件
已安裝備份服務組件并完成對應權限的配置。具體操作,請參見安裝migrate-controller備份服務組件并配置權限。
如需使用云盤快照備份數據卷,需要安裝v1.1.0或以上版本的CSI插件。關于如何安裝CSI插件,請參見安裝與升級CSI組件。
如需恢復為容器網絡文件系統管理的NAS類型(即恢復時轉換為存儲類列選擇為alibabacloud-cnfs-nas),您需要先創建StorageClass。具體操作,請參見通過CNFS管理NAS文件系統(推薦)。
計費說明
備份中心功能本身不收費,使用備份中心時,可能用到以下相關服務,您需要支付相關的存儲費用。
步驟一:創建備份倉庫
當前應用備份功能使用阿里云OSS對備份數據進行存儲。若創建備份任務時無可用的備份倉庫,則需執行該步驟。
在您集群所在的地域只需要創建一次備份倉庫,您可以在同一地域的不同集群使用同一個備份倉庫。
已創建過的備份倉庫不支持更新,只能被刪除。若您在刪除備份倉庫后,重新創建了同名的備份倉庫,此新建的同名備份倉庫在現有已使用過備份的集群中也無法生效。
登錄容器服務管理控制臺,在左側導航欄選擇 。
在備份中心頁面,單擊創建備份倉庫。
在創建備份倉庫面板,配置參數,然后單擊確定。
配置項
說明
備份倉庫名稱
備份倉庫的名稱,支持小寫字母和數字。
OSS Bucket 區域
OSS Bucket所在地域。
OSS Bucket 名稱
OSS Bucket的名稱。
若為ACK托管版集群,您需要提前創建OSS Bucket,且OSS Bucket的名稱須以cnfs-oss****開頭。
OSS Bucket 子目錄
OSS Bucket的子目錄(非必填)。
可見范圍
備份倉庫對其他用戶的可見性,可選項:
私有(Private):主賬號及創建者可見。
公共(Public):主賬號及所有子賬號可見。
步驟二:創建備份計劃或立即備份
創建備份計劃:將按照設置的備份周期,周期性地創建備份任務,直到該備份計劃被刪除。創建時間由備份周期決定,例如,每隔一段時間,或每天、每周、每月等特定的某個時間。
立即備份:創建單個備份任務,創建時間為當前時間。
創建備份計劃或立即備份都將在集群中下發備份任務,任務的狀態將會被記錄在備份記錄頁簽。
創建備份計劃
在集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇 。
系統會自動檢測是否安裝備份服務組件,如未安裝,請根據界面提示,依次完成備份服務組件的安裝。若您的集群為注冊集群或專有版集群,還需要完成權限配置。具體操作,請參見安裝migrate-controller備份服務組件并配置權限。
在應用備份頁面,單擊創建備份計劃,在彈出的創建備份計劃面板中,設置備份應用的相關參數,然后單擊確定。
說明備份計劃名稱僅支持小寫字母和數字,不能有空格。
備份命名空間可選擇多個。
如果指定標簽備份,僅支持輸入一個標簽。
備份存儲卷時,云盤快照集成了阿里云云盤快照技術,阿里云云備份(Cloud Backup)是一種高效、安全、低成本的全托管式云備份存儲服務。
備份計劃中備份周期的表達式,支持Linux Crontab以及按照間隔備份。
配置項
說明
名稱
備份計劃的名稱,必填項。
備份倉庫
需要關聯的備份倉庫,必填項。
命名空間選擇方式
包含:表示備份備份命名空間中選擇的命名空間中的應用,當選中的命名空間刪除時,備份時會跳過。
排除:表示備份除備份命名空間中選擇的命名空間外的其他命名空間,當有新的命名空間創建時,同樣會被備份。
說明僅創建備份計劃時支持命名空間選擇方式,立即備份默認為包含。
備份命名空間
支持選中一個或者多個備份命名空間。表示備份選中的一個或多個命名空間中的應用,必填項。
說明kube-system、kube-publish、kube-node-lease、csdr命名空間與集群強依賴,不建議直接進行備份恢復。因此,不支持備份這四個命名空間。
備份周期
支持Crontab表達式,僅在創建備份計劃時需要填寫備份周期。關于如何填寫,請參見創建備份計劃時,備份周期如何填寫。
備份存儲卷
是否備份應用使用的存儲卷中的數據。
當選中備份存儲卷時,當前的數據將備份在ECS快照或云備份中。
云盤類型存儲卷:默認通過ECS快照進行備份;
其他類型的存儲卷,通過云備份服務進行備份。
恢復時,將從ECS快照或云備份服務中獲取備份的數據,恢復至新的云盤等底層存儲中。
重要若不勾選備份存儲卷,且未通過排除資源排除存儲聲明、存儲卷時,備份記錄僅包含對應的YAML,而不包含存儲的數據。YAML中記錄了云盤ID、NAS Server等存儲底層信息?;謴蜁r,將通過靜態方式按照YAML恢復存儲聲明、存儲卷。
指定標簽備份
需要備份的應用標簽,用于指定備份帶有該標簽的應用。
指定資源
支持填寫多個資源對象名稱,多個資源對象名稱以英文半角逗號(,)間隔,例如
deploy, configmap
等。指定資源后可以只備份特定資源。排除資源
支持填寫多個資源對象名稱,多個資源對象名稱以英文半角逗號(,)間隔,例如
pod, secret
等。表示排除備份選中的資源對象應用。備份有效期
備份的數據存儲有效期,過期之后數據將無法恢復。取值范圍:1~65536,單位為天。
更多操作
在應用備份的備份計劃頁簽,您可以單擊目標備份計劃右側操作列下的查看備份記錄,查看自動創建的備份記錄狀態,若狀態列顯示為Completed,表示該任務備份成功。
在應用備份的備份計劃頁簽,您可以單擊目標備份計劃右側操作列下的編輯,修改備份命名空間、備份周期等相關配置。
立即備份
在集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇 。
系統會自動檢測是否安裝備份服務組件,如未安裝,請根據界面提示,依次完成備份服務組件的安裝。若您的集群為注冊集群或專有版集群,還需要完成權限配置。具體操作,請參見安裝migrate-controller備份服務組件并配置權限。
在應用備份頁面,單擊立即備份,在彈出的立即備份面板中,設置備份應用的相關參數,然后單擊確定。
說明立即備份僅支持小寫字母和數字,不能有空格。
備份命名空間可選擇多個。
如果指定標簽備份,僅支持輸入一個標簽。
備份存儲卷時,云盤快照集成了阿里云云盤快照技術,阿里云云備份(Cloud Backup)是一種高效、安全、低成本的全托管式云備份存儲服務。
配置項
說明
名稱
立即備份的名稱,必填項。
備份倉庫
需要關聯的備份倉庫,必填項。
備份命名空間
支持選中一個或者多個備份命名空間。表示備份選中的一個或多個命名空間中的應用,必填項。
說明kube-system、kube-publish、kube-node-lease、csdr命名空間與集群強依賴,不建議直接進行備份恢復。因此,不支持備份這四個命名空間。
備份存儲卷
是否備份應用使用的存儲卷中的數據。
當選中備份存儲卷時,當前的數據將備份在ECS快照或云備份中。
云盤類型存儲卷:默認通過ECS快照進行備份;
其他類型的存儲卷,通過云備份服務進行備份。
恢復時,將從ECS快照或云備份服務中獲取備份的數據,恢復至新的云盤等底層存儲中。
重要若不勾選備份存儲卷,且未通過排除資源排除存儲聲明、存儲卷時,備份記錄僅包含對應的YAML,而不包含存儲的數據。YAML中記錄了云盤ID、NAS Server等存儲底層信息?;謴蜁r,將通過靜態方式按照YAML恢復存儲聲明、存儲卷。
指定標簽備份
需要備份的應用標簽,用于指定備份帶有該標簽的應用。
指定資源
支持填寫多個資源對象名稱,多個資源對象名稱以英文半角逗號(,)間隔,例如
deploy, configmap
等。指定資源后可以只備份特定資源。排除資源
支持填寫多個資源對象名稱,多個資源對象名稱以英文半角逗號(,)間隔,例如
pod, secret
等。表示排除備份選中的資源對象應用。備份有效期
備份的數據存儲有效期,過期之后數據將無法恢復。取值范圍:1~65536,單位為天。
更多操作
在應用備份的備份記錄頁簽,創建的備份記錄狀態列顯示Completed,表示該任務備份成功。
您可以在目標備份記錄右側的操作列,單擊拷貝創建,以基于已有備份記錄快速立即備份。
步驟三:恢復應用和數據卷
恢復應用時,僅恢復當前集群中不存在的資源,對于已存在的資源不會覆蓋。如需恢復到之前的版本,則需要刪除現有資源,然后再進行恢復。
在應用備份頁面,單擊立即恢復。
在彈出的立即恢復面板中,設置恢復應用的相關參數,然后單擊確定。
配置項
說明
名稱
恢復任務的名稱,僅支持小寫字母和數字。
備份倉庫
備份文件所在的倉庫。
選擇備份倉庫后,請單擊初始化倉庫,將恢復集群和指定的備份中心進行關聯。每個備份倉庫只需要關聯一次。倉庫初始化完成后,您可以選擇備份倉庫中指定的備份進行恢復。
選擇備份
備份文件。
恢復命名空間
支持選中一個或者多個已備份的命名空間。表示恢復選中的一個或多個命名空間中的應用。為空則表示全量恢復備份。
說明若備份中包含集群級別的資源需要恢復,請保持空值。
重定義命名空間
若需要修改備份數據的命名空間,請單擊添加,選擇數據所屬的命名空間,在冒號后設置恢復后數據所屬的命名空間。
重定義鏡像倉庫地址
若需要修改備份工作負載所用鏡像的鏡像倉庫地址,請單擊添加,在左側欄填寫需要修改的鏡像倉庫地址,并在冒號后設置恢復后的鏡像倉庫地址。例如
docker.io/library : registry.cn-hangzhou.aliyuncs.com/xxx
更多詳情,請參見恢復時如何調整備份中應用使用的鏡像?
存儲類轉換
即原來的制作快照功能,對勾選了備份存儲卷的備份,支持變更存儲卷聲明的存儲類。例如,原本為NAS存儲卷,選擇alicloud-disk存儲類后,恢復的應用將使用云盤存儲原數據。
重要僅支持變更FileSystem類型(即使用云備份服務備份的非云盤類型)數據的存儲類。
對于ReadWriteMany類型的存儲卷,暫不支持恢復為云盤類型;對于ReadOnlyMany類型的存儲卷,恢復為云盤類型時,需由業務保證不會被多個節點上的副本同時掛載,以避免強制拔盤。
驗證相關的有狀態應用或無狀態應用,存儲卷和服務可以正常啟動和正常訪問。
在恢復集群中的集群管理頁左側導航欄選擇
。在目標應用右側操作列單擊詳情。
在容器組頁簽下,確認目標應用的狀態為Running。
在集群管理頁左側導航欄中,選擇
。在存儲聲明頁面可以查看已恢復的存儲聲明。
在集群管理頁左側導航欄中,選擇
。在服務頁面單擊目標的外部端點,確認是否可以訪問。
相關文檔
如果需要實現跨存儲插件、跨版本集群間的應用遷移,請參見通過備份中心實現低版本Kubernetes集群應用遷移。
如果需要實現同一地域集群的應用遷移,請參見同地域跨集群遷移應用。
如果需要實現跨地域集群的應用遷移,請參見跨地域跨集群遷移應用。
如果需要通過kubectl命令行實現集群應用的遷移,請參見通過kubectl實現集群應用的備份和恢復。