Merencanakan set pencadangan

Halaman ini menjelaskan cara membuat dan mengelola rencana pencadangan untuk workload cluster di Google Distributed Cloud (GDC) yang terisolasi.

Rencana pencadangan menyediakan fungsi konfigurasi, lokasi, dan pengelolaan untuk serangkaian pencadangan. Rencana pencadangan berisi konfigurasi pencadangan, termasuk cluster sumber dan pemilihan workload yang akan dicadangkan. Google merekomendasikan agar setiap cluster memiliki minimal satu rencana cadangan.

Anda dapat membuat satu atau beberapa rencana cadangan untuk setiap cluster. Anda mungkin ingin membuat partisi cadangan cluster karena salah satu alasan berikut:

  • Daripada memiliki satu cadangan berukuran sangat besar yang diambil pada satu waktu dalam sehari, Anda ingin beberapa cadangan yang lebih kecil didistribusikan sepanjang hari.
  • Anda ingin lebih sering mencadangkan beberapa bagian cluster daripada yang lain, seperti cadangan harian untuk beberapa namespace dan cadangan per jam untuk sebagian yang lain.

Satu cluster atau virtual machine (VM) dapat menjadi bagian dari satu atau beberapa rencana pencadangan. Rencana pencadangan tidak dapat mencakup lebih dari satu cluster; namun, satu rencana pencadangan dapat mencadangkan beberapa VM jika VM tersebut ada dalam cluster yang sama. Anda harus mengaitkan semua resource pencadangan dan pemulihan dengan nama project.

Sebelum memulai

Untuk membuat rencana pencadangan, Anda harus memiliki:

  • Peran identitas dan akses yang diperlukan:
    • Admin Pencadangan Cluster Pengguna: mengelola resource pencadangan seperti rencana pencadangan dan pemulihan di cluster pengguna. Minta Admin IAM Organisasi Anda untuk memberi Anda peran User Cluster Backup Admin (user-cluster-backup-admin). Untuk mengetahui informasi selengkapnya, lihat Definisi peran.
  • Jika Anda adalah Operator Aplikasi, minta administrator yang memiliki hak istimewa Admin Pencadangan Cluster Pengguna untuk membuat rencana pencadangan bagi Anda.
  • Saat mencadangkan cluster pengguna, pastikan Anda melampirkan project yang digunakan untuk membuat rencana cadangan ke cluster tersebut.

Buat rencana cadangan

Sebaiknya tentukan jadwal cron untuk rencana cadangan agar cadangan otomatis dibuat sesuai jadwal tersebut. Anda juga dapat mencadangkan workload secara manual. Untuk mengetahui informasi selengkapnya, lihat Membuat cadangan manual.

Buat rencana pencadangan menggunakan konsol GDC atau API.

