Halaman ini menjelaskan cara mengotomatiskan pencadangan untuk instance Compute Engine menggunakan Tag.
Mengonfigurasi pencadangan untuk instance Compute Engine baru
Instance Compute Engine adalah VM yang dihosting di Google Cloud. Setiap instance menyimpan data di Persistent Disk yang terpasang ke instance. Anda dapat membuat instance atau membuat grup instance terkelola menggunakan konsol Google Cloud , Google Cloud CLI, atau Compute Engine API.
Untuk mengetahui informasi yang lebih mendetail, lihat Compute Engine.
Prasyarat untuk mengotomatiskan pencadangan
Sebelum Anda mulai mengotomatiskan pencadangan instance Compute Engine, baca prosedur berikut untuk bersiap melakukan pencadangan:
Setelah menyiapkan Layanan Pencadangan dan DR serta membuat template rencana pencadangan, Anda dapat mengotomatiskan perlindungan instance Compute Engine dengan menerapkan template rencana pencadangan ke instance menggunakan Tag.
Izin
Untuk membuat, memperbarui, dan menghapus definisi Tag untuk resource Compute Engine, Anda memerlukan peran Tag Administrator
. Untuk mengetahui informasi selengkapnya tentang peran
tagUser
, lihat Izin yang diperlukan.
Untuk menggunakan pemberian tag dinamis guna mencadangkan instance Compute Engine, Anda harus memberikan peran IAM Backup and DR Compute Engine Operator (roles/backupdr.computeEngineOperator
) kepada agen layanan vault cadangan dalam project Compute Engine.
Mengelola Tag Perlindungan Dinamis
Untuk membuat, memperbarui, dan menghapus Tag Perlindungan Dinamis, Anda harus memiliki izin yang sesuai untuk peran Anda guna memastikan Anda memiliki salah satu peran berikut yang ditetapkan:
Admin Backup and DR
Pengguna Pencadangan Backup and DR
Pengguna Backup and DR V2
Editor Project
Pemilik Project
peran khusus yang mencakup izin berikut:
Izin yang diperlukan
backupdr.managementServers.listDynamicProtection
backupdr.managementServers.getDynamicProtection
backupdr.managementServers.createDynamicProtection
backupdr.managementServers.deleteDynamicProtection
compute.instances.listEffectiveTags
Pelajari lebih lanjut peran Layanan Pencadangan dan Pemulihan dari Bencana.
Menerapkan template rencana pencadangan menggunakan Tag secara otomatis
Bagian ini membantu Anda mengotomatiskan penerapan rencana pencadangan ke instance Compute Engine menggunakan Tag. Pertama, buat pemetaan rencana pencadangan ke Tag di konsol pengelolaan. Kemudian, Anda membuat Tag melalui Identity and Access Management (IAM) menggunakan nilai yang sama yang ditetapkan di konsol pengelolaan.
Membuat nilai Tag Perlindungan Dinamis
Gunakan petunjuk berikut untuk membuat nilai Tag Perlindungan Dinamis yang dapat digunakan dengan instance Compute Engine Anda:
Di konsol pengelolaan Backup and DR, klik menu drop-down Backup Plans, lalu pilih Dynamic Protection Tags.
Klik Buat Tag Perlindungan Dinamis.
Masukkan Nilai Tag unik yang mengikuti persyaratan penamaan ini.
Dari daftar Jenis aplikasi, pilih Compute Engine.
Pilih Template dan Profile yang sesuai untuk dikaitkan dengan Nilai Tag ini.
Klik Simpan. Nilai Tag Perlindungan Dinamis dibuat.
Membuat Tag Perlindungan Dinamis
Gunakan petunjuk ini untuk membuat Tag Perlindungan Dinamis yang akan dilampirkan ke instance Compute Engine Anda guna mengotomatiskan perlindungan:
Untuk membuat, memperbarui, dan menghapus definisi tag, Anda memerlukan peran Tag Administrator, atau peran lain yang mencakup izin tertentu.
Buka halaman Tags di konsol Google Cloud .
Dari Pemilih cakupan di bagian atas halaman, pilih organisasi atau project tempat Anda ingin membuat kunci tag.
Klik
Create.Di kotak Kunci tag, masukkan
backupdr-dynamicprotect
sebagai kunci tag. Langkah ini wajib dilakukan agar otomatisasi berhasil. Perhatikan kesalahan ejaan dan pastikan untuk menyertakan tanda hubung.Opsional: Di kotak Deskripsi kunci tag, masukkan deskripsi kunci tag Anda.
Klik
Tambahkan nilai dan masukkan setiap Nilai tag yang baru saja Anda buat.
Di kotak Nilai tag, masukkan nama tampilan nilai tag Anda. Nama ini akan menjadi bagian dari nama dengan namespace tag Anda.
Di kotak Deskripsi nilai tag, masukkan deskripsi Template dan Profil yang terkait dengan Nilai tag ini.
Setelah selesai menambahkan Nilai tag, klik Buat kunci tag.
Menambahkan Tag Perlindungan Dinamis ke resource
Setelah Anda membuat Nilai Tag Perlindungan Dinamis dan menautkannya ke Tag Perlindungan Dinamis, langkah berikutnya adalah menetapkan Tag ke instance Compute Engine. Perlindungan berbasis tag tidak berfungsi jika instance Anda dilindungi dalam grup logis. Hapus grup logis dan coba gunakan perlindungan dinamis.
Tag Perlindungan Dinamis Anda dapat dilampirkan ke instance Compute Engine menggunakan petunjuk berikut:
Di Google Cloud konsol, buka halaman Compute Engine > VM instances.
Di kolom Nama, klik nama VM yang ingin Anda tambahi tag.
Dari halaman detail Instance VM, selesaikan langkah-langkah berikut:
- Klik Edit.
- Di bagian Dasar, klik Kelola Tag, lalu tambahkan tag yang Anda inginkan untuk instance.
Pilih kunci
backupdr-dynamicprotect:
dan Nilai Tag yang sesuai yang dipetakan ke Template dan Profil yang Anda tetapkan di konsol Google Cloud .Klik Simpan.
Menambahkan tag ke resource selama pembuatan resource
Dalam skenario tertentu, Anda dapat memberi tag pada resource selama pembuatan resource, bukan setelah resource dibuat.
Konsol
Di konsol Google Cloud , buka halaman VM instances.
Pilih project Anda, lalu klik Continue.
Klik Create instance.
Klik Kelola Tag dan Label.
Klik Tambahkan Tag.
Ikuti petunjuk di panel samping untuk memilih
backupdr-dynamicprotect
yang akan ditambahkan ke instance.Klik Simpan.
Selesaikan langkah-langkah lain di bagian Membuat dan memulai instance VM untuk menyelesaikan pembuatan instance.
gcloud
Untuk menggunakan Google Cloud CLI atau API, ikuti dokumentasi SDK untuk melakukan hal berikut:
Terraform
Gunakan template Terraform berikut untuk mulai menggunakan Tag Perlindungan Dinamis. Template ini mengasumsikan bahwa Anda belum membuat kunci tag Perlindungan Dinamis di konsol Google Cloud dan akan menyiapkannya untuk Anda. Template ini membuat instance Compute Engine baru dan mengikatnya ke tag perlindungan dinamis. Anda dapat menunggu hingga tugas Perlindungan Dinamis terjadwal berjalan pada pukul 04.00 atau 16.00 waktu setempat agar berlaku, atau Anda dapat menjalankan tugas Perlindungan Dinamis sesuai permintaan dengan mengikuti langkah-langkah di Menjalankan Perlindungan Otomatis Manual.
variable "project_id" {
description = "The ID of the existing Google Cloud project"
type = string
}
variable "region" {
description = "The Google Cloud region where demo-instance should be created"
type = string
}
variable "zone" {
description = "The Google Cloud zone where demo-instance should be created"
type = string
}
provider "google" {
project = var.project_id
region = var.region
zone = var.zone
}
data "google_project" "project" {
project_id = var.project_id
}
# Reference: https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/tags_tag_key
resource "google_tags_tag_key" "key" {
parent = "projects/${var.project_id}"
short_name = "backupdr-dynamicprotect"
description = "Tag key for Dynamic Protection."
}
# Reference: https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/tags_tag_value
resource "google_tags_tag_value" "value" {
parent = "tagKeys/${google_tags_tag_key.key.name}"
short_name = "backupdr-gold" # This value should be present in the "Management Console UI" > "Backup Plans" > "Dynamic Protection Tags"
description = "Tag value for gold plan."
}
# Reference: https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_instance
# Ensure not to define tag in "resource_manager_tags" block while creating VM instance. It'll destroy the VM
# when tag value is changed/removed later. Instead define a separate tag binding using "google_tags_tag_binding"
# or "google_tags_location_tag_binding" resource. It'll modify just tag binding and VM instance won't be affected.
resource "google_compute_instance" "vm_instance" {
name = "demo-instance"
machine_type = "e2-micro"
zone = var.zone
boot_disk {
initialize_params {
image = "debian-cloud/debian-11"
}
}
network_interface {
network = "default"
access_config {
// Ephemeral public IP
}
}
}
# Reference: https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/google_tags_location_tag_binding
resource "google_tags_location_tag_binding" "binding" {
parent = "//compute.googleapis.com/projects/${data.google_project.project.number}/zones/${var.zone}/instances/${google_compute_instance.vm_instance.instance_id}"
tag_value = "tagValues/${google_tags_tag_value.value.name}"
location = var.zone
}
# Reference for Tag bindings at project/org level: https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/tags_tag_binding
Melepaskan Tag dari resource
Anda dapat melepaskan Tag dari resource dengan menghapus resource binding tag.
Untuk meninjau petunjuk cara melepaskan tag, lihat Melepaskan tag dari resource dalam dokumentasi Resource Manager.
Konsol
Di konsol Google Cloud , buka halaman VM instances.
Pilih project Anda, lalu klik Lanjutkan.
Di kolom Nama, klik nama VM yang ingin Anda tambahi tag.
Dari halaman detail Instance VM, selesaikan langkah-langkah berikut:
Klik Edit.
Di bagian Dasar, klik Kelola Tag, lalu hapus
backupdr-dynamicprotect
untuk instance.Klik Simpan.
gcloud
Untuk menggunakan Google Cloud CLI, ikuti dokumentasi untuk menggunakan Google Cloud CLI untuk melepaskan Tag dari resource.
Menjalankan Perlindungan Otomatis Manual
Meskipun mesin perlindungan berjalan setiap hari pada pukul 04.00 dan 16.00 waktu setempat, Anda juga dapat menjalankan mesin Perlindungan Dinamis sesuai permintaan menggunakan langkah-langkah perintah berikut:
Tetapkan endpoint konsol pengelolaan dengan memasukkan nilai yang dimulai dengan 'https://bmc-' dan diakhiri dengan '.com'. Contoh,
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com
export MC_ENDPOINT="MC_ENDPOINT_edited_value"
Buat token pembawa:
echo "Generating a new bearer token..." export BEARER_TOKEN=$(gcloud auth print-access-token) echo "Bearer token generated: BEARER_TOKEN=$BEARER_TOKEN"
Mendapatkan ID sesi baru:
echo "Generating a new session id..." export SESSION_RESPONSE=$(curl -XPOST -H "Authorization: Bearer $BEARER_TOKEN" -d {} "$MC_ENDPOINT/actifio/session" 2>&-) export SESSION_ID=$(echo $SESSION_RESPONSE | jq -r '.session_id') if [ -z ${SESSION_ID} ] then echo "Issue with generating a new session id. Response: $SESSION_RESPONSE"; return 1; fi echo "Session id generated: SESSION_ID=$SESSION_ID"
Setelah menetapkan endpoint, membuat token pembawa, dan mendapatkan ID sesi, Anda dapat memicu tugas perlindungan dinamis selama satu jam hingga ID sesi berakhir.
Memicu tugas perlindungan dinamis
Tugas perlindungan dinamis memperbarui semua instance Compute Engine dengan tag saat ini, dan menetapkan paket pencadangan berdasarkan tag. Tugas yang dipicu dapat memerlukan waktu beberapa menit, bergantung pada jumlah perubahan yang menunggu keputusan untuk workload Anda.
echo "Triggering dynamic protection job.." curl -H "Authorization: Bearer $BEARER_TOKEN" -H "backupdr-management-session: Actifio $SESSION_ID" -H "Content-Type: application/json" -XPOST -d '{}' "$MC_ENDPOINT/actifio/dynamicprotection/job/gceinstance" echo "Dynamic protection job triggered."
Menggunakan Perlindungan Dinamis dengan Pengelola Resource
Anda dapat menggunakan tag perlindungan dinamis dengan Resource Manager, sehingga mengotomatiskan perlindungan instance Compute Engine Anda di tingkat organisasi yang lebih tinggi. Gunakan Resource Manager untuk memberi tag pada resource di tingkat project atau yang lebih tinggi untuk memastikan perlindungan diwariskan di semua resource Anda. Pelajari lebih lanjut Pewarisan Tag.
Memigrasikan perlindungan manual ke Perlindungan Dinamis
Jika Anda ingin memigrasikan resource yang sudah dilindungi untuk menggunakan perlindungan dinamis menggunakan Tag, Anda harus mengaktifkan tanda migrasi di project Anda. Setelah Anda mengaktifkan migrasi, semua instance yang dilindungi secara manual kini dapat menggunakan perlindungan dinamis. Menambahkan tag dan resource secara otomatis melindungi berdasarkan tag dan menghapus perlindungan manual yang ada.
Bash
Jalankan perintah berikut.
Tetapkan endpoint konsol pengelolaan dengan memasukkan nilai yang dimulai dengan 'https://bmc-' dan diakhiri dengan '.com'. Contoh,
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com
#!/bin/bash export MC_ENDPOINT="MC_ENDPOINT_edited_value"
Aktifkan migrasi.
curl -H "Authorization: Bearer $BEARER_TOKEN" -H "backupdr-management-session: Actifio $SESSION_ID" -H "Content-Type: application/json" -XPATCH -d '{ "enableMigrationToTagBasedProtection":"true"}' "$MC_ENDPOINT/actifio/dynamicprotection/jobconfig"
Konsol pengelolaan
Untuk mengaktifkan migrasi instance Compute Engine yang dilindungi secara manual ke perlindungan berbasis tag, ikuti langkah-langkah berikut:
- Alihkan Aktifkan migrasi ke perlindungan berbasis tag ke status AKTIF
- Konfirmasi dialog Aktifkan Migrasi. Instance Compute Engine yang dilindungi secara manual akan dilindungi ulang menggunakan tag yang ditentukan di VM.
Untuk menonaktifkan migrasi instance Compute Engine yang dilindungi secara manual ke perlindungan berbasis tag, ikuti langkah-langkah berikut:
- Alihkan Aktifkan migrasi ke perlindungan berbasis tag ke status NONAKTIF.
- Konfirmasi dialog Nonaktifkan Migrasi. Tindakan ini akan menonaktifkan migrasi instance Compute Engine yang dilindungi secara manual ke perlindungan berbasis tag.
Peristiwa dan notifikasi
Setelah mesin perlindungan dinamis berjalan, Anda dapat meninjau progres dari peristiwa pemantauan. Konsol pengelolaan menerima notifikasi ringkasan setelah melakukan tindakan perlindungan dinamis. Notifikasi error dikirim jika tindakan pengguna diperlukan.
Praktik terbaik
Perlindungan dinamis dapat meningkatkan jumlah tugas pencadangan yang berjalan dan jumlah penyimpanan yang digunakan. Untuk hasil terbaik, pertimbangkan hal berikut:
Perpanjang periode pencadangan. Periode 6 hingga 10 jam biasanya memungkinkan semua tugas berjalan hingga selesai.
VM yang dipulihkan akan membawa tag perlindungan yang sama dengan VM sumber beserta rencana pencadangan yang sama, tetapi jenis perlindungan akan berubah dari perlindungan berbasis tag menjadi perlindungan yang dimulai pengguna. Resource akan terus dilindungi menggunakan paket pencadangan yang dialihkan. Untuk mengubah jenis perlindungan kembali ke perlindungan berbasis tag, Anda dapat menghapus rencana cadangan perlindungan yang dipertahankan dan memicu tugas perlindungan dinamis sesuai permintaan atau menunggu eksekusi terjadwal berikutnya sehingga aplikasi diberi perlindungan berbasis tag lagi.
VM yang di-mount di host yang ada atau host yang baru dibuat tidak akan memiliki tag perlindungan yang sama dengan VM sumber, sehingga tidak akan dilindungi secara otomatis setelah operasi pemasangan. Jika VM yang baru dipasang perlu dilindungi, Anda dapat menerapkan pengikatan tag ke VM baru yang serupa dengan VM sumber.