可以使用 適用於 vSphere 的 Velero 外掛程式 備份和還原在 Tanzu Kubernetes 叢集上執行的工作負載,方法是在該叢集上安裝 適用於 vSphere 的 Velero 外掛程式。
概觀
必要條件:在主管叢集上安裝 適用於 vSphere 的 Velero 外掛程式
在 Tanzu Kubernetes 叢集上安裝 適用於 vSphere 的 Velero 外掛程式 需要主管叢集已安裝 適用於 vSphere 的 Velero 外掛程式。此外,必須為主管叢集設定 NSX-T 網路。
在 Tanzu Kubernetes 叢集上安裝 適用於 vSphere 的 Velero 外掛程式 之前,您必須先在主管叢集上安裝 適用於 vSphere 的 Velero 外掛程式。請參閱在 主管叢集 上安裝和設定 適用於 vSphere 的 Velero 外掛程式。
在 Linux Workstation 上安裝 Velero CLI
Velero CLI 是與 Velero 連接的標準工具。Velero CLI 比 適用於 vSphere 的 Velero 外掛程式 CLI (velero-vsphere
) 提供更多的功能,並且對於備份和還原 Tanzu Kubernetes 叢集工作負載是必要的。
在 Linux Workstation 上安裝 Velero CLI理想情況下,這也是針對 vSphere with Tanzu 環境執行相關聯 CLI 的同一跳轉主機,包括 kubectl
、kubectl-vsphere
和 velero-vsphere
。
- 從 VMware 產品下載頁面下載支援版本的 Velero CLI。如需有關支援的 Velero 版本的詳細資訊,請參閱版本說明。
- 開啟命令列,並將目錄變更為 Velero CLI 下載。
gunzip velero-linux-v1.x.x_vmware.1.gz
- 檢查 Velero 二進位檔案。
ls -l -rw-r--r-- 1 root root 7142128 Aug 14 14:14 velero-linux-v1.x.x_vmware.1
- 將執行權限授與 Velero CLI。
chmod +x velero-linux-v1.x.x_vmware.1
- 將 Velero CLI 移至系統路徑以使其全域可用。
cp velero-linux-v1.x.x_vmware.1 /usr/local/bin/velero
- 確認已安裝 Velero CLI。
velero version Client: Version: v1.x.x
取得與 S3 相容的值區詳細資料
為了方便起見,這些步驟假設您使用的是在主管叢集上安裝 適用於 vSphere 的 Velero 外掛程式 時所設定的 S3 相容物件存放區。在生產期間,您可能想要建立單獨的物件存放區。
資料項目 | 範例值 |
---|---|
s3Url | http://my-s3-store.example.com |
aws_access_key_id | ACCESS-KEY-ID-STRING |
aws_secret_access_key | SECRET-ACCESS-KEY-STRING |
s3-credentials
。安裝
適用於 vSphere 的 Velero 外掛程式 時,將參考此檔案。
aws_access_key_id = ACCESS-KEY-ID-STRING aws_secret_access_key = SECRET-ACCESS-KEY-STRING
在 Tanzu Kubernetes 叢集上安裝 適用於 vSphere 的 Velero 外掛程式
您將使用 Velero CLI 在要備份和還原的目標 Tanzu Kubernetes 叢集上安裝 適用於 vSphere 的 Velero 外掛程式。
kubectl
內容。執行 Velero CLI 命令在目標叢集上安裝 Velero 和
適用於 vSphere 的 Velero 外掛程式 之前,請務必將
kubectl
內容設定為目標叢集。
- 使用 kubectl 適用的 vSphere 外掛程式 對 主管叢集 進行驗證。請參閱以 vCenter Single Sign-On 使用者身分連線至 主管叢集。
- 將
kubectl
內容設定為目標 Tanzu Kubernetes 叢集。kubectl config use-context TARGET-TANZU-KUBERNETES-CLUSTER
- 執行下列 Velero CLI 命令,以在目標叢集上安裝 Velero。
將 BUCKET-NAME、REGION (兩個執行個體) 和 s3Url 欄位的預留位置值取代為適當的值。如果您未遵循上述任何指示,請同時調整這些值,例如密碼檔案的名稱或位置、手動建立的
velero
命名空間的名稱等。./velero install --provider aws \ --bucket BUCKET-NAME \ --secret-file ./s3-credentials \ --features=EnableVSphereItemActionPlugin \ --plugins velero/velero-plugin-for-aws:v1.1.0 \ --snapshot-location-config region=REGION \ --backup-location-config region=REGION,s3ForcePathStyle="true",s3Url=http://my-s3-store.example.com
- 在目標叢集上安裝 適用於 vSphere 的 Velero 外掛程式。已安裝的 Velero 將與 Kubernetes API 伺服器進行通訊,以安裝外掛程式。
velero plugin add vsphereveleroplugin/velero-plugin-for-vsphere:1.1.0
從叢集中解除安裝 適用於 vSphere 的 Velero 外掛程式
- 將
kubectl
內容設定為目標 Tanzu Kubernetes 叢集。kubectl config use-context TARGET-TANZU-KUBERNETES-CLUSTER
- 若要解除安裝外掛程式,請執行下列命令,以從 Velero 部署中移除 velero-plugin-for-vsphere 的 InitContainer。
velero plugin remove vsphereveleroplugin/velero-plugin-for-vsphere:1.1.0
- 若要完成解除安裝,請刪除備份驅動程式部署及相關 CRD。
kubectl -n velero delete deployment.apps/backup-driver
kubectl delete crds \ backuprepositories.backupdriver.cnsdp.vmware.com \ backuprepositoryclaims.backupdriver.cnsdp.vmware.com \ clonefromsnapshots.backupdriver.cnsdp.vmware.com \ deletesnapshots.backupdriver.cnsdp.vmware.com \ snapshots.backupdriver.cnsdp.vmware.com
kubectl delete crds uploads.datamover.cnsdp.vmware.com downloads.datamover.cnsdp.vmware.com