Konsol

  1. Login ke konsol GDC.
  2. Di menu navigasi, klik Pencadangan untuk Cluster.
  3. Klik Buat Rencana Cadangan.
  4. Di bagian Detail paket, selesaikan langkah-langkah berikut dan klik Lanjutkan:
    1. Di daftar Cluster, pilih cluster yang akan dicadangkan.
    2. Dalam daftar Project, pilih project.
    3. Di kolom Nama rencana cadangan, masukkan nama rencana cadangan yang Anda pilih.
    4. (Opsional) Di Deskripsi rencana cadangan, masukkan deskripsi untuk rencana cadangan.
    5. Di kolom Backup repo, pilih repositori cadangan. Repositori pencadangan adalah sekumpulan penerapan penyimpanan objek.
    6. Klik Berikutnya.
  5. Di bagian Cakupan dan enkripsi, selesaikan langkah-langkah berikut dan klik Lanjutkan:

    1. Pilih salah satu cakupan berikut untuk rencana cadangan:

      1. Klik Seluruh cluster untuk mencadangkan semua resource namespace dalam cadangan.
      2. Klik Namespace yang dipilih dalam cluster untuk memilih namespace dalam cluster yang akan dicadangkan.
        1. Klik Edit Cluster Namespace, lalu Add Cluster Namespace untuk memasukkan Namespace.
      3. Klik Aplikasi yang dilindungi yang dipilih dalam cluster ini untuk menambahkan resource dengan menentukan namespace dan nama aplikasi.
        1. Klik Edit Aplikasi yang Dilindungi, lalu Tambahkan Aplikasi yang Dilindungi untuk memasukkan Namespace dan Aplikasi yang Dilindungi.
    2. Klik Sertakan Secret untuk menyertakan resource Secret Kubernetes.

    3. Klik Sertakan data volume persisten jika Anda menginginkan data volume dalam cadangan. Hapus centang ini jika Anda ingin membuat volume kosong selama pencadangan.

  6. Di bagian Jadwal dan retensi, selesaikan langkah-langkah berikut dan klik Lanjutkan:

    1. Untuk menentukan jadwal, masukkan ekspresi menggunakan sintaksis cron standar di kolom CRON string. Misalnya, ekspresi 10 3 * * * membuat cadangan pada pukul 03:10 setiap hari. Semua waktu ditafsirkan sebagai UTC. Interval minimum antar-cadangan terjadwal adalah 10 menit.
    2. Di kolom Hapus cadangan setelah, tetapkan jumlah hari untuk mempertahankan cadangan. Setelah jumlah hari tercapai, cadangan akan otomatis dihapus.
    3. Tetapkan jumlah hari cadangan tidak dapat dihapus.
    4. Untuk mengunci kebijakan retensi, klik ikon gembok untuk mengubah kunci dari Nonaktif ke Aktif.
  7. Tinjau detail rencana pencadangan, lalu klik Buat Rencana.

API

Buat resource kustom ClusterBackupPlan di cluster untuk menjadwalkan pencadangan. Rencana pencadangan secara berkala menjadwalkan pencadangan berdasarkan backupSchedule. Resource ClusterBackupPlan adalah resource namespace. Berikut contoh ClusterBackupPlan:

apiVersion: backup.gdc.goog/v1
kind: ClusterBackupPlan
metadata:
  name: CLUSTER_BACKUP_PLAN
  namespace: PROJECT_NAME
spec:
  targetCluster:
    targetClusterType: UserCluster
    targetClusterName:
      kind: "Cluster"
      name: CLUSTER_NAME
  backupSchedule:
    cronSchedule: CRON_SCHEDULE
    paused: BACKUP_SCHEDULE_STATUS
  clusterBackupConfig:
    backupScope:
      selectedNamespaces:
        namespaces: [NAME_SPACE]
    clusterBackupRepositoryName: CLUSTER_BACKUP_REPOSITORY
    includeVolumeData: VOLUME_DATA_INCLUDED
    volumeStrategy: VOLUME_STRATEGY
    includeSecrets: SECRETS_INCLUDED
  retentionPolicy:
    backupDeleteLockDays: BACKUP_DELETE_LOCK_DAYS
    backupRetainDays: BACKUP_RETAIN_DAYS
  description: BACKUP_PLAN_DESCRIPTION

