Dokumen ini menjelaskan cara memulai dan menghentikan Replikasi Asinkron.
Replikasi Asinkron berguna untuk pemulihan dari bencana dengan RPO rendah dan RTO rendah. Untuk mempelajari replikasi asinkron lebih lanjut, lihat Tentang Replikasi Asinkron.
Batasan
- Disk utama hanya dapat mereplikasi satu disk sekunder di satu waktu.
- Setelah replikasi berhenti, Anda tidak dapat melanjutkan replikasi ke disk yang sama. Anda harus membuat disk sekunder baru dan memulai ulang replikasi.
- Disk sekunder tidak dapat dipasang, dihapus, atau di-snapshot saat sedang dalam proses replikasi.
- Jika Anda menggunakan disk regional sebagai disk sekunder dan pemadaman layanan zona terjadi di salah satu zona disk sekunder, replikasi dari disk utama ke disk sekunder akan gagal.
Sebelum memulai
- Jika Anda perlu menyelaraskan replikasi di beberapa disk, buat grup konsistensi.
- Buat disk utama.
- Buat disk sekunder.
-
Siapkan autentikasi jika Anda belum melakukannya.
Autentikasi memverifikasi identitas Anda untuk mengakses layanan Google Cloud dan API. Untuk menjalankan
kode atau sampel dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke
Compute Engine dengan memilih salah satu opsi berikut:
Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:
Konsol
Saat menggunakan konsol Google Cloud untuk mengakses layanan Google Cloud dan API, Anda tidak perlu menyiapkan autentikasi.
gcloud
-
Instal Google Cloud CLI. Setelah penginstalan, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:
gcloud initJika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
- Tetapkan region dan zona default.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Jika Anda menggunakan shell lokal, buat kredensial autentikasi lokal untuk akun pengguna Anda:
gcloud auth application-default login
Anda tidak perlu melakukan langkah ini jika menggunakan Cloud Shell.
Jika error autentikasi ditampilkan, dan Anda menggunakan penyedia identitas (IdP) eksternal, konfirmasi bahwa Anda telah login ke gcloud CLI dengan identitas gabungan Anda.
Terraform
Untuk menggunakan contoh Terraform di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Instal Google Cloud CLI.
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .
Peran dan izin yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk memulai atau menghentikan replikasi, minta administrator untuk memberi Anda peran IAM berikut pada project:
-
Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1) -
Untuk terhubung ke instance yang memiliki akun layanan terlampir:
Service Account User (v1) (
roles/iam.serviceAccountUser)
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk memulai atau menghentikan replikasi. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk memulai atau menghentikan replikasi:
-
Untuk mulai mereplikasi disk boot instance yang memiliki akun layanan terlampir:
-
compute.disks.startAsyncReplication -
iam.serviceAccounts.actAsdi akun layanan instance
-
-
Untuk mulai mereplikasi semua disk lainnya:
compute.disks.startAsyncReplication -
Untuk menghentikan replikasi satu disk:
compute.disks.stopAsyncReplication -
Untuk menghentikan replikasi untuk semua disk dalam grup konsistensi:
compute.disks.stopGroupAsyncReplication
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Mulai replikasi
Mulai replikasi menggunakan konsol Google Cloud , Google Cloud CLI, REST, atau Terraform.
Konsol
Di konsol Google Cloud , buka halaman Replikasi asinkron.
Klik nama disk sekunder yang ingin Anda gunakan untuk memulai replikasi.
Klik Mulai replikasi. Jendela Mulai replikasi akan terbuka.
Klik Mulai replikasi.
gcloud
Mulai replikasi menggunakan
perintah gcloud compute disks start-async-replication:
gcloud compute disks start-async-replication PRIMARY_DISK_NAME \
--PRIMARY_LOCATION_FLAG=PRIMARY_LOCATION \
--secondary-disk=SECONDARY_DISK_NAME \
--SECONDARY_LOCATION_FLAG=SECONDARY_LOCATION \
--secondary-disk-project=SECONDARY_PROJECT
Ganti kode berikut:
PRIMARY_DISK_NAME: nama disk utama.PRIMARY_LOCATION_FLAG: flag lokasi untuk disk utama. Untuk disk regional, gunakan--region. Untuk disk zona, gunakan--zone.PRIMARY_LOCATION: Region atau zona disk utama. Untuk disk regional, gunakan region. Untuk disk zona, gunakan zona.SECONDARY_DISK_NAME: nama disk sekunder.SECONDARY_LOCATION_FLAG: flag lokasi untuk disk sekunder. Untuk disk regional, gunakan--secondary-disk-region. Untuk disk zona, gunakan--secondary-disk-zone.SECONDARY_LOCATION: region atau zona disk sekunder. Untuk disk regional, gunakan region. Untuk disk zona, gunakan zona.SECONDARY_PROJECT: project yang berisi disk sekunder.
Go
Java
Node.js
Python
REST
Mulai replikasi menggunakan salah satu metode berikut:
Mulai replikasi untuk disk zona menggunakan metode
disks.startAsyncReplication:POST https://compute.googleapis.com/compute/v1/projects/PRIMARY_DISK_PROJECT/zones/PRIMARY_LOCATION/disks/PRIMARY_DISK_NAME/startAsyncReplication { "asyncSecondaryDisk": "projects/SECONDARY_DISK_PROJECT/SECONDARY_LOCATION_PARAMETER/SECONDARY_LOCATION/disks/SECONDARY_DISK_NAME" }Mulai replikasi untuk disk regional menggunakan metode
regionDisks.startAsyncReplication:POST https://compute.googleapis.com/compute/v1/projects/PRIMARY_DISK_PROJECT/regions/PRIMARY_LOCATION/regionDisks/PRIMARY_DISK_NAME/startAsyncReplication { "asyncSecondaryDisk": "projects/SECONDARY_DISK_PROJECT/SECONDARY_LOCATION_PARAMETER/SECONDARY_LOCATION/disks/SECONDARY_DISK_NAME" }
Ganti kode berikut:
PRIMARY_DISK_PROJECT: project yang berisi disk utama.PRIMARY_LOCATION: Region atau zona disk utama. Untuk disk regional, gunakan region. Untuk disk zona, gunakan zona.PRIMARY_DISK_NAME: nama disk utama.SECONDARY_DISK_PROJECT: project yang berisi disk sekunder.SECONDARY_LOCATION_PARAMETER: parameter lokasi untuk disk sekunder. Untuk disk regional, gunakanregions. Untuk disk zona, gunakanzones.SECONDARY_LOCATION: region atau zona disk sekunder. Untuk disk regional, gunakan region. Untuk disk zona, gunakan zona.SECONDARY_DISK_NAME: nama disk sekunder.
Terraform
Untuk memulai replikasi antara disk utama dan sekunder, gunakan resource compute_disk_async_replication.
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
Menghentikan replikasi
Anda dapat menghentikan replikasi untuk satu disk utama atau sekunder, atau untuk semua disk dalam grup konsistensi. Jika Anda menghentikan replikasi untuk satu disk dalam grup konsistensi, waktu replikasi untuk disk tersebut menjadi tidak sinkron dengan disk lain dalam grup konsistensi.
Penghentian replikasi dilakukan dalam skenario failover dan failback. Jika menghentikan replikasi, Anda tidak dapat memulai ulang replikasi ke disk sekunder yang sama. Jika ingin memulai ulang replikasi, Anda harus membuat disk sekunder baru dan memulai lagi.
Jika Anda menghentikan replikasi pada disk, status replikasi disk akan berubah menjadi
STOPPED. Status replikasi disk lain dalam pasangan replikasi disk
(disk primer atau sekunder terkait) akan diupdate menjadi
STOPPED di lain waktu. Jika ingin menghindari jeda waktu dan mengupdate
status replikasi disk lain dengan segera menjadi STOPPED, Anda juga harus menghentikan replikasi
pada disk lain secara manual. Menghentikan replikasi di kedua disk
tidak memengaruhi waktu penghentian replikasi, tetapi hanya
memengaruhi status replikasi disk.
Menghentikan replikasi untuk satu disk
Hentikan replikasi untuk satu disk menggunakan konsol Google Cloud , Google Cloud CLI, atau REST.
Konsol
Hentikan replikasi dengan melakukan hal berikut:
Di konsol Google Cloud , buka halaman Replikasi asinkron.
Klik nama disk primer atau sekunder yang replikanya ingin dihentikan. Halaman Kelola disk akan terbuka.
Klik Hentikan replikasi. Jendela Hentikan replikasi akan terbuka.
Klik Hentikan replikasi.
gcloud
Hentikan replikasi menggunakan
perintah gcloud compute disks stop-async-replication:
gcloud compute disks stop-async-replication DISK_NAME \
--LOCATION_FLAG=LOCATION
Ganti kode berikut:
DISK_NAME: nama disk.LOCATION_FLAG: flag lokasi untuk disk. Untuk disk regional, gunakan--region. Untuk disk zona, gunakan--zone.LOCATION: region atau zona disk. Untuk disk regional, gunakan region. Untuk disk zona, gunakan zona.
Go
Java
Node.js
Python
REST
Hentikan replikasi menggunakan salah satu metode berikut:
Hentikan replikasi untuk disk zona menggunakan metode
disks.stopAsyncReplication:POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/LOCATION/disks/DISK_NAME/stopAsyncReplication { }Hentikan replikasi untuk disk regional menggunakan metode
regionDisks.stopAsyncReplication:POST https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/LOCATION/regionDisks/DISK_NAME/stopAsyncReplication { }
Ganti kode berikut:
PROJECT: project yang berisi disk.DISK_NAME: nama disk.LOCATION: zona atau region disk. Untuk disk zona, gunakan zona. Untuk disk regional, gunakan region.
Terraform
Untuk menghentikan replikasi pada disk utama dan sekunder, hapus resource compute_disk_async_replication.
Menghentikan replikasi untuk grup konsistensi
Hentikan replikasi untuk semua disk dalam grup konsistensi menggunakan Google Cloud konsol, Google Cloud CLI, atau REST.
Konsol
Hentikan replikasi untuk semua disk dalam grup konsistensi dengan melakukan hal berikut:
Di konsol Google Cloud , buka halaman Replikasi asinkron.
Klik tab Grup konsistensi.
Klik nama grup konsistensi yang replikasinya ingin Anda hentikan. Halaman Kelola grup konsistensi akan terbuka.
Klik Hentikan replikasi. Jendela Hentikan replikasi akan terbuka.
Klik Hentikan replikasi.
gcloud
Hentikan replikasi untuk semua disk dalam grup konsistensi menggunakan
perintah gcloud compute disks stop-group-async-replication:
gcloud compute disks stop-group-async-replication CONSISTENCY_GROUP \ --LOCATION_FLAG=LOCATION
Ganti kode berikut:
CONSISTENCY_GROUP: URL grup konsistensi. Contoh,projects/PROJECT/regions/REGION/resourcePolicies/CONSISTENCY_GROUP_NAME.LOCATION_FLAG: flag lokasi untuk disk dalam grup konsistensi. Untuk disk regional, gunakan--region. Untuk disk zona, gunakan--zone.LOCATION: region atau zona disk. Untuk disk regional, gunakan region. Untuk disk zona, gunakan zona.
Go
Java
Node.js
Python
REST
Hentikan replikasi untuk semua disk dalam grup konsistensi menggunakan salah satu metode berikut:
Hentikan replikasi untuk disk zona menggunakan metode
disks.stopGroupAsyncReplication:POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/LOCATION/disks/stopGroupAsyncReplication { "resourcePolicy": "CONSISTENCY_GROUP" }Hentikan replikasi untuk disk regional menggunakan metode
regionDisks.stopGroupAsyncReplication:POST https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/LOCATION/regionDisks/DISK_NAME/stopAsyncReplication { "resourcePolicy": "CONSISTENCY_GROUP" }
Ganti kode berikut:
DISK_NAME: nama diskLOCATION: zona atau region disk. Untuk disk zona, gunakan zona. Untuk disk regional, gunakan region.CONSISTENCY_GROUP: URL grup konsistensi. Contoh,projects/PROJECT/regions/REGION/resourcePolicies/CONSISTENCY_GROUP_NAME.
Langkah berikutnya
- Pelajari cara failover dan failback.
- Pelajari cara memantau performa Replikasi Asinkron.