Halaman ini menjelaskan cara memilih resource untuk pemulihan dengan tingkat perincian yang lebih baik.
Ringkasan
Fitur pemulihan terperinci memungkinkan Anda memulihkan sebagian resource dari cadangan. Fitur pemulihan terperinci memberikan fleksibilitas untuk meningkatkan cakupan pemulihan yang ditentukan dalam rencana pemulihan induk. Jika cakupan pemulihan yang terperinci tidak tumpang-tindih dengan cakupan asli yang ditentukan dalam rencana pemulihan induk, tidak ada resource yang akan dipulihkan.
Fitur pemulihan terperinci dapat diaktifkan untuk rencana pemulihan dengan mode penanganan konflik tingkat resource individual:
- Menggabungkan lewati
- Gabungkan penggantian
- Menggabungkan volume pengganti
Jika rencana pemulihan Anda menggunakan mode penanganan konflik tingkat namespace atau ProtectedApplication, seperti Gagal saat terjadi konflik atau Rollback dan Anda ingin mengaktifkan pemulihan yang terperinci, Anda harus memperbarui rencana pemulihan untuk menggunakan mode yang didukung atau membuat rencana pemulihan baru. Untuk informasi selengkapnya tentang mode pemulihan, lihat Menangani konflik resource selama pemulihan.
Untuk menggunakan pemulihan terperinci, Anda dapat menentukan satu atau beberapa kondisi filter di bagian filter penyertaan dan pengecualian. Anda dapat memilih subset resource tertentu dari cadangan untuk pemulihan atau memulihkan semua resource kecuali subset. Anda dapat menentukan filter penyertaan dan pengecualian secara bersamaan. Jika filter penyertaan digunakan, hanya resource yang cocok dengan filter tersebut yang akan dipulihkan. Jika filter pengecualian digunakan, filter tersebut akan mengecualikan resource yang cocok dari proses pemulihan. Jika filter penyertaan dan pengecualian ditentukan, filter penyertaan akan diterapkan terlebih dahulu, diikuti dengan filter pengecualian. Artinya, filter pengecualian memiliki prioritas atas filter penyertaan. Jika tidak ada filter yang ditentukan, pemulihan akan dilakukan pada seluruh cakupan yang ditentukan dalam rencana pemulihan induk.
Ada empat atribut opsional saat membuat kondisi filter:
- GroupKind: grup dan jenis Kubernetes API untuk resource
- Namespace: namespace untuk resource cakupan namespace
- Nama resource: nama resource
- Label: pasangan nilai kunci untuk memilih resource berdasarkan label Kubernetes
Anda dapat menggunakan kombinasi dari empat atribut sebelumnya untuk menentukan kondisi
filter. Jika lebih dari satu atribut ditentukan, hubungan antara
atribut dianggap sebagai AND
. Resource dipilih jika cocok dengan semua
atribut yang ditentukan dalam kondisi filter. Anda juga dapat memberikan beberapa kondisi filter
secara bersamaan, hubungan antara kondisi filter
yang berbeda adalah OR
. Resource dipilih jika cocok dengan kondisi filter
dari semua yang disediakan.
Sebelum memulai
Merencanakan serangkaian pemulihan.
Membuat pemulihan dengan filter pemulihan terperinci
gcloud
Buat file YAML atau JSON dengan filter pemulihan terperinci. Anda dapat menggunakan contoh YAML berikut.
exclusionFilters: - groupKind: resourceGroup: foo.io resourceKind: Bar name: name1 namespace: ns1 inclusionFilters: - labels: key1: value1 key2: value2
Buat pemulihan menggunakan file filter pemulihan terperinci yang Anda buat.
gcloud beta container backup-restore restores create RESTORE \ --project=PROJECT_ID \ --location=LOCATION \ --restore-plan=RESTORE_PLAN \ --backup=BACKUP \ --filter-file=FILTER_FILE
Ganti kode berikut:
RESTORE
: nama instance yang ingin Anda buat.PROJECT_ID
: ID project Google Cloud Anda.LOCATION
: region komputasi dari rencana pemulihan induk.RESTORE_PLAN
: nama paket pemulihan induk dari pemulihan ini.BACKUP
: cadangan yang akan dipulihkan. Ini harus berada dalam rencana cadangan yang dirujuk oleh rencana pemulihan induk sebagaiprojects/PROJECT_ID/locations/LOCATION/backupPlans/BACKUP_PLAN/backups/BACKUP
FILTER_FILE
: jalur filter pemulihan terperinci Anda.
Untuk mengetahui daftar lengkap opsi, lihat dokumentasi
gcloud beta container backup-restore restores create
.
Konsol
Gunakan petunjuk berikut untuk membuat pemulihan terperinci di konsol Google Cloud:
Di konsol Google Cloud, buka halaman Google Kubernetes Engine.
Di menu navigasi, klik Pencadangan untuk GKE.
Klik tab Backups.
Dalam daftar cadangan, pilih cadangan yang ingin Anda pulihkan, lalu klik Set up a restore.
Pilih paket pemulihan dari daftar rencana yang berlaku untuk cadangan ini.
Masukkan Nama dan Deskripsi opsional untuk pemulihan.
Klik kotak centang Enable fine-grained restore.
Di bagian Inclusion filters atau Exclusion filters, klik Add filter condition.
Di Restore filter condition, tentukan kondisi dan klik Save changes.
Jika Anda ingin menambahkan kondisi lainnya, klik Tambahkan kondisi filter lagi.
Klik Pulihkan.
Contoh file filter pemulihan terperinci
Contoh berikut tersedia dalam format YAML yang digunakan oleh Google Cloud CLI atau petunjuk langkah demi langkah untuk konsol Google Cloud.
Memulihkan satu resource cakupan namespace
Contoh ini memulihkan jenis resource ConfigMap
dengan nama nginx-vars
di
namespace webserver
, menggunakan pemulihan terperinci InclusionFilters
untuk
memilih resource. Jika Anda ingin memilih resource di grup core
, gunakan
string kosong untuk resourceGroup
.
gcloud
inclusionFilters:
- groupKind:
resourceKind: ConfigMap
name: nginx-vars
namespace: webserver
Konsol
- Aktifkan pemulihan terperinci seperti yang Anda lakukan dalam prosedur Membuat pemulihan dengan filter pemulihan terperinci.
- Di bagian Filter penyertaan, klik Tambahkan kondisi filter.
- Di kolom Resource name, masukkan
nginx-vars
. - Di kolom Namespace, masukkan
webserver
. - Di kolom Jenis objek, masukkan
ConfigMap
. - Klik Save changes.
Mengecualikan satu resource cakupan cluster
Contoh ini memulihkan semua resource yang tersedia kecuali satu resource GroupKind storage.k8s.io/StorageClass
dengan nama sc1
, menggunakan pemulihan terperinci ExclusionFilters
untuk mengecualikan resource.
gcloud
exclusionFilters:
- groupKind:
resourceGroup: storage.k8s.io
resourceKind: StorageClass
name: sc1
Konsol
- Aktifkan pemulihan terperinci seperti yang Anda lakukan dalam prosedur Membuat pemulihan dengan filter pemulihan terperinci.
- Di bagian Exclusion filters, klik Add filter condition.
- Di kolom Resource name, masukkan
sc1
. - Di kolom API group, masukkan
storage.k8s.io
. - Di kolom Jenis objek, masukkan
StorageClass
. - Klik Save changes.
Memulihkan resource dengan dua label
Contoh ini memulihkan resource yang memiliki label key1:value1
dan key2:value2
, menggunakan pemulihan terperinci InclusionFilters
untuk memilih resource.
gcloud
inclusionFilters:
- labels:
key1: value1
key2: value2
Konsol
- Aktifkan pemulihan terperinci seperti yang Anda lakukan dalam prosedur Membuat pemulihan dengan filter pemulihan terperinci.
- Di bagian Filter penyertaan, klik Tambahkan kondisi filter.
Di Bagian Labels:
- Klik Tambahkan label
- Di kolom Key 1, masukkan
key1
. - Di kolom Value 1, masukkan
value1
. - Klik Tambahkan label.
- Di kolom Key 2, masukkan
key2
. - Di kolom Value 2, masukkan
value2
.
Klik Save changes.
Mengecualikan semua resource dari beberapa GroupKinds
Contoh ini memulihkan semua resource yang tersedia kecuali GroupKind ConfigMap
dan storage.k8s.io/StorageClass
, menggunakan pemulihan terperinci ExclusionFilters
untuk mengecualikan kedua GroupKind ini.
gcloud
exclusionFilters:
- groupKind:
resourceKind: ConfigMap
- groupKind:
resourceGroup: storage.k8s.io
resourceKind: StorageClass
Konsol
- Aktifkan pemulihan terperinci seperti yang Anda lakukan dalam prosedur Membuat pemulihan dengan filter pemulihan terperinci.
- Di bagian Exclusion filters, klik Add filter condition.
- Di kolom Jenis objek, masukkan
ConfigMap
. - Klik Save changes.
- Di kolom Jenis objek, masukkan
- Di bagian Exclusion filters, klik Add filter condition.
- Di kolom API group, masukkan
storage.k8s.io
. - Di kolom Jenis objek, masukkan
StorageClass
. - Klik Save changes.
- Di kolom API group, masukkan