Ganti kode berikut:

  • CLUSTER_BACKUP_PLAN: nama rencana pencadangan cluster Anda.
  • PROJECT_NAME: nama project GDC Anda.
  • CLUSTER_NAME: nama cluster yang akan dicadangkan. Kolom targetCluster yang melampirkan memiliki komponen berikut:
    • targetClusterType: jenis cluster yang akan dicadangkan, seperti UserCluster atau ManagementAPI. Contoh ini menggunakan UserCluster.
    • targetClusterName: berisi name, yang ditetapkan oleh CLUSTER_NAME.
  • CRON_SCHEDULE: jadwal crontab yang menunjukkan kapan pencadangan harus dijadwalkan, seperti "*/30 * * * *". Interval minimum antar-cadangan terjadwal adalah 10 menit.
  • BACKUP_SCHEDULE_STATUS: jika true, pencadangan berkala tidak dijadwalkan.
  • NAME_SPACE: daftar namespace yang akan disertakan dalam pencadangan. Kolom clusterBackupConfig yang melampirkan mencakup detail konfigurasi untuk cadangan:
    • backupScope: menunjukkan resource mana yang dicadangkan. Contoh ini menggunakan selectedNamespaces. Nilai yang memungkinkan mencakup:
      • allNamespaces: mencatat semua resource di semua namespace.
      • selectedNamespaces: merekam resource dalam daftar namespace yang ditentukan.
      • selectedApplication: mengambil resource yang ditentukan oleh protectedApplications.
    • namespaces: berlaku jika backupScope adalah selectedNamespaces.
  • CLUSTER_BACKUP_REPOSITORY: nilai untuk clusterBackupRepositoryName di clusterBackupConfig. Ini adalah repositori target yang menyimpan cadangan dan harus diimpor sebagai ReadWrite.
  • VOLUME_DATA_INCLUDED: menentukan apakah akan mencadangkan data volume. Nilai ini secara default adalah false. Jika Anda ingin menyertakan data volume dalam cadangan, tetapkan opsi ini ke true.
  • VOLUME_STRATEGY: jenis pencadangan volume yang akan dilakukan. Nilai yang memungkinkan mencakup:
    • ProvisionerSpecific: memanfaatkan kemampuan pencadangan dan pemulihan penyedia penyimpanan pokok. Gunakan opsi ini jika includeVolumeData adalah true.
    • LocalSnapshotOnly: membuat salinan volume pada suatu titik waktu hanya di sistem penyimpanan lokal itu sendiri.
    • Portable: menyediakan cara pencadangan data volume yang tidak bergantung pada penyimpanan.
  • SECRETS_INCLUDED: menentukan apakah akan mencadangkan rahasia. Nilai ini secara default adalah false. Jika Anda ingin menyertakan resource Secret Kubernetes dalam cadangan, tetapkan opsi ini ke true.
  • BACKUP_DELETE_LOCK_DAYS: mencegah penghapusan cadangan selama jumlah hari yang ditentukan setelah pembuatan cadangan, misalnya, 10 days.
  • BACKUP_RETAIN_DAYS: menentukan jumlah total hari untuk mempertahankan cadangan. Setelah periode ini, cadangan akan otomatis dihapus. Menyetel nilai ini ke angka yang lebih tinggi dapat menyebabkan kehabisan penyimpanan, sementara menyetelnya ke nilai yang lebih rendah dapat meningkatkan risiko kehilangan data. Nilai ini ditetapkan ke 35 secara default jika tidak ditentukan. Kebijakan retensi tidak menggantikan kebijakan retensi lokasi penyimpanan, dan tidak boleh melebihi 90 hari.
  • BACKUP_PLAN_DESCRIPTION: deskripsi rencana cadangan.

Setelah rencana cadangan dibuat, cadangan akan otomatis dibuat dengan konfigurasi cadangan yang ditentukan berdasarkan jadwal cadangan.

Melihat rencana cadangan

Lihat rencana cadangan menggunakan konsol GDC atau API.

Konsol

  1. Login ke konsol GDC.
  2. Di menu navigasi, klik Pencadangan untuk Cluster.
  3. Klik Pilih project, lalu pilih organisasi atau project, bergantung pada peran Anda:
    • Admin Pencadangan Cluster Pengguna: Pilih organisasi untuk melihat semua rencana pencadangan di organisasi atau pilih project untuk melihat semua rencana pencadangan di project.
    • Pembuat Cadangan: Pilih project untuk melihat semua rencana cadangan dalam project.
  4. Klik tab Rencana Cadangan.
  5. Klik rencana pencadangan dalam daftar untuk melihat detailnya. Pengguna dengan hak istimewa Admin Pencadangan Cluster Pengguna dapat melihat semua rencana pencadangan di organisasi. Pengguna dengan peran Pembuat Cadangan dapat melihat semua rencana pencadangan dalam project yang dipilih.

API

Untuk melihat rencana cadangan, gunakan perintah kubectl get:

kubectl get clusterbackupplan CLUSTER_BACKUP_PLAN -n PROJECT_NAME -o yaml

Ganti kode berikut:

  • CLUSTER_BACKUP_PLAN: nama rencana cadangan yang akan dilihat.
  • PROJECT_NAME: nama project GDC Anda.

Mengedit rencana cadangan

Edit rencana cadangan menggunakan konsol GDC atau API.

Konsol

  1. Login ke konsol GDC.
  2. Di menu navigasi, klik Pencadangan untuk Cluster.
  3. Klik Pilih project, lalu pilih organisasi atau project, bergantung pada peran Anda:
    • Admin Pencadangan Cluster Pengguna: Pilih organisasi untuk melihat semua rencana pencadangan dalam organisasi, atau pilih project untuk melihat semua rencana pencadangan dalam project.
    • Pembuat Cadangan: Pilih project untuk melihat semua rencana cadangan dalam project.
  4. Klik tab Rencana Cadangan.
  5. Klik nama rencana pencadangan yang ingin Anda edit.
  6. Klik tab Konfigurasi Paket untuk melihat kolom yang dapat diubah.
  7. Klik ikon Edit untuk Jadwal dan retensi guna mengedit resource tersebut:

    1. Untuk memperbarui jadwal, masukkan ekspresi menggunakan sintaksis cron standar di kolom CRON string. Misalnya, ekspresi 10 3 * * * membuat cadangan pada pukul 03:10 setiap hari. Semua waktu ditafsirkan sebagai UTC. Interval minimum antar-cadangan terjadwal adalah 10 menit.
    2. Di kolom Hapus cadangan setelah, tetapkan jumlah hari untuk mempertahankan cadangan. Setelah jumlah hari tercapai, cadangan akan otomatis dihapus.
    3. Di kolom Cegah penghapusan selama, tetapkan jumlah hari cadangan tidak dapat dihapus.

    4. Untuk mengunci kebijakan retensi, klik ikon gembok dari Nonaktif ke Aktif.

    5. Klik tombol Simpan untuk mengonfirmasi perubahan Anda.

API

Untuk mengedit rencana pencadangan, gunakan perintah kubectl edit untuk mengubah resource kustom ClusterBackupPlan. Perintah ini akan membuka konfigurasi YAML resource di editor teks default Anda.

kubectl edit clusterbackupplan CLUSTER_BACKUP_PLAN -n PROJECT_NAME

Ganti kode berikut:

  • CLUSTER_BACKUP_PLAN: nama rencana cadangan yang akan diedit.
  • PROJECT_NAME: nama project GDC Anda.

Di editor, Anda dapat mengubah kolom seperti berikut:

  • spec.backupSchedule.cronSchedule: memperbarui frekuensi pencadangan.
  • spec.backupSchedule.paused: mengaktifkan atau menonaktifkan jadwal pencadangan.
  • spec.retentionPolicy.backupRetainDays: mengubah durasi penyimpanan cadangan.
  • spec.retentionPolicy.backupDeleteLockDays: mengubah periode kunci penghapusan.
  • spec.retentionPolicy.locked: mengunci kebijakan retensi.
  • spec.deactivated: menonaktifkan rencana cadangan. Menetapkan kolom ini ke 'true' akan mencegah pembuatan cadangan dan pembaruan lebih lanjut.

Menonaktifkan rencana cadangan

Menonaktifkan rencana cadangan menggunakan konsol GDC atau API:

Konsol

  1. Login ke konsol GDC.
  2. Di menu navigasi, klik Pencadangan untuk Cluster.
  3. Klik Pilih project, lalu pilih organisasi atau project, bergantung pada peran Anda:
    • Admin Pencadangan Cluster Pengguna: Pilih organisasi untuk melihat semua rencana pencadangan di organisasi atau pilih project untuk melihat semua rencana pencadangan di project.
    • Pembuat Cadangan: Pilih project untuk melihat semua rencana cadangan dalam project.
  4. Klik tab Rencana Cadangan.
  5. Klik nama rencana cadangan yang ingin Anda nonaktifkan.
  6. Klik tombol Nonaktifkan Paket.
  7. Masukkan nama rencana cadangan yang Anda nonaktifkan ke dalam kolom.
  8. Klik tombol Nonaktifkan untuk menyelesaikan penonaktifan paket pencadangan ini.

API

Untuk menonaktifkan rencana cadangan, tetapkan kolom deactivated ke true:

kubectl patch clusterbackupplan CLUSTER_BACKUP_PLAN -n PROJECT_NAME -p '{"spec":{"deactivated":true}}' --type=merge

Ganti kode berikut:

  • CLUSTER_BACKUP_PLAN: nama rencana cadangan yang akan dinonaktifkan.
  • PROJECT_NAME: nama project GDC Anda.

Langkah berikutnya