Halaman ini memberikan ringkasan tentang failover manual untuk Memorystore for Redis. Untuk mempelajari cara melakukan failover, lihat Memulai failover manual.
Apa itu failover manual?
Instance Memorystore for Redis tingkat standar menggunakan node replika untuk mencadangkan node utama. Failover normal terjadi saat node utama menjadi tidak responsif, sehingga replika akan ditetapkan sebagai replika primer baru. Failover manual berbeda dengan failover normal karena Anda memulainya sendiri. Untuk mengetahui informasi selengkapnya tentang cara kerja replikasi Memorystore for Redis, lihat Ketersediaan tinggi.
Mengapa memulai failover manual?
Dengan memulai failover manual, Anda dapat menguji respons aplikasi terhadap failover. Pengetahuan ini dapat memastikan proses failover yang lebih lancar jika failover yang tidak terduga terjadi nanti.
Mode perlindungan data opsional
Dua mode perlindungan data yang tersedia adalah:
- Mode
limited-data-loss
(default). - Mode
force-data-loss
.
Untuk menyetel mode perlindungan data, gunakan salah satu perintah berikut:
gcloud redis instances failover INSTANCE_NAME --data-protection-mode=limited-data-loss
atau
gcloud redis instances failover INSTANCE_NAME --data-protection-mode=force-data-loss
Cara kerja mode perlindungan data
Mode limited-data-loss
meminimalkan kehilangan data dengan memverifikasi bahwa
perbedaan data antara yang utama dan replika di bawah 30 MB sebelum
memulai failover. Offset pada utama bertambah untuk setiap byte
data yang harus disinkronkan ke replikanya. Dalam mode limited-data-loss
, failover akan dibatalkan jika delta offset terbesar antara replika utama dan setiap replika adalah 30 MB atau lebih besar. Jika Anda dapat menoleransi lebih banyak kehilangan data dan ingin
menjalankan failover secara agresif, coba setel mode perlindungan data ke
force-data-loss
.
Mode force-data-loss
menggunakan rantai strategi failover untuk
menjalankan failover secara agresif. Alat ini tidak memeriksa delta offset antara
yang utama dan replika sebelum memulai failover; Anda berpotensi
kehilangan lebih dari 30 MB perubahan data.
Byte menunggu metrik replikasi
Metrik byte replikasi yang tertunda memberi tahu Anda jumlah byte tersisa yang perlu disalin oleh replika sebelum replika utama dicadangkan sepenuhnya. Anda mungkin mengamati peningkatan byte yang tertunda saat replika utama direplikasi ke replika selama failover. Jika failover dipicu oleh error hardware, Anda mungkin melihat kosong dalam byte yang menunggu replikasi karena nilai offset tidak dapat diperoleh hingga replika baru diperbaiki dari error host.
Anda dapat mengakses metrik ini di Konsol Google Cloud di halaman detail instance. Untuk melihat halaman detail instance, klik ID instance di halaman daftar instance project Anda.
Atau, akses Metrics Explorer untuk project Anda, lalu telusuri metrik redis.googlapis.com/replication/offset_diff.
Kapan harus menjalankan failover manual
Failover manual yang menggunakan mode perlindungan limited-data-loss
default hanya berhasil jika metrik replikasi tertunda byte kurang dari 30 MB. Jika Anda ingin menjalankan failover manual dengan replikasi tertunda yang berukuran byte lebih tinggi dari 30 MB, gunakan mode perlindungan force-data-loss
.
Jika Anda mencoba mempertahankan sebanyak mungkin data, hentikan sementara aplikasi Anda agar tidak menulis ke instance Redis, dan tunggu untuk menjalankan failover manual Anda hingga metrik replikasi yang tertunda serendah yang Anda anggap dapat diterima.
Potensi masalah yang memblokir failover manual
Menjalankan failover manual pada instance Paket Dasar tidak akan berfungsi karena instance Tingkat Dasar tidak memiliki replika yang dapat digunakan oleh instance utama untuk melakukan failover.
Jika instance Redis Anda tidak responsif, operasi failover manual kehilangan data yang terbatas akan gagal karena diblokir untuk meminimalkan kehilangan data.
Jika menjalankan skrip Lua yang dieksekusi tanpa batas, Anda harus menggunakan
force-data-loss
untuk memulai failover. Dalam situasi ini, operasi failover kebocoran data terbatas tidak akan berhasil diselesaikan.Jika ada operasi yang belum selesai di instance Anda, seperti penskalaan atau update, operasi failover manual akan diblokir. Anda harus menunggu hingga instance berada dalam status
READY
untuk menjalankan failover manual.
Koneksi aplikasi klien
Saat node utama Anda gagal melewati replika, koneksi yang ada ke Memorystore untuk Redis akan dihapus. Namun, saat terhubung kembali, aplikasi Anda akan otomatis dialihkan ke node utama baru menggunakan string koneksi atau alamat IP yang sama.
Memverifikasi failover manual
Anda dapat memverifikasi keberhasilan operasi failover manual dengan
Google Cloud Console atau gcloud
.
Verifikasi konsol Google Cloud
Sebelum memulai failover manual, buka halaman daftar instance Memorystore for Redis, lalu klik nama instance Anda.
Kemudian, pada tab Konfigurasi, di samping Lokasi Utama, lihat zona tempat node utama Anda berada. Catat zona tersebut. Periksa kembali halaman ini saat Anda menyelesaikan failover manual untuk mengonfirmasi bahwa node utama beralih zona.
Verifikasi Cloud Monitoring
Agar dapat menampilkan metrik untuk resource yang dipantau dengan menggunakan Metrics Explorer, lakukan hal berikut:
-
Di panel navigasi Konsol Google Cloud, pilih Monitoring, lalu pilih leaderboard Metrics Explorer:
- Pada elemen Metrik, luaskan menu Pilih metrik, masukkan
Node role
di panel filter, lalu gunakan submenu untuk memilih jenis dan metrik resource tertentu:- Di menu Active resources, pilih Cloud Memorystore Redis.
- Di menu Kategori metrik aktif, pilih replikasi.
- Di menu Metrik aktif, pilih Peran node.
- Klik Apply.
Untuk menghapus deret waktu dari tampilan, gunakan elemen Filter.
Untuk menggabungkan deret waktu, gunakan menu pada elemen Agregasi. Misalnya, untuk menampilkan pemakaian CPU bagi VM Anda, berdasarkan zonanya, tetapkan menu pertama ke Rataan dan menu kedua ke zona.
Semua deret waktu ditampilkan saat menu pertama elemen Agregasi ditetapkan ke Unaggregated. Setelan default untuk elemen Agregasi ditentukan oleh jenis metrik yang Anda pilih.
- Untuk kuota dan metrik lain yang melaporkan satu sampel per hari, lakukan tindakan berikut:
- Di panel Display, tetapkan Jenis widget ke Diagram batang bertumpuk.
- Tetapkan jangka waktu setidaknya satu minggu.
Diagram Cloud Monitoring merepresentasikan node utama dan replika dengan dua garis. Jika garis node memiliki nilai nol pada diagram, artinya garis tersebut adalah node replika. Jika garis node memiliki nilai satu pada diagram, garis tersebut adalah node utama. Diagram merepresentasikan failover dengan menunjukkan cara garis beralih dari satu ke nol, dan nol ke satu.
Verifikasi gcloud
Sebelum memulai failover manual, gunakan perintah berikut untuk memeriksa zona tempat node utama Anda berada:
gcloud redis instances describe [INSTANCE_ID] --region=[REGION]
Node utama Anda berada di zona dengan label currentLocationId
. Catat zona tersebut.
Setelah menyelesaikan failover manual, Anda dapat mengonfirmasi bahwa node utama
beralih ke zona baru dengan menjalankan perintah gcloud redis instances describe
lagi dan memeriksa apakah currentLocationId
berubah zona.
Selain itu, label locationId
memberi tahu Anda zona tempat node utama Anda disediakan. Label alternativeLocationId
memberi tahu Anda
zona tempat sistem awalnya menyediakan node replika Anda. Setiap kali failover terjadi, pengalihan utama dan replika di antara kedua zona ini terjadi. Namun,
zona yang terkait dengan locationId
dan alternativeLocationId
tidak
berubah.