全部產品
Search
文件中心

Container Service for Kubernetes:叢集內備份和恢複應用

更新時間:Nov 20, 2024

備份中心可用於解決Kubernetes叢集內的應用備份與恢複,實現叢集的備份容災能力。

使用限制

  • 備份應用時,正在被刪除的資源不會被備份。

  • 備份中心功能僅支援v1.16及以上版本的叢集使用,如果叢集版本過低,請升級ACK叢集K8s版本

    其中,雲端硬碟資料備份預設使用ECS快照功能,該功能僅支援v1.18及以上版本的CSI叢集使用,否則將改用Cloud Backup服務備份。

前提條件

計費說明

備份中心功能本身不收費,使用備份中心時,可能用到以下相關服務,您需要支付相關的儲存費用。

  • Object Storage Service:OSS Bucket用於儲存備份的叢集資源(即相關YAML)。OSS相關計費請參見計費概述

  • 雲端硬碟快照:用於備份阿里雲雲端硬碟儲存卷資料。快照計費請參見快照計費

    說明
    • 自2023年10月12日11:00起,阿里雲ECS雲端硬碟不再收取快照極速可用儲存費和快照極速可用功能費,更多資訊,請參見快照極速可用能力

    • 使用PL0、PL1、PL2、PL3層級的ESSD雲端硬碟或ESSD AutoPL雲端硬碟時,在備份時建立的快照預設開啟快照極速可用功能。

  • 雲備份:用於備份其他類型(除雲端硬碟外)的儲存卷資料。雲備份側會建立容器備份庫,收取備份儲存容量費。更多資訊,請參見價格詳情

步驟一:建立備份倉庫

當前應用備份功能使用阿里雲OSS對備份資料進行儲存。若建立備份任務時無可用的備份倉庫,則需執行該步驟。

說明
  • 在您叢集所在的地區只需要建立一次備份倉庫,您可以在同一地區的不同叢集使用同一個備份倉庫。

  • 已建立過的備份倉庫不支援更新,只能被刪除。若您在刪除備份倉庫後,重新建立了同名的備份倉庫,此建立的同名備份倉庫在現有已使用過備份的叢集中也無法生效。

  1. 登入Container Service管理主控台,在左側導覽列選擇多叢集 > 備份中心

  2. 備份中心頁面,單擊建立備份倉庫

  3. 建立備份倉庫面板,配置參數,然後單擊確定

    配置項

    說明

    備份倉庫名稱

    備份倉庫的名稱,支援小寫字母和數字。

    OSS Bucket 地區

    OSS Bucket所在地區。

    OSS Bucket 名稱

    OSS Bucket的名稱。

    若為ACK託管版叢集,您需要提前建立OSS Bucket,且OSS Bucket的名稱須以cnfs-oss****開頭。

    OSS Bucket 子目錄

    OSS Bucket的子目錄(非必填)。

    可見範圍

    備份倉庫對其他使用者的可見度,可選項:

    • 私人(Private):主帳號及建立者可見

    • 公用(Public):主帳號及所有子帳號可見

步驟二:建立備份計劃或立即備份

  • 建立備份計劃:將按照設定的備份周期,周期性地建立備份任務,直到該備份計劃被刪除。建立時間由備份周期決定,例如,每隔一段時間,或每天、每周、每月等特定的某個時間。

  • 立即備份:建立單個備份任務,建立時間為目前時間。

建立備份計劃或立即備份都將在叢集中下發備份任務,任務的狀態將會被記錄在備份記錄頁簽。

建立備份計劃

  1. 叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇營運管理 > 應用備份

    系統會自動檢測是否安裝備份服務元件,如未安裝,請根據介面提示,依次完成備份服務元件的安裝。若您的叢集為註冊叢集或專有版叢集,還需要完成許可權配置。具體操作,請參見安裝migrate-controller備份服務元件並配置許可權

  2. 應用備份頁面,單擊建立備份計劃,在彈出的建立備份計劃面板中,設定備份應用的相關參數,然後單擊確定

    說明
    • 備份計劃名稱僅支援小寫字母和數字,不能有空格。

    • 備份命名空間可選擇多個。

    • 如果指定標籤備份,僅支援輸入一個標籤。

    • 備份儲存卷時,雲端硬碟快照整合了阿里雲雲端硬碟快照技術,阿里雲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,表示該任務備份成功。

應用備份備份計劃頁簽,您可以單擊目標備份計劃右側操作列下的編輯,修改備份命名空間、備份周期等相關配置。

立即備份

  1. 叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇營運管理 > 應用備份

    系統會自動檢測是否安裝備份服務元件,如未安裝,請根據介面提示,依次完成備份服務元件的安裝。若您的叢集為註冊叢集或專有版叢集,還需要完成許可權配置。具體操作,請參見安裝migrate-controller備份服務元件並配置許可權

  2. 應用備份頁面,單擊立即備份,在彈出的立即備份面板中,設定備份應用的相關參數,然後單擊確定

    說明
    • 立即備份僅支援小寫字母和數字,不能有空格。

    • 備份命名空間可選擇多個。

    • 如果指定標籤備份,僅支援輸入一個標籤。

    • 備份儲存卷時,雲端硬碟快照整合了阿里雲雲端硬碟快照技術,阿里雲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,表示該任務備份成功。

您可以在目標備份記錄右側的操作列,單擊拷貝建立,以基於已有備份記錄快速立即備份。

步驟三:恢複應用和資料卷

重要

恢複應用時,僅恢複當前叢集中不存在的資源,對於已存在的資源不會覆蓋。如需恢複到之前的版本,則需要刪除現有資源,然後再進行恢複。

  1. 應用備份頁面,單擊立即恢複

  2. 在彈出的立即恢複面板中,設定恢複應用的相關參數,然後單擊確定

    配置項

    說明

    名稱

    恢複任務的名稱,僅支援小寫字母和數字。

    備份倉庫

    備份檔案所在的倉庫。

    選擇備份倉庫後,請單擊初始化倉庫,將恢複叢集和指定的備份中心進行關聯。每個備份倉庫只需要關聯一次。倉庫初始化完成後,您可以選擇備份倉庫中指定的備份進行恢複。

    選擇備份

    備份檔案。

    恢複命名空間

    支援選中一個或者多個已備份的命名空間。表示恢複選中的一個或多個命名空間中的應用。為空白則表示全量恢複備份。

    說明

    若備份中包含叢集層級的資源需要恢複,請保持空值。

    重定義命名空間

    若需要修改備份資料的命名空間,請單擊添加,選擇資料所屬的命名空間,在冒號後設定恢複後資料所屬的命名空間。

    重定義鏡像倉庫地址

    若需要修改備份工作負載所用鏡像的鏡像倉庫地址,請單擊添加,在左側欄填寫需要修改的鏡像倉庫地址,並在冒號後設定恢複後的鏡像倉庫地址。例如

    docker.io/library : registry.cn-hangzhou.aliyuncs.com/xxx

    更多詳情,請參見恢複時如何調整備份中應用使用的鏡像?

    儲存類轉換

    即原來的製作快照功能,對勾選了備份儲存卷的備份,支援變更儲存卷聲明的儲存類。例如,原本為NAS儲存卷,選擇alicloud-disk儲存類後,恢複的應用將使用雲端硬碟儲存原資料。

    重要

    僅支援變更FileSystem類型(即使用雲備份服務備份的非雲端硬碟類型)資料的儲存類。

    對於ReadWriteMany類型的儲存卷,暫不支援恢複為雲端硬碟類型;對於ReadOnlyMany類型的儲存卷,恢複為雲端硬碟類型時,需由業務保證不會被多個節點上的副本同時掛載,以避免強制拔盤。

  3. 驗證相關的有狀態應用或無狀態應用,儲存卷和服務可以正常啟動和正常訪問。

    1. 在恢複叢集中的叢集管理頁左側導覽列選擇工作負載 > 無狀態

    2. 在目標應用右側操作列單擊詳情

      容器組頁簽下,確認目標應用的狀態為Running

    3. 在叢集管理頁左側導覽列中,選擇儲存 > 儲存聲明

      儲存聲明頁面可以查看已恢複的儲存聲明。

    4. 在叢集管理頁左側導覽列中,選擇網路 > 服務

    5. 服務頁面單擊目標的外部端點,確認是否可以訪問。

相關文檔