All Products
Search
Document Center

Container Service for Kubernetes:Gunakan kubectl untuk mencadangkan dan memulihkan aplikasi kluster

Last Updated:Mar 22, 2026

Jika Anda tidak dapat mengelola Backup Center melalui Konsol ACK atau perlu mengotomatiskan proses backup dan pemulihan bencana, gunakan kubectl untuk memigrasikan aplikasi antar kluster. Untuk melakukannya, deploy Custom Resource (CR) Backup Repository, Application Backup, dan Application Restore ke kluster backup dan kluster pemulihan Anda.

Prasyarat

Instal Komponen Layanan Backup migrate-controller dan konfigurasikan izin

Skenario

  • Anda tidak dapat mengelola Backup Center melalui Konsol Container Service karena izin yang tidak mencukupi.

  • Mengotomatiskan alur kerja backup dan pemulihan bencana.

Perhatian

  • Tugas Backup dan Restore tidak dapat dihapus hanya dengan menggunakan perintah kubectl delete. Lihat Langkah 4: Hapus resource terkait Cluster Backup Center.

  • Pastikan komponen migrate-controller selalu diperbarui. Untuk informasi selengkapnya, lihat Kelola komponen.

  • Menghapus parameter konfigurasi dalam contoh kode berikut dapat menyebabkan proses backup dan restore gagal.

Langkah 1: Buat repositori backup

  1. Di kluster backup dan kluster restore, gunakan konten berikut untuk membuat file backuplocation.yaml.

    apiVersion: csdr.alibabacloud.com/v1beta1
    kind: BackupLocation
    metadata:
      name: <your-backup-location-name>
      namespace: csdr
    spec:
      backupSyncPeriod: 0s
      config:
        network: internal
        region: cn-beijing
      objectStorage:
        bucket: <cnfs-oss-your-bucket-name>
        prefix: <your-subdirectory-name>
      provider: alibabacloud

    Pertahankan pengaturan 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 OSS. Nilai yang valid:

    • internal: Mode Akses Internal, di mana semua kluster terkait dan Bucket OSS harus berada di wilayah yang sama.

    • public: Mode Akses Publik, tanpa batasan wilayah.

    region

    Ya

    Wilayah tempat Bucket OSS berada.

    bucket

    Ya

    Nama Bucket OSS. Bucket ini harus dibuat terlebih dahulu, dan namanya harus diawali dengan cnfs-oss-.

    prefix

    Tidak

    Subdirektori opsional di Bucket OSS. Jika ditentukan, file backup disimpan di subdirektori ini.

  2. Jalankan perintah berikut di kluster backup dan kluster restore untuk mendeploy objek backuplocation.

    kubectl apply -f backuplocation.yaml
  3. Jalankan perintah berikut secara terpisah di kluster backup dan kluster restore untuk memeriksa status backuplocation.

    kubectl describe backuplocation <your-backup-location-name> -n csdr

    Output yang diharapkan adalah sebagai berikut:

    ...
    Status:
      Last Validation Time:  2022-12-08T04:00:22Z
      Message:               success by csdr-controller
      Phase:                 Available

    Seperti yang ditunjukkan pada output yang diharapkan, status repositori backup yang dibuat adalah Available, yang menunjukkan bahwa kluster saat ini memiliki izin untuk mengakses OSS secara langsung.

Langkah 2: Buat pekerjaan backup

Pilih jenis backup berdasarkan skenario Anda:

  • Application Backup: Mencadangkan aplikasi yang berjalan di kluster Anda, termasuk resource kluster dan Persistent Volume (PV) yang digunakan oleh aplikasi tersebut.

  • Data Protection: Mencadangkan data di Persistent Volume (PV), yang hanya mencakup Persistent Volume Claims (PVC) dan Persistent Volume (PV) terkait.

Untuk informasi selengkapnya, lihat Skenario untuk Application Backup dan Data Protection.

Application backup

Backup sesuai permintaan

  1. Gunakan konten berikut untuk membuat file applicationbackup.yaml di kluster backup.

    apiVersion: csdr.alibabacloud.com/v1beta1
    kind: ApplicationBackup
    metadata:
      annotations:
        csdr.alibabacloud.com/backuplocations: >-
          {"name":"<your-backup-repository-name>","region":"cn-beijing","bucket":"<your-oss-bucket-name>","prefix":"<your-subdirectory-name>","provider":"alibabacloud"}
      name: <your-application-backup-name>
      namespace: csdr
    spec:
      includedNamespaces:
        - default
      includedResources:
        - statefulset
      excludedResources:
        - deployment
      labelSelector:
        matchLabels:
          app: mysql-sts
      includeClusterResources: false 
      pvBackup:
        defaultPvBackup: false
      storageLocation: <your-backup-repository-name>
      ttl: 720h0m0s

    Anda dapat mempertahankan parameter lainnya pada nilai default.

    Parameter

    Wajib

    Deskripsi

    csdr.alibabacloud.com/backuplocations

    Ya

    Repositori Backup tempat backup disimpan. Ini harus sesuai dengan konfigurasi Repositori Backup yang sudah ada.

    name

    Ya

    Nama Backup Sesuai Permintaan.

    includedNamespaces

    Ya

    Namespace yang akan dimasukkan dalam backup.

    includedResources

    Tidak

    Jenis resource yang akan dimasukkan dalam backup.

    Penting

    Untuk menghindari hasil backup yang tidak diinginkan, Anda hanya perlu mengonfigurasi salah satu dari includedResources atau excludedResources. Ketika keduanya kosong, semua jenis resource dicadangkan.

    excludedResources

    Tidak

    Jenis resource yang akan dikecualikan dari backup.

    Penting

    Untuk menghindari hasil backup yang tidak diinginkan, Anda hanya perlu mengonfigurasi salah satu dari includedResources atau excludedResources. Ketika keduanya kosong, semua jenis resource dicadangkan.

    matchLabels

    Tidak

    Pemilih label untuk memfilter resource. Hanya resource dengan label yang sesuai yang dicadangkan.

    includeClusterResources

    Tidak

    Menentukan apakah akan mencadangkan resource tingkat kluster, seperti StorageClasses, CRD, dan webhook.

    • true: Mencadangkan semua resource tingkat kluster.

    • false: Hanya mencadangkan resource tingkat kluster yang direferensikan oleh resource tingkat namespace di namespace yang dipilih. Misalnya, ketika Anda mencadangkan pod, jika ServiceAccount yang direferensikan diberikan ClusterRole, maka ClusterRole tersebut secara otomatis dicadangkan. Ketika Anda mencadangkan custom resource (CR), CRD-nya secara otomatis dicadangkan.

    Catatan

    Untuk pekerjaan backup yang dibuat di Konsol ACK, field IncludeClusterResources diatur ke false secara default.

    defaultPvBackup

    Tidak

    Menentukan apakah akan mencadangkan Persistent Volume (PV). Nilai yang valid:

    • true: Mencadangkan aplikasi dan volume persisten (PV).

    • false: Hanya mencadangkan aplikasi.

    storageLocation

    Ya

    Nama Repositori Backup.

    Catatan

    Jika kluster Anda sudah menggunakan Velero, gabung grup pengguna DingTalk (Nomor Grup: 35532895) untuk bantuan.

    ttl

    Ya

    Periode retensi untuk backup. Setelah periode ini berakhir, backup tidak dapat dipulihkan. Formatnya adalah 720h0m0s. Nilainya harus antara 24h0m0s dan 1572864h0m0s.

  2. Di kluster backup, jalankan perintah berikut untuk mendeploy objek applicationbackup.

    kubectl apply -f applicationbackup.yaml
  3. Jalankan perintah berikut di kluster backup untuk memeriksa status tugas backup sesuai permintaan.

    kubectl describe applicationbackup <your-application-backup-name> -n csdr

    Output yang diharapkan:

    ...
    Status:
      Completion Timestamp:  2022-12-05T15:02:35Z
      Expiration:            2023-01-04T15:02:25Z
      Message:               success
      Phase:                 Completed

    Ketika status tugas backup sesuai permintaan berubah dari Inprogress menjadi Completed, tugas berhasil dibuat.

Backup terjadwal

  1. Gunakan konten berikut untuk membuat file backupschedule.yaml di kluster backup.

    apiVersion: csdr.alibabacloud.com/v1beta1
    kind: BackupSchedule
    metadata:
      annotations:
        csdr.alibabacloud.com/backuplocations: >-
          {"name":"<your-backup-repository-name>","region":"cn-beijing","bucket":"<your-oss-bucket-name>","prefix":"<your-subdirectory-name>","provider":"alibabacloud"}
      name: <your-backup-schedule-name>
      namespace: csdr
    spec:
      schedule: 1 4 * * *
      template:
        includedNamespaces:
          - default
        includedResources:
          - statefulset
        excludedResources:
          - deployment
        labelSelector:
          matchLabels:
            app: mysql-sts
        includeClusterResources: false 
        pvBackup:
          defaultPvBackup: true
        storageLocation: <your-backup-repository-name>
        ttl: 720h0m0s

    Anda dapat mempertahankan parameter lainnya pada nilai default.

    Parameter

    Wajib

    Deskripsi

    csdr.alibabacloud.com/backuplocations

    Ya

    Repositori Backup tempat backup disimpan. Ini harus sesuai dengan konfigurasi Repositori Backup yang sudah ada.

    name

    Ya

    Nama Rencana Backup Terjadwal.

    schedule

    Ya

    Jadwal backup, ditentukan sebagai ekspresi Cron. Untuk informasi selengkapnya, lihat Cara menentukan Jadwal Backup.

    includedNamespaces

    Ya

    Namespace yang akan dimasukkan dalam backup.

    includedResources

    Tidak

    Jenis resource yang akan dimasukkan dalam backup.

    Penting

    Untuk menghindari hasil backup yang tidak diinginkan, Anda hanya perlu mengonfigurasi salah satu dari includedResources atau excludedResources. Ketika keduanya kosong, semua jenis resource dicadangkan.

    excludedResources

    Tidak

    Jenis resource yang akan dikecualikan dari backup.

    Penting

    Untuk menghindari hasil backup yang tidak diinginkan, Anda hanya perlu mengonfigurasi salah satu dari includedResources atau excludedResources. Ketika keduanya kosong, semua jenis resource dicadangkan.

    matchLabels

    Tidak

    Pemilih label untuk memfilter resource. Hanya resource dengan label yang sesuai yang dicadangkan.

    includeClusterResources

    Tidak

    Menentukan apakah akan mencadangkan resource tingkat kluster, seperti StorageClasses, CRD, dan webhook.

    • true: Mencadangkan semua resource tingkat kluster.

    • false: Hanya mencadangkan resource tingkat kluster yang direferensikan oleh resource tingkat namespace di namespace yang dipilih. Misalnya, ketika Anda mencadangkan pod, jika ServiceAccount yang direferensikan diberikan ClusterRole, maka ClusterRole tersebut secara otomatis dicadangkan. Ketika Anda mencadangkan custom resource (CR), CRD-nya secara otomatis dicadangkan.

    Catatan

    Untuk pekerjaan backup yang dibuat di Konsol ACK, field IncludeClusterResources diatur ke false secara default.

    defaultPvBackup

    Ya

    Menentukan apakah akan mencadangkan Persistent Volume (PV). Nilai yang valid:

    • true: Mencadangkan aplikasi dan Persistent Volume (PV).

    • false: Hanya mencadangkan aplikasi.

    storageLocation

    Ya

    Nama Repositori Backup.

    Catatan

    Jika kluster Anda sudah menggunakan Velero, silakan gabung grup pengguna DingTalk (Nomor grup: 35532895) untuk bantuan.

    ttl

    Ya

    Periode retensi untuk backup. Setelah periode ini berakhir, backup tidak dapat dipulihkan. Formatnya adalah 720h0m0s. Nilainya harus antara 24h0m0s dan 1572864h0m0s.

  2. Jalankan perintah berikut di kluster backup untuk mendeploy objek backupschedule.

    kubectl apply -f backupschedule.yaml
  3. Jalankan perintah berikut di kluster backup untuk memeriksa status rencana backup terjadwal.

    kubectl describe backupschedule <your-backup-schedule-name> -n csdr

    Output yang diharapkan:

    ...
    Status:
      Last Backup:          2022-12-07T20:01:11Z
      Last Processed Time:  2022-12-08T13:05:37Z
      Phase:                Enabled

    Jika status rencana backup terjadwal adalah Enabled, rencana berhasil dibuat.

  4. Jalankan perintah berikut di kluster backup untuk melihat backup terjadwal.

    kubectl get applicationbackup -n csdr | grep <your-backup-schedule-name>

    Output yang diharapkan:

    <your-backup-schedule-name>-20221205225845   2d22h
    <your-backup-schedule-name>-20221206040104   2d17h
    <your-backup-schedule-name>-20221207040137   41h
    <your-backup-schedule-name>-20221208040111   17h

Data protection

Backup sesuai permintaan

  1. Gunakan konten berikut untuk membuat file applicationbackup.yaml di kluster backup.

    apiVersion: csdr.alibabacloud.com/v1beta1
    kind: ApplicationBackup
    metadata:
      annotations:
        csdr.alibabacloud.com/backuplocations: >-
          {"name":"<your-backup-repository-name>","region":"cn-beijing","bucket":"<your-oss-bucket-name>","prefix":"<your-subdirectory-name>","provider":"alibabacloud"}
      name: <your-application-backup-name>
      namespace: csdr
    spec:
      backupType: PvBackup # This is a fixed value
      includedNamespaces:
      - default
      pvBackup:
        # Specify the volumes to back up
        pvcList:
        - name: essd-pvc-0 
          namespace: default 
        - name: essd-pvc-1
          namespace: default
        # Specify volumes to back up by Storage Class
        storageClassList:
        - disk-essd
        - disk-ssd
      storageLocation: <your-backup-repository-name>
      ttl: 720h0m0s

    Parameter

    Wajib

    Deskripsi

    csdr.alibabacloud.com/backuplocations

    Ya

    Repositori Backup tempat backup disimpan. Ini harus sesuai dengan konfigurasi Repositori Backup yang sudah ada.

    name

    Ya

    Nama Backup Sesuai Permintaan.

    includedNamespaces

    Ya

    Namespace yang akan dimasukkan dalam backup.

    pvcList

    Tidak

    Tentukan Persistent Volume Claims (PVC) yang akan dicadangkan. name adalah nama PVC.

    Penting
    • Jika pvcList dan storageClassList keduanya ditentukan, konfigurasi storageClassList diabaikan.

    • Jika baik pvcList maupun storageClassList tidak ditentukan, semua Persistent Volume (PV) di Namespace yang ditentukan dicadangkan.

    storageClassList

    Tidak

    Storage Class dari volume yang akan dicadangkan.

    storageLocation

    Ya

    Nama Repositori Backup.

    Catatan

    Jika kluster Anda sudah menggunakan Velero, gabung grup pengguna DingTalk (Nomor Grup: 35532895) untuk bantuan.

    ttl

    Ya

    Periode retensi untuk backup. Setelah periode ini berakhir, backup tidak dapat dipulihkan. Formatnya adalah 720h0m0s. Nilainya harus antara 24h0m0s dan 1572864h0m0s.

  2. Jalankan perintah berikut di kluster backup untuk mendeploy objek applicationbackup.

    kubectl apply -f applicationbackup.yaml
  3. Jalankan perintah berikut di kluster backup untuk memeriksa status tugas backup sesuai permintaan.

    kubectl describe applicationbackup <your-application-backup-name> -n csdr

    Output yang diharapkan:

    ...
    Status:
      Completion Timestamp:  2025-03-25T08:20:24Z
      Expiration:            2025-04-24T08:18:03Z
      Message:               success
      Phase:                 Completed

Backup terjadwal

  1. Gunakan konten berikut untuk membuat file backupschedule.yaml di kluster backup.

    apiVersion: csdr.alibabacloud.com/v1beta1
    kind: BackupSchedule
    metadata:
      annotations:
        csdr.alibabacloud.com/backuplocations: >-
          {"name":"<your-backup-repository-name>","region":"cn-beijing","bucket":"<your-oss-bucket-name>","prefix":"<your-subdirectory-name>","provider":"alibabacloud"}
      name: <your-backup-schedule-name>
      namespace: csdr
    spec:
      schedule: 1 4 * * *
      template:
        backupType: PvBackup # This is a fixed value
        includedNamespaces:
        - default
        pvBackup:
          # Specify the volumes to back up
          pvcList:
          - name: essd-pvc-0 
            namespace: default
          - name: essd-pvc-1
            namespace: default
          # Specify volumes to back up by Storage Class
          storageClassList:
          - disk-essd
          - disk-ssd
        storageLocation: <your-backup-repository-name>
        ttl: 720h0m0s

    Parameter

    Wajib

    Deskripsi

    csdr.alibabacloud.com/backuplocations

    Ya

    Repositori Backup tempat backup disimpan. Ini harus sesuai dengan konfigurasi Repositori Backup yang sudah ada.

    name

    Ya

    Nama Backup Sesuai Permintaan.

    schedule

    Ya

    Jadwal backup, ditentukan sebagai ekspresi cron. Untuk informasi tentang formatnya, lihat Cara menentukan jadwal backup.

    includedNamespaces

    Ya

    Namespace yang akan dimasukkan dalam backup.

    pvcList

    Tidak

    Menentukan Persistent Volume Claim (PVC) untuk Persistent Volume (PV) yang akan dicadangkan. name adalah nama PVC.

    Penting
    • Jika pvcList dan storageClassList keduanya ditentukan, konfigurasi storageClassList diabaikan.

    • Jika baik pvcList maupun storageClassList tidak ditentukan, semua PV di Namespace yang ditentukan dicadangkan.

    storageClassList

    Tidak

    Storage Class dari volume yang akan dicadangkan.

    storageLocation

    Ya

    Nama Repositori Backup.

    Catatan

    Jika kluster Anda sudah menggunakan Velero, gabung grup pengguna DingTalk (Nomor Grup: 35532895) untuk bantuan.

    ttl

    Ya

    Periode retensi untuk backup. Setelah periode ini berakhir, backup tidak dapat dipulihkan. Formatnya adalah 720h0m0s. Nilainya harus antara 24h0m0s dan 1572864h0m0s.

  2. Jalankan perintah berikut di kluster backup untuk mendeploy objek backupschedule.

    kubectl apply -f backupschedule.yaml
  3. Jalankan perintah berikut di kluster backup untuk memeriksa status rencana backup terjadwal.

    kubectl describe backupschedule <your-backup-schedule-name> -n csdr

    Output yang diharapkan:

    ...
    Status:
      Last Backup:  2025-03-25T09:24:38Z
      Phase:        Enabled

Langkah 3: Buat tugas restore

  1. Gunakan konten berikut untuk membuat file applicationrestore.yaml di kluster pemulihan.

    apiVersion: csdr.alibabacloud.com/v1beta1
    kind: ApplicationRestore
    metadata:
      annotations:    
        csdr.alibabacloud.com/backuplocations: >-
          {"name":"<your-backup-repository-name>","region":"cn-beijing","bucket":"<your-oss-bucket-name>","prefix":"<your-subdirectory-name>","provider":"alibabacloud"}
      name: <your-application-restore-name>
      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: <your-application-backup-name>
      namespaceMapping:
        <source-namespace>: <target-namespace>
      imageRegistryMapping:
        <old-image-registry>: <new-image-registry>

    Anda dapat mempertahankan parameter lainnya pada pengaturan default.

    Catatan

    Parameter appRestoreOnly, preserveNodePorts, includedResources, dan excludedResources hanya didukung untuk Application Backup dan tidak berlaku dalam skenario data protection.

    Parameter

    Wajib

    Deskripsi

    csdr.alibabacloud.com/backuplocations

    Ya

    Menentukan Repositori Backup yang berisi backup. Ini harus sesuai dengan konfigurasi repositori.

    name

    Ya

    Nama tugas restore.

    appRestoreOnly

    Tidak

    Parameter ini hanya berlaku untuk pekerjaan Application Backup dan tidak berlaku dalam skenario Data Protection.

    Untuk backup yang mencakup Persistent Volume (PV), parameter ini menentukan apakah hanya aplikasi yang dipulihkan, tanpa memulihkan Persistent Volume Claims (PVC), PV, dan data volumenya. Nilai yang valid:

    • true: Hanya memulihkan aplikasi. Jika Anda perlu mengubah sumber data aplikasi yang dicadangkan, Anda dapat membuat PVC dan PV secara manual terlebih dahulu, lalu membuat tugas restore dengan parameter ini diatur ke true.

    • false: Memulihkan aplikasi beserta data penyimpanannya. Ini adalah nilai default.

    preserveNodePorts

    Tidak

    Parameter ini hanya berlaku untuk pekerjaan Application Backup dan tidak berlaku dalam skenario Data Protection.

    Jika kluster backup dan restore sama, nilai default adalah false. Ini mencegah konflik port dengan memberikan nilai port acak. Dalam semua kasus lain, atur nilai ini ke true.

    includedNamespaces

    Ya

    Menentukan namespace yang akan dipulihkan. Jika dikosongkan, semua namespace yang dicadangkan akan dipulihkan.

    includedResources

    Tidak

    Parameter ini hanya berlaku untuk pekerjaan Application Backup dan tidak berlaku dalam skenario Data Protection.

    Menentukan jenis resource kluster yang akan dipulihkan.

    Penting
    • Untuk menghindari hasil restore yang tidak diinginkan, konfigurasikan salah satu dari includedResources atau excludedResources. Jika kedua parameter kosong, semua jenis resource yang dicadangkan akan dipulihkan.

    excludedResources

    Tidak

    Parameter ini hanya berlaku untuk pekerjaan Application Backup dan tidak berlaku dalam skenario Data Protection.

    Menentukan jenis resource kluster yang akan dikecualikan dari restore.

    Penting
    • Untuk menghindari hasil restore yang tidak diinginkan, konfigurasikan salah satu dari includedResources atau excludedResources. Jika kedua parameter kosong, semua jenis resource yang dicadangkan akan dipulihkan.

    backupName

    Ya

    Nama backup yang akan dipulihkan. Saat menggunakan fitur backup terjadwal, Anda harus menentukan nama backup titik waktu tertentu, misalnya, <yourBackupScheduleName>-20221205225845.

    namespaceMapping

    Tidak

    Memetakan ulang namespace. Nilai yang valid:

    • <backupNamespace>: Namespace kluster backup yang Anda tentukan saat membuat tugas backup.

    • <restoreNamespace>: Namespace di kluster pemulihan tempat resource dari backup dipulihkan. Jika parameter ini tidak diatur, resource dipulihkan ke namespace dengan nama yang sama secara default.

    Catatan

    Jika <target-namespace> tidak ada, namespace baru akan dibuat.

    imageRegistryMapping

    Tidak

    Memetakan ulang alamat Image Registry. Ini berlaku untuk semua image dalam aplikasi yang dipulihkan yang alamatnya cocok dengan awalan sumber. Nilai yang valid:

    • <oldImageRegistry>: Alamat registry image asli dari aplikasi dalam backup.

    • <newImageRegistry>: Alamat registry Image tujuan untuk pemulihan. Jika Anda tidak mengatur parameter ini, konfigurasi image dalam aplikasi tidak akan diubah.

    Contoh:

    Image yang digunakan oleh aplikasi kluster asli adalah registry.cn-beijing.aliyuncs.com/my-registry/nginx:v1, yang perlu diubah menjadi registry.cn-hangzhou.aliyuncs.com/my-registry/nginx:v1. Konfigurasikan field ini sebagai berikut:

      imageRegistryMapping:
        "registry.cn-beijing.aliyuncs.com/my-registry/": "registry.cn-hangzhou.aliyuncs.com/my-registry/"

    convertedarg

    Tidak

    Daftar konversi StorageClass. Ini memungkinkan Anda memulihkan Persistent Volume Claim (PVC) dari backup volume tipe FileSystem (seperti Object Storage Service (OSS), Apsara File Storage NAS, CPFS, atau penyimpanan lokal) ke StorageClass target di kluster saat ini. Misalnya, Anda dapat mengonversi Apsara File Storage NAS ke Cloud Disk.

    • convertToStorageClassType: StorageClass target. Harus sudah ada di kluster saat ini. Versi saat ini hanya mendukung StorageClass untuk Cloud Disk atau Apsara File Storage NAS.

    • namespace: Namespace tempat Persistent Volume Claim (PVC) berada.

    • persistentVolumeClaim: Nama Persistent Volume Claim (PVC).

    Parameter di atas wajib untuk fitur konversi StorageClass.

    Anda juga dapat memodifikasi mode akses Persistent Volume (PV) selama konversi dengan menggunakan parameter opsional berikut:

    • convertToAccessModes: Daftar mode akses target.

    Catatan

    Saat memulihkan PV dengan AccessModes ReadWriteMany atau ReadOnlyMany ke StorageClass Cloud Disk, Anda juga harus mengonversi AccessModes menjadi ReadWriteOnce untuk menghindari risiko disk dilepas paksa.

    Anda dapat menjalankan perintah kubectl -ncsdr describe <backup-name> untuk menanyakan informasi tentang Persistent Volume Claim (PVC) untuk backup. Di daftar status.resourceList.dataResource.pvcBackupInfo pada output, field dataType menunjukkan tipe data, yaitu FileSystem atau Snapshot. Field nameSpace dan pvcName masing-masing adalah namespace dan nama PVC.

  2. Jalankan perintah berikut di kluster restore untuk mendeploy objek applicationrestore.

    kubectl apply -f applicationrestore.yaml
  3. Jalankan perintah berikut di kluster restore untuk memeriksa status tugas restore.

    kubectl describe applicationrestore <your-application-restore-name> -n csdr

    Output yang diharapkan:

    ...
    Status:
      Completion Timestamp:  2022-12-05T15:52:19Z
      Phase:                 Completed
      Start Timestamp:       2022-12-05T15:52:09Z

    Ketika status tugas restore berubah dari Inprogress menjadi Completed, tugas restore berhasil dibuat.

Langkah 4: Hapus resource cluster backup center

Penting

Cluster Backup Center tidak mendukung penghapusan resource BackupLocation karena repositori backup yang Anda buat mungkin sedang digunakan oleh kluster lain.

Hapus rencana backup terjadwal

Jalankan perintah berikut untuk menghapus resource BackupSchedule dan menghentikan backup terjadwal.

kubectl delete backupschedule <your-backup-schedule-name> -n csdr

Hapus pekerjaan backup atau pekerjaan restore

  1. Gunakan konten berikut untuk membuat file deleterequest.yaml di kluster tempat tugas yang akan dihapus berada.

    apiVersion: csdr.alibabacloud.com/v1beta1
    kind: DeleteRequest
    metadata:
      name: <object-name-dbr>
      namespace: csdr
    spec:
      deleteObjectName: <object-name>
      deleteObjectType: "Backup"

    Anda dapat mempertahankan parameter lainnya pada nilai default.

    Parameter

    Wajib

    Deskripsi

    name

    Ya

    Nama resource DeleteRequest.

    • Untuk menghapus Pekerjaan Backup: Nama resource ApplicationBackup yang akan dihapus, diikuti dengan -dbr.

    • Untuk menghapus Tugas Restore: Nama resource ApplicationRestore yang akan dihapus, diikuti dengan -dbr.

    deleteObjectName

    Ya

    Nama resource yang akan dihapus.

    deleteObjectType

    Ya

    Jenis resource yang akan dihapus. Nilai yang valid:

    • "Backup": Menghapus pekerjaan backup ApplicationBackup dan resource terkaitnya.

    • "Restore": Menghapus tugas restore ApplicationRestore dan resource terkaitnya.

    Catatan
    • Menghapus Pekerjaan Backup tidak memengaruhi Replika yang telah disinkronkan ke Kluster.

    • Menghapus Tugas Restore tidak memengaruhi konten yang telah dipulihkan.

  2. Jalankan perintah berikut di kluster yang berisi tugas yang akan dihapus untuk mendeploy permintaan hapus deleterequest.

    kubectl apply -f deleterequest.yaml
  3. Jalankan perintah berikut untuk memeriksa status resource.

    • Verifikasi penghapusan Pekerjaan Backup

      • Jalankan perintah berikut untuk memeriksa status Pekerjaan Backup.

        kubectl get applicationbackup <your-application-backup-name> -n csdr

        Output yang diharapkan:

        Error from server (NotFound): applicationbackups.csdr.alibabacloud.com "your-application-backup-name" not found

        Output ini menunjukkan bahwa resource ApplicationBackup telah dihapus.

      • Jalankan perintah berikut untuk memeriksa status resource DeleteRequest.

        kubectl get deleterequest <your-application-backup-name-dbr> -n csdr

        Output yang diharapkan:

        Error from server (NotFound): deleterequests.csdr.alibabacloud.com "your-application-backup-name-dbr" not found

        Output ini menunjukkan bahwa resource DeleteRequest terkait juga secara otomatis dihapus.

    • Verifikasi Penghapusan Restore Job

      • Jalankan perintah berikut untuk memeriksa status Tugas Restore.

        kubectl get applicationrestore <your-application-restore-name> -n csdr

        Output yang diharapkan:

        Error from server (NotFound): applicationrestores.csdr.alibabacloud.com "your-application-restore-name" not found

        Output ini menunjukkan bahwa resource ApplicationRestore telah dihapus.

      • Jalankan perintah berikut untuk memeriksa status resource DeleteRequest.

        kubectl get deleterequest <your-application-restore-name-dbr> -n csdr

        Output yang diharapkan:

        Error from server (NotFound): deleterequests.csdr.alibabacloud.com "your-application-restore-name-dbr" not found

        Output ini menunjukkan bahwa resource DeleteRequest terkait juga secara otomatis dihapus.

Dokumentasi terkait