備份中心可用於解決Kubernetes叢集內的應用備份與恢複,實現叢集的備份容災能力。
使用限制
備份應用時,正在被刪除的資源不會被備份。
備份中心功能僅支援v1.16及以上版本的叢集使用,如果叢集版本過低,請升級ACK叢集K8s版本。
其中,雲端硬碟資料備份預設使用ECS快照功能,該功能僅支援v1.18及以上版本的CSI叢集使用,否則將改用Cloud Backup服務備份。
前提條件
已安裝備份服務元件並完成對應許可權的配置。具體操作,請參見安裝migrate-controller備份服務元件並配置許可權。
如需使用雲端硬碟快照備份資料卷,需要安裝v1.1.0或以上版本的CSI外掛程式。關於如何安裝CSI外掛程式,請參見安裝與升級CSI組件。
如需恢複為容器網路檔案系統管理的NAS類型(即恢複時轉換為儲存類列選擇為alibabacloud-cnfs-nas),您需要先建立StorageClass。具體操作,請參見通過CNFS管理NAS檔案系統(推薦)。
計費說明
備份中心功能本身不收費,使用備份中心時,可能用到以下相關服務,您需要支付相關的儲存費用。
Object Storage Service:OSS Bucket用於儲存備份的叢集資源(即相關YAML)。OSS相關計費請參見計費概述。
雲端硬碟快照:用於備份阿里雲雲端硬碟儲存卷資料。快照計費請參見快照計費。
說明自2023年10月12日11:00起,阿里雲ECS雲端硬碟不再收取快照極速可用儲存費和快照極速可用功能費,更多資訊,請參見快照極速可用能力。
使用PL0、PL1、PL2、PL3層級的ESSD雲端硬碟或ESSD AutoPL雲端硬碟時,在備份時建立的快照預設開啟快照極速可用功能。
雲備份:用於備份其他類型(除雲端硬碟外)的儲存卷資料。雲備份側會建立容器備份庫,收取備份儲存容量費。更多資訊,請參見價格詳情。
步驟一:建立備份倉庫
當前應用備份功能使用阿里雲OSS對備份資料進行儲存。若建立備份任務時無可用的備份倉庫,則需執行該步驟。
在您叢集所在的地區只需要建立一次備份倉庫,您可以在同一地區的不同叢集使用同一個備份倉庫。
已建立過的備份倉庫不支援更新,只能被刪除。若您在刪除備份倉庫後,重新建立了同名的備份倉庫,此建立的同名備份倉庫在現有已使用過備份的叢集中也無法生效。
登入Container Service管理主控台,在左側導覽列選擇 。
在備份中心頁面,單擊建立備份倉庫。
在建立備份倉庫面板,配置參數,然後單擊確定。
配置項
說明
備份倉庫名稱
備份倉庫的名稱,支援小寫字母和數字。
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等儲存底層資訊。恢複時,將通過靜態方式按照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等儲存底層資訊。恢複時,將通過靜態方式按照YAML恢複儲存聲明、儲存卷。
指定標籤備份
需要備份的應用標籤,用於指定備份帶有該標籤的應用。
指定資源
支援填寫多個資來源物件名稱,多個資來源物件名稱以英文半形逗號(,)間隔,例如
deploy, configmap
等。指定資源後可以只備份特定資源。排除資源
支援填寫多個資來源物件名稱,多個資來源物件名稱以英文半形逗號(,)間隔,例如
pod, secret
等。表示排除備份選中的資來源物件應用。備份有效期間
備份的資料存放區有效期間,到期之後資料將無法恢複。取值範圍:1~65536,單位為天。
更多操作
在應用備份的備份記錄頁簽,建立的備份記錄狀態列顯示Completed,表示該任務備份成功。
您可以在目標備份記錄右側的操作列,單擊拷貝建立,可以基於已有備份記錄快速立即備份。
步驟三:恢複應用和資料卷
恢複應用時,僅恢複當前叢集中不存在的資源,對於已存在的資源不會覆蓋。如需恢複到之前的版本,則需要刪除現有資源,然後再進行恢複。
在應用備份頁面,單擊立即恢複。
在彈出的立即恢複面板中,設定恢複應用的相關參數,然後單擊確定。
配置項
說明
名稱
恢複任務的名稱,僅支援小寫字母和數字。
備份倉庫
備份檔案所在的倉庫。
選擇備份倉庫後,請單擊初始化倉庫,將恢複叢集和指定的備份中心進行關聯。每個備份倉庫只需要關聯一次。倉庫初始化完成後,您可以選擇備份倉庫中指定的備份進行恢複。
選擇備份
備份檔案。
重定義命名空間
若需要修改備份資料的命名空間,請單擊添加,選擇資料所屬的命名空間,在冒號後設定恢複後資料所屬的命名空間。
儲存類轉換
即原來的製作快照功能,對勾選了備份儲存卷的備份,支援變更儲存卷聲明的儲存類。例如,原本為NAS儲存卷,選擇alicloud-disk儲存類後,恢複的應用將使用雲端硬碟儲存原資料。
重要僅支援變更FileSystem類型(即使用雲備份雲備份服務備份的非雲端硬碟類型)資料的儲存類。
對於ReadWriteMany類型的儲存卷,暫不支援恢複為雲端硬碟類型;對於ReadOnlyMany類型的儲存卷,恢複為雲端硬碟類型時,需由業務保證不會被多個節點上的副本同時掛載,造成強制拔盤。
驗證相關的有狀態應用或無狀態應用,儲存卷和服務可以正常啟動和正常訪問。
在恢複叢集中的叢集管理頁左側導覽列選擇
。在目標應用右側操作列單擊詳情。
在容器組頁簽下,確認目標應用的狀態為Running。
在叢集管理頁左側導覽列中,選擇
。在儲存聲明頁面可以查看已恢複的儲存聲明。
在叢集管理頁左側導覽列中,選擇
。在服務頁面單擊目標的外部端點,確認是否可以訪問。
相關文檔
如果需要實現跨儲存外掛程式、跨版本叢集間的應用遷移,請參見通過備份中心實現低版本Kubernetes叢集應用遷移。
如果需要實現同一地區叢集的應用遷移,請參見同地區跨叢集遷移應用。
如果需要實現跨地區叢集的應用遷移,請參見跨地區跨叢集遷移應用。
如果需要通過kubectl命令列實現叢集應用的遷移,請參見通過kubectl實現叢集應用的備份和恢複。