Jika Anda tidak dapat mengakses pusat cadangan melalui Konsol Container Service for Kubernetes (ACK) atau perlu mengotomatiskan proses disaster recovery dan backup, Anda dapat menggunakan baris perintah kubectl. Pendekatan ini memungkinkan Anda memigrasikan aplikasi antar kluster dengan menerapkan custom resources (CRs) untuk repositori backup, backup aplikasi, dan pemulihan aplikasi di kluster backup dan pemulihan.
Prasyarat
Instal komponen layanan backup migrate-controller dan konfigurasikan izin
Skenario
Anda tidak dapat menggunakan pusat cadangan dari Konsol ACK karena masalah izin.
Anda perlu mengotomatiskan proses disaster recovery dan backup.
Catatan
Anda tidak dapat menghapus pekerjaan backup dan pemulihan menggunakan perintah kubectl
delete. Untuk informasi selengkapnya, lihat Langkah 4: Hapus resource yang terkait dengan pusat cadangan.Pantau rilis baru komponen migrate-controller dan segera perbarui ke versi terbaru. Untuk informasi selengkapnya, lihat Kelola komponen.
Jangan hapus parameter konfigurasi dalam contoh berikut. Menghapus parameter ini dapat menyebabkan backup atau pemulihan gagal.
Langkah 1: Buat repositori backup
Di kedua kluster—backup dan pemulihan—buat file bernama backuplocation.yaml yang berisi konten berikut.
apiVersion: csdr.alibabacloud.com/v1beta1 kind: BackupLocation metadata: name: <yourBackuplocationName> namespace: csdr spec: backupSyncPeriod: 0s config: network: internal region: cn-beijing objectStorage: bucket: <cnfs-oss-yourBucketName> prefix: <subDir> provider: alibabacloudPertahankan konfigurasi default untuk parameter lainnya.
Parameter
Wajib
Deskripsi
name
Ya
Nama repositori backup. Nama harus mengikuti Konvensi penamaan Kubernetes.
network
Ya
Mode akses jaringan untuk Bucket Object Storage Service (OSS). Nilai yang valid:
internal: Mode akses jaringan internal. Semua kluster terkait dan Bucket OSS harus berada di Wilayah yang sama.
public: Mode akses jaringan publik. Tidak ada batasan wilayah.
region
Ya
Wilayah tempat Bucket OSS berada.
bucket
Ya
Nama Bucket OSS. Anda harus membuat bucket terlebih dahulu. Nama harus diawali dengan cnfs-oss-****.
prefix
Tidak
Subdirektori dalam Bucket OSS. Jika Anda mengatur parameter ini, konten backup akan disimpan di subdirektori tersebut.
Jalankan perintah berikut di kedua kluster—backup dan pemulihan—untuk menerapkan objek backuplocation.
kubectl apply -f backuplocation.yamlJalankan perintah berikut di kedua kluster—backup dan pemulihan—untuk memeriksa status objek backuplocation.
kubectl describe backuplocation <yourBackuplocationName> -n csdrOutput yang diharapkan:
... Status: Last Validation Time: 2022-12-08T04:00:22Z Message: success by csdr-controller Phase: AvailableOutput yang diharapkan menunjukkan bahwa status repositori backup adalah
Available. Status ini menunjukkan bahwa kluster memiliki izin yang diperlukan untuk mengakses OSS.
Langkah 2: Buat pekerjaan backup
Pilih jenis backup berdasarkan skenario Anda:
Application backup: Membuat backup layanan yang sedang Berjalan di kluster. Backup mencakup resource kluster dan volume persisten (PVs) yang digunakan oleh layanan tersebut.
Data protection: Membuat backup data PV. Backup hanya mencakup persistent volume claims (PVCs) dan PVs.
Untuk informasi selengkapnya, lihat Skenario untuk application backup dan data protection.
Application backup
Buat pekerjaan backup on-demand
Di kluster backup, buat file bernama applicationbackup.yaml yang berisi konten berikut.
apiVersion: csdr.alibabacloud.com/v1beta1 kind: ApplicationBackup metadata: annotations: csdr.alibabacloud.com/backuplocations: >- {"name":"<yourBackuplocationName>","region":"cn-beijing","bucket":"<cnfs-oss-yourBucketName>","prefix":"<subDir>","provider":"alibabacloud"}} name: <yourApplicationBackupName> namespace: csdr spec: includedNamespaces: - default includedResources: - statefulset excludedResources: - deployment labelSelector: matchLabels: app: mysql-sts includeClusterResources: false pvBackup: defaultPvBackup: false storageLocation: <yourBackuplocationName> ttl: 720h0m0sPertahankan konfigurasi default untuk parameter lainnya.
Parameter
Wajib
Deskripsi
csdr.alibabacloud.com/backuplocationsYa
Informasi tentang repositori backup tempat backup disimpan. Harus konsisten dengan konfigurasi repositori backup.
nameYa
Nama pekerjaan backup on-demand.
includedNamespacesYa
Menentukan nama namespace.
includedResourcesTidak
Menentukan tipe resource kluster.
PentingUntuk menghindari hasil backup yang tidak diinginkan, konfigurasikan hanya salah satu dari includedResources atau excludedResources. Jika keduanya kosong, semua tipe resource akan dibackup.
excludedResourcesTidak
Mengecualikan tipe resource kluster.
PentingUntuk menghindari hasil backup yang tidak diinginkan, konfigurasikan hanya salah satu dari includedResources atau excludedResources. Jika keduanya kosong, semua tipe resource akan dibackup.
matchLabelsTidak
Menentukan label. Hanya resource yang sesuai dengan label yang akan dibackup.
includeClusterResourcesTidak
Menentukan apakah akan membackup resource tingkat kluster, seperti StorageClass, CRD, dan Webhook.
true: Membackup semua resource tingkat kluster.false: Hanya membackup resource tingkat kluster yang direferensikan oleh resource tingkat namespace di namespace yang dipilih. Misalnya, saat Anda membackup pod, ServiceAccount yang direferensikan diberikan ClusterRole, dan ClusterRole tersebut secara otomatis dibackup. Saat Anda membackup CR, CRD-nya secara otomatis dibackup.
CatatanUntuk pekerjaan backup yang dibuat di Konsol Container Service for Kubernetes (ACK), bidang
IncludeClusterResourcesdiatur kefalsesecara default.defaultPvBackupMenentukan apakah akan membackup PV dan mengaktifkan backup data. Nilai yang valid:
true: Membackup aplikasi dan PV.
false: Hanya membackup aplikasi.
storageLocationYa
Nama repositori backup.
CatatanJika kluster Anda sudah menggunakan Velero, bergabunglah dengan grup DingTalk (ID: 35532895) untuk mendapatkan bantuan.
ttlYa
Periode retensi backup. Ini adalah periode penyimpanan data untuk pekerjaan backup. Setelah periode ini berakhir, data tidak dapat dipulihkan. Formatnya adalah 720h0m0s. Nilainya berkisar antara 24h0m0s hingga 1572864h0m0s.
Jalankan perintah berikut di kluster backup untuk menerapkan objek applicationbackup.
kubectl apply -f applicationbackup.yamlJalankan perintah berikut di kluster backup untuk memeriksa status pekerjaan backup on-demand.
kubectl describe applicationbackup <yourApplicationBackupName> -n csdrOutput yang diharapkan:
... Status: Completion Timestamp: 2022-12-05T15:02:35Z Expiration: 2023-01-04T15:02:25Z Message: success Phase: CompletedPekerjaan backup selesai ketika statusnya berubah dari
InprogressmenjadiCompleted.
Buat jadwal backup
Di kluster backup, buat file bernama backupschedule.yaml yang berisi konten berikut.
apiVersion: csdr.alibabacloud.com/v1beta1 kind: BackupSchedule metadata: annotations: csdr.alibabacloud.com/backuplocations: >- {"name":"<yourBackuplocationName>","region":"cn-beijing","bucket":"<cnfs-oss-yourBucketName>","prefix":"<subDir>","provider":"alibabacloud"} name: <yourBackupScheduleName> namespace: csdr spec: schedule: 1 4 * * * template: includedNamespaces: - default includedResources: - statefulset excludedResources: - deployment labelSelector: matchLabels: app: mysql-sts includeClusterResources: false pvBackup: defaultPvBackup: true storageLocation: <yourBackuplocationName> ttl: 720h0m0sPertahankan konfigurasi default untuk parameter lainnya.
Parameter
Wajib
Deskripsi
csdr.alibabacloud.com/backuplocations
Ya
Informasi tentang repositori backup tempat backup disimpan. Harus konsisten dengan konfigurasi repositori backup.
name
Ya
Nama jadwal backup.
schedule
Ya
Siklus backup. Gunakan Ekspresi cron. Untuk informasi lebih lanjut tentang aturannya, lihat Bagaimana cara menentukan siklus backup saat membuat rencana backup?.
includedNamespaces
Ya
Menentukan nama namespace.
includedResources
Tidak
Menentukan tipe resource kluster.
PentingUntuk menghindari hasil backup yang tidak diinginkan, konfigurasikan hanya salah satu dari includedResources atau excludedResources. Jika keduanya kosong, semua tipe resource akan dibackup.
excludedResources
Tidak
Mengecualikan tipe resource kluster.
PentingUntuk menghindari hasil backup yang tidak diinginkan, konfigurasikan hanya salah satu dari includedResources atau excludedResources. Jika keduanya kosong, semua tipe resource akan dibackup.
matchLabels
Tidak
Menentukan label. Hanya resource yang sesuai dengan label yang akan dibackup.
includeClusterResources
Tidak
Menentukan apakah akan membackup resource tingkat kluster, seperti StorageClass, CRD, dan Webhook.
true: Membackup semua resource tingkat kluster.false: Hanya membackup resource tingkat kluster yang direferensikan oleh resource tingkat namespace di namespace yang dipilih. Misalnya, saat Anda membackup pod, ServiceAccount yang direferensikan diberikan ClusterRole, dan ClusterRole tersebut secara otomatis dibackup. Saat Anda membackup CR, CRD-nya secara otomatis dibackup.
CatatanUntuk pekerjaan backup yang dibuat di Konsol Container Service for Kubernetes (ACK), bidang
IncludeClusterResourcesdiatur kefalsesecara default.defaultPvBackup
Ya
Menentukan apakah akan membackup PV dan mengaktifkan backup data. Nilai yang valid:
true: Membackup aplikasi dan PV.
false: Hanya membackup aplikasi.
storageLocation
Ya
Nama repositori backup.
CatatanJika kluster Anda sudah menggunakan Velero, bergabunglah dengan grup DingTalk (ID: 35532895) untuk mendapatkan bantuan.
ttl
Ya
Periode retensi backup. Ini adalah periode penyimpanan data untuk pekerjaan backup. Setelah periode ini berakhir, data tidak dapat dipulihkan. Formatnya adalah 720h0m0s. Nilainya berkisar antara 24h0m0s hingga 1572864h0m0s.
Jalankan perintah berikut di kluster backup untuk menerapkan objek backupschedule.
kubectl apply -f backupschedule.yamlJalankan perintah berikut di kluster backup untuk memeriksa status jadwal backup.
kubectl describe backupschedule <yourBackupScheduleName> -n csdrOutput yang diharapkan:
... Status: Last Backup: 2022-12-07T20:01:11Z Last Processed Time: 2022-12-08T13:05:37Z Phase: EnabledJadwal backup berhasil dibuat ketika statusnya adalah
Enabled.Jalankan perintah berikut di kluster backup untuk memeriksa backup yang dibuat secara berkala.
kubectl get applicationbackup -n csdr | grep <yourBackupScheduleName>Output yang diharapkan:
<yourBackupScheduleName>-20221205225845 2d22h <yourBackupScheduleName>-20221206040104 2d17h <yourBackupScheduleName>-20221207040137 41h <yourBackupScheduleName>-20221208040111 17h
Data protection
Buat pekerjaan backup on-demand
Di kluster backup, buat file bernama applicationbackup.yaml yang berisi konten berikut.
apiVersion: csdr.alibabacloud.com/v1beta1 kind: ApplicationBackup metadata: annotations: csdr.alibabacloud.com/backuplocations: >- {"name":"<yourBackuplocationName>","region":"cn-beijing","bucket":"<cnfs-oss-yourBucketName>","prefix":"<subDir>","provider":"alibabacloud"}} name: <yourApplicationBackupName> namespace: csdr spec: backupType: PvBackup # Fixed configuration includedNamespaces: - default pvBackup: # Specify volumes pvcList: - name: essd-pvc-0 namespace: default - name: essd-pvc-1 namespace: default # Specify volume types storageClassList: - disk-essd - disk-ssd storageLocation: <yourBackuplocationName> ttl: 720h0m0sParameter
Wajib
Deskripsi
csdr.alibabacloud.com/backuplocationsYa
Informasi tentang repositori backup tempat backup disimpan. Harus konsisten dengan konfigurasi repositori backup.
nameYa
Nama pekerjaan backup on-demand.
includedNamespacesYa
Menentukan nama namespace.
pvcListTidak
Menentukan PVC yang sesuai dengan PV yang ingin Anda backup.
nameadalah nama PVC.PentingJika Anda menentukan keduanya
pvcListdanstorageClassList, konfigurasistorageClassListtidak berlaku.Jika Anda tidak menentukan keduanya
pvcListmaupunstorageClassList, semua PV di namespace yang ditentukan akan dibackup.
storageClassListTidak
Menentukan tipe PV yang akan dibackup. Ini adalah nama StorageClass.
storageLocationYa
Nama repositori backup.
CatatanJika kluster Anda sudah menggunakan Velero, bergabunglah dengan grup DingTalk (ID: 35532895) untuk mendapatkan bantuan.
ttlYa
Periode retensi backup. Ini adalah periode penyimpanan data untuk pekerjaan backup. Setelah periode ini berakhir, data tidak dapat dipulihkan. Formatnya adalah 720h0m0s. Nilainya berkisar antara 24h0m0s hingga 1572864h0m0s.
Jalankan perintah berikut di kluster backup untuk menerapkan objek
applicationbackup.kubectl apply -f applicationbackup.yamlJalankan perintah berikut di kluster backup untuk memeriksa status pekerjaan backup on-demand.
kubectl describe applicationbackup <yourApplicationBackupName> -n csdrOutput yang diharapkan:
... Status: Completion Timestamp: 2025-03-25T08:20:24Z Expiration: 2025-04-24T08:18:03Z Message: success Phase: Completed
Buat jadwal backup
Di kluster backup, buat file bernama
backupschedule.yamlyang berisi konten berikut.apiVersion: csdr.alibabacloud.com/v1beta1 kind: BackupSchedule metadata: annotations: csdr.alibabacloud.com/backuplocations: >- {"name":"<yourBackuplocationName>","region":"cn-beijing","bucket":"<cnfs-oss-yourBucketName>","prefix":"<subDir>","provider":"alibabacloud"} name: <yourBackupScheduleName> namespace: csdr spec: schedule: 1 4 * * * template: backupType: PvBackup # Fixed includedNamespaces: - default pvBackup: # Specify volumes pvcList: - name: essd-pvc-0 namespace: default - name: essd-pvc-1 namespace: default # Specify volume types storageClassList: - disk-essd - disk-ssd storageLocation: <yourBackuplocationName> ttl: 720h0m0sParameter
Wajib
Deskripsi
csdr.alibabacloud.com/backuplocationsYa
Informasi tentang repositori backup tempat backup disimpan. Harus konsisten dengan konfigurasi repositori backup.
nameYa
Nama pekerjaan backup on-demand.
scheduleYa
Siklus backup. Gunakan Ekspresi cron. Untuk informasi lebih lanjut tentang aturannya, lihat Bagaimana cara menentukan siklus backup saat membuat rencana backup?.
includedNamespacesYa
Menentukan nama namespace.
pvcListTidak
Menentukan PVC yang sesuai dengan PV yang ingin Anda backup.
nameadalah nama PVC.PentingJika Anda menentukan keduanya
pvcListdanstorageClassList, konfigurasistorageClassListtidak berlaku.Jika Anda tidak menentukan keduanya
pvcListmaupunstorageClassList, semua PV di namespace yang ditentukan akan dibackup.
storageClassListTidak
Menentukan tipe PV yang akan dibackup. Ini adalah nama StorageClass.
storageLocationYa
Nama repositori backup.
CatatanJika kluster Anda sudah menggunakan Velero, bergabunglah dengan grup DingTalk (ID: 35532895) untuk mendapatkan bantuan.
ttlYa
Periode retensi backup. Ini adalah periode penyimpanan data untuk pekerjaan backup. Setelah periode ini berakhir, data tidak dapat dipulihkan. Formatnya adalah 720h0m0s. Nilainya berkisar antara 24h0m0s hingga 1572864h0m0s.
Jalankan perintah berikut di kluster backup untuk menerapkan objek
backupschedule.kubectl apply -f backupschedule.yamlAnda dapat menjalankan perintah berikut di kluster backup untuk memeriksa status jadwal backup.
kubectl describe backupschedule <yourBackupScheduleName> -n csdrOutput yang diharapkan:
... Status: Last Backup: 2025-03-25T09:24:38Z Phase: Enabled
Langkah 3: Buat pekerjaan pemulihan
Di kluster pemulihan, buat file bernama applicationrestore.yaml yang berisi konten berikut.
apiVersion: csdr.alibabacloud.com/v1beta1 kind: ApplicationRestore metadata: annotations: csdr.alibabacloud.com/backuplocations: >- {"name":"<yourBackuplocationName>","region":"cn-beijing","bucket":"<cnfs-oss-yourBucketName>","prefix":"<subDir>","provider":"alibabacloud"} name: <yourApplicationRestoreName> namespace: csdr spec: appRestoreOnly: false preserveNodePorts: true includedNamespaces: - default includedResources: - statefulset excludedResources: - secret convertedarg: - convertToStorageClassType: alicloud-disk-topology-alltype convertToAccessModes: - ReadWriteOnce namespace: nas persistentVolumeClaim: pvc-nas - convertToStorageClassType: alicloud-disk-topology-alltype namespace: oss persistentVolumeClaim: pvc-oss backupName: <yourApplicationBackupName> namespaceMapping: <backupNamespace>: <restoreNamespace> imageRegistryMapping: <oldImageRegistry>: <newImageRegistry>Pertahankan konfigurasi default untuk parameter lainnya.
CatatanParameter
appRestoreOnly, preserveNodePorts, includedResources, dan excludedResources hanya berlaku untuk application backup. Parameter ini diabaikan dalam skenario data protection.Parameter
Wajib
Deskripsi
csdr.alibabacloud.com/backuplocations
Ya
Informasi tentang repositori backup tempat backup disimpan. Harus konsisten dengan konfigurasi repositori backup.
name
Ya
Nama pekerjaan pemulihan.
appRestoreOnly
Tidak
Parameter ini hanya berlaku untuk pekerjaan application backup. Tidak berlaku untuk pekerjaan data protection.
Untuk backup yang mencakup PV, menentukan apakah hanya memulihkan aplikasi tanpa PVC, PV, dan data terkaitnya. Nilai yang valid:
true: Hanya memulihkan aplikasi. Untuk mengubah sumber data aplikasi yang dibackup, Anda dapat membuat PVC dan PV secara manual, lalu membuat pekerjaan pemulihan dan mengatur parameter ini ke true.
false: Memulihkan aplikasi dan data penyimpanan terkait. Ini adalah nilai default.
preserveNodePorts
Tidak
Parameter ini hanya berlaku untuk pekerjaan application backup. Tidak berlaku untuk pekerjaan data protection.
Menentukan apakah akan mempertahankan NodePort aplikasi. Ketika kluster backup dan kluster pemulihan sama, nilai default adalah false. Nilai port diubah secara acak untuk menghindari konflik dengan aplikasi sejenis yang sudah ada. Jika tidak, atur ke true.
includedNamespaces
Ya
Menentukan nama namespace yang akan dipulihkan. Jika Anda biarkan kosong, semua namespace yang dibackup akan dipulihkan.
includedResources
Tidak
Parameter ini hanya berlaku untuk pekerjaan application backup. Tidak berlaku untuk pekerjaan data protection.
Menentukan tipe resource kluster yang akan dipulihkan.
PentingUntuk menghindari hasil yang tidak diinginkan, konfigurasikan hanya salah satu dari includedResources atau excludedResources. Jika keduanya kosong, semua tipe resource yang dibackup akan dipulihkan.
excludedResources
Tidak
Parameter ini hanya berlaku untuk pekerjaan application backup. Tidak berlaku untuk pekerjaan data protection.
Mengecualikan tipe resource kluster yang akan dipulihkan.
PentingUntuk menghindari hasil yang tidak diinginkan, konfigurasikan hanya salah satu dari includedResources atau excludedResources. Jika keduanya kosong, semua tipe resource yang dibackup akan dipulihkan.
backupName
Ya
Nama backup yang akan dipulihkan. Jika Anda menggunakan fitur backup terjadwal, Anda harus menentukan nama backup yang dibuat pada titik waktu tertentu, misalnya <yourBackupScheduleName>-20221205225845.
namespaceMapping
Tidak
Memetakan ulang namespace. Nilai yang valid:
<backupNamespace>: Namespace di kluster backup yang ditentukan saat pekerjaan backup dibuat.
<restoreNamespace>: Namespace di kluster pemulihan tempat resource dari backup dibuat. Jika tidak diatur, resource akan dipulihkan ke namespace dengan nama yang sama secara default.
CatatanJika <restoreNamespace> tidak ada, namespace baru akan dibuat.
imageRegistryMapping
Tidak
Memetakan ulang alamat repository image. Ini berlaku untuk konfigurasi image semua aplikasi yang sesuai aturan. Nilai yang valid:
<oldImageRegistry>: Alamat repository image asli aplikasi dalam backup.
<newImageRegistry>: Alamat repository image target untuk pemulihan. Jika tidak diatur, konfigurasi image dalam aplikasi tidak diubah.
Contoh:
Aplikasi asli menggunakan image
registry.cn-beijing.aliyuncs.com/my-registry/nginx:v1. Anda perlu mengubahnya menjadiregistry.cn-hangzhou.aliyuncs.com/my-registry/nginx:v1. Konfigurasikan bidang sebagai berikut:imageRegistryMapping: "registry.cn-beijing.aliyuncs.com/my-registry/": "registry.cn-hangzhou.aliyuncs.com/my-registry/"convertedarg
Tidak
Daftar transformasi StorageClass. PVC volume tipe data FileSystem (seperti OSS, NAS, CPFS, dan penyimpanan lokal) dalam backup dipulihkan ke StorageClass target di kluster saat ini. Ini memungkinkan transformasi, misalnya, dari penyimpanan NAS ke penyimpanan disk.
convertToStorageClassType: StorageClass target. Harus ada di kluster saat ini. Versi saat ini hanya mendukung pemilihan StorageClass disk atau NAS.
namespace: Namespace tempat klaim penyimpanan berada.
persistentVolumeClaim: Nama PVC.
Parameter di atas wajib untuk fitur transformasi StorageClass.
Saat mentransformasi StorageClass, Anda juga dapat memodifikasi konfigurasi AccessModes PV menggunakan parameter opsional berikut.
convertToAccessModes: Daftar AccessModes target.
CatatanKetika PV dengan AccessModes ReadWriteMany atau ReadOnlyMany perlu dipulihkan ke StorageClass disk, Anda juga harus mengubah AccessModes menjadi ReadWriteOnce untuk menghindari risiko disk dilepas paksa.
Anda dapat menjalankan
kubectl -ncsdr describe <backup-name>untuk menanyakan informasi PVC backup. Dalam daftarstatus.resourceList.dataResource.pvcBackupInfopada output, bidang dataType menunjukkan tipe data, yaitu FileSystem atau Snapshot. Bidang nameSpace dan pvcName masing-masing adalah namespace dan nama PVC.Jalankan perintah berikut di kluster pemulihan untuk menerapkan objek applicationrestore.
kubectl apply -f applicationrestore.yamlJalankan perintah berikut di kluster pemulihan untuk memeriksa status pekerjaan pemulihan.
kubectl describe applicationrestore <yourApplicationRestoreName> -n csdrOutput yang diharapkan:
... Status: Completion Timestamp: 2022-12-05T15:52:19Z Phase: Completed Start Timestamp: 2022-12-05T15:52:09ZPekerjaan pemulihan selesai ketika statusnya berubah dari
InprogressmenjadiCompleted.
Langkah 4: Hapus resource yang terkait dengan pusat cadangan
Anda tidak dapat menghapus resource BackupLocation dari pusat cadangan. Hal ini karena repositori backup mungkin sedang digunakan oleh kluster lain.
Hapus jadwal backup
Jalankan perintah berikut untuk menghapus resource BackupSchedule dan menghentikan backup terjadwal.
kubectl delete backupschedule <yourBackupSchedule> -n csdrHapus pekerjaan backup atau pemulihan
Di kluster yang berisi pekerjaan yang ingin Anda hapus, buat file bernama deleterequest.yaml yang berisi konten berikut.
apiVersion: csdr.alibabacloud.com/v1beta1 kind: DeleteRequest metadata: name: <objectName-dbr> namespace: csdr spec: deleteObjectName: <objectName> deleteObjectType: "Backup"Pertahankan konfigurasi default untuk parameter lainnya.
Parameter
Wajib
Deskripsi
name
Ya
Nama permintaan penghapusan.
Untuk pekerjaan backup: Nama ApplicationBackup yang akan dihapus, ditambah "-dbr".
Untuk pekerjaan pemulihan: Nama ApplicationRestore yang akan dihapus, ditambah "-dbr".
deleteObjectName
Ya
Nama resource yang akan dihapus.
deleteObjectType
Ya
Tipe resource yang akan dihapus. Nilai yang valid:
"Backup": Menghapus pekerjaan ApplicationBackup dan resource terkaitnya.
"Restore": Menghapus pekerjaan ApplicationRestore dan resource terkaitnya.
CatatanMenghapus pekerjaan backup tidak memengaruhi replika yang telah disinkronkan ke kluster.
Menghapus pekerjaan pemulihan tidak memengaruhi konten yang telah dipulihkan.
Jalankan perintah berikut di kluster yang berisi pekerjaan yang ingin Anda hapus untuk menerapkan objek deleterequest.
kubectl apply -f deleterequest.yamlGunakan perintah berikut untuk memeriksa status resource.
Check the deleted backup job
Jalankan perintah berikut untuk memeriksa status penghapusan pekerjaan backup.
kubectl get applicationbackup <yourApplicationBackupName> -n csdrOutput yang diharapkan:
Error from server (NotFound): applicationbackups.csdr.alibabacloud.com "yourApplicationBackupName" not foundOutput kosong menunjukkan bahwa resource pekerjaan backup telah dihapus.
Jalankan perintah berikut untuk memeriksa status resource permintaan penghapusan.
kubectl get deleterequest <yourApplicationBackupName-dbr> -n csdrOutput yang diharapkan:
Error from server (NotFound): deleterequests.csdr.alibabacloud.com "yourApplicationBackupName-dbr" not foundOutput menunjukkan bahwa resource pekerjaan backup dan resource permintaan penghapusannya secara otomatis dihapus.
Check the deleted restore job
Jalankan perintah berikut untuk memeriksa status pekerjaan pemulihan yang dihapus.
kubectl get applicationrestore <yourApplicationRestoreName> -n csdrOutput yang diharapkan:
Error from server (NotFound): applicationrestores.csdr.alibabacloud.com "yourApplicationRestoreName" not foundOutput kosong menunjukkan bahwa resource pekerjaan pemulihan telah dihapus.
Jalankan perintah berikut untuk memeriksa status resource permintaan penghapusan.
kubectl get deleterequest <yourApplicationRestoreName-dbr> -n csdrOutput yang diharapkan:
Error from server (NotFound): deleterequests.csdr.alibabacloud.com "yourApplicationRestoreName-dbr" not foundOutput kosong menunjukkan bahwa resource permintaan penghapusan terkait juga secara otomatis dihapus.
Referensi
Untuk membuat backup dan memigrasikan aplikasi kluster dari konsol, lihat dokumen berikut:
Untuk memigrasikan aplikasi antar kluster dengan plug-in penyimpanan atau versi Kubernetes yang berbeda, lihat Migrasikan aplikasi dari kluster Kubernetes versi lama menggunakan pusat cadangan.