備份、還原和災難復原
在本節中,你將學習如何建立 Rancher 的備份、如何從備份還原 Rancher,以及如何將 Rancher 遷移到新的 Kubernetes 叢集。
rancher-backup operator 用於在任何 Kubernetes 叢集上備份和還原 Rancher。此應用程式是一個 Helm chart,可以透過 Rancher 的 Apps 頁面部署,或使用 Helm CLI。rancher-backup Helm chart 在此處。
備份還原 operator 需要安裝在本機叢集中,並且僅備份 Rancher 應用程式。備份和還原操作僅在本機 Kubernetes 叢集中執行。
使用 Docker 安裝的 Rancher 的備份和還原
對於使用 Docker 安裝的 Rancher,請參閱此頁面以執行備份,以及此頁面以執行還原。
備份和還原的運作方式
rancher-backup operator 引入了三種自訂資源:Backups、Restores 和 ResourceSets。以下叢集範圍的自訂資源定義會被新增到叢集:
backups.resources.cattle.ioresourcesets.resources.cattle.iorestores.resources.cattle.io
ResourceSet 定義了需要備份哪些 Kubernetes 資源。ResourceSet 無法在 Rancher UI 中設定,因為備份 Rancher 所需的值是預先定義的。此 ResourceSet 不應被修改。
當建立 Backup 自訂資源時,rancher-backup operator 會呼叫 kube-apiserver 來取得 Backup 自訂資源所參考的 ResourceSet 中的資源。
然後 operator 會以 .tar.gz 格式建立備份檔案,並將其儲存在 Backup 資源中設定的位置。
當建立 Restore 自訂資源時,operator 會存取 Restore 指定的備份 .tar.gz 檔案,並從該檔案還原應用程式。
Backup 和 Restore 自訂資源可以在 Rancher UI 中建立,或使用 kubectl apply 建立。
有關將現有備份檔案還原到 Rancher v2.6.3 中的 v1.22 叢集的說明,請 參閱此處。
安裝 rancher-backup Operator
rancher-backup operator 可以從 Rancher UI 安裝,或使用 Helm CLI 安裝。在這兩種情況下,rancher-backup Helm chart 都會安裝在執行 Rancher 伺服器的 Kubernetes 叢集上。這是一個僅限叢集管理員的功能,並且僅適用於 local 叢集。(如果你在 Rancher UI 中看不到 rancher-backup,你可能選擇了錯誤的叢集。)
在使用 backup-restore-operator 執行還原後,Fleet 中存在一個已知問題:用於 clientSecretName 和 helmSecretName 的 Secrets 未包含在 Fleet gitrepos 中。如需因應措施,請參閱 Fleet 疑難排解。
使用 Rancher UI 安裝 rancher-backup
- 在左上角,點擊 ☰ > 叢集管理。
- 在叢集頁面上,前往
local叢集並點擊探索。 - 在左側導覽列中,點擊 Apps > Charts。
- 點擊 Rancher Backups。
- 點擊安裝。
- 選擇性:設定預設儲存位置。如需協助,請參閱設定章節。
- 點擊安裝。
結果: rancher-backup operator 已安裝。
從叢集儀表板,你可以看到 rancher-backup operator 列在部署下。
若要在 Rancher 中設定備份應用程式,請前往左側導覽選單並點擊 Rancher Backups。
RBAC
只有 rancher 管理員和本機叢集的叢集擁有者可以:
- 安裝 Chart
- 查看 Backup 和 Restore CRDs 的導覽連結
- 透過分別建立 Backup CR 和 Restore CR 來執行備份或還原
- 列出到目前為止執行的備份/還原
備份 Rancher
透過建立 Backup 自訂資源來執行備份。如需教學,請參閱此頁面。
還原 Rancher
透過建立 Restore 自訂資源來執行還原。如需教學,請參閱此頁面。
將 Rancher 遷移到新叢集
遷移可透過以下步驟執行。
預設儲存位置設定
為你的備份設定預設儲存位置。有各種設定選項,例如將 S3 相容的物件儲存指定為個別備份的位置,或在安裝 backup-restore-operator Helm chart 時選擇現有的 StorageClass。你也可以選擇在每次備份時覆寫設定的儲存位置,但僅限於使用 S3 相容或 Minio 物件儲存。
有關設定這些選項的資訊,請參閱此頁面。
範例 YAML 檔案:Rancher Backup Helm Chart
範例 values.yaml 檔案可用於在使用 Helm CLI 安裝 backup-restore-operator 時進行設定。