Halaman ini memberikan ringkasan tentang failover manual untuk Memorystore for Redis. Untuk mempelajari cara melakukan failover, lihat Memulai failover manual.
Apa yang dimaksud dengan failover manual?
Instance Memorystore for Redis tingkat standar menggunakan node replika untuk mencadangkan node utama. Failover normal terjadi saat node utama menjadi tidak sehat, sehingga menyebabkan replika ditetapkan sebagai node utama 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 terjadi failover yang tidak terduga nanti.
Mode perlindungan data opsional
Dua mode perlindungan data yang tersedia adalah:
- Mode
limited-data-loss
(default). - Mode
force-data-loss
.
Untuk menetapkan 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 instance utama dan replika berada di bawah 30 MB sebelum
memulai failover. Offset pada primary bertambah untuk setiap byte
data yang harus disinkronkan ke replikanya. Dalam mode limited-data-loss
, failover akan dibatalkan jika delta offset terbesar antara primer
dan setiap replika adalah 30 MB atau lebih besar. Jika Anda dapat mentolerir lebih banyak kehilangan data dan ingin
menjalankan failover secara agresif, coba tetapkan mode perlindungan data ke
force-data-loss
.
Mode force-data-loss
menggunakan rantai strategi failover untuk
mengeksekusi failover secara agresif. Fitur ini tidak memeriksa delta offset antara replika dan primer sebelum memulai failover; Anda berpotensi kehilangan perubahan data lebih dari 30 MB.
Metrik byte yang menunggu replikasi
Metrik byte yang menunggu replikasi memberi tahu Anda jumlah byte yang tersisa yang perlu disalin oleh replika sebelum database utama dicadangkan sepenuhnya. Anda mungkin mengamati peningkatan byte yang tertunda saat primer direplikasi ke replika selama failover. Jika failover dipicu oleh error hardware, Anda mungkin melihat byte kosong 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 pada 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 menggunakan mode perlindungan limited-data-loss
default hanya berhasil jika metrik byte yang menunggu replika kurang dari 30 MB. Jika Anda
ingin menjalankan failover manual dengan byte yang menunggu replika lebih tinggi dari
30 MB, gunakan mode perlindungan force-data-loss
.
Jika Anda mencoba mempertahankan data sebanyak mungkin, hentikan sementara aplikasi Anda agar tidak menulis ke instance Redis, dan tunggu untuk menjalankan penggantian manual hingga metrik byte yang menunggu replika serendah yang Anda anggap dapat diterima.
Potensi masalah yang memblokir failover manual
Menjalankan failover manual pada instance Paket Dasar tidak berfungsi karena instance Paket Dasar tidak memiliki replika yang dapat digunakan untuk failover utama.
Jika instance Redis Anda tidak sehat, operasi failover manual dengan kehilangan data terbatas akan gagal karena diblokir untuk pengurangan kehilangan data.
Jika menjalankan skrip Lua yang dieksekusi tanpa batas waktu, Anda harus menggunakan
force-data-loss
untuk memulai failover. Dalam situasi ini, operasi failover dengan kehilangan data terbatas tidak akan berhasil diselesaikan.Jika instance Anda memiliki operasi yang tertunda dan tidak lengkap, 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 beralih ke replika, koneksi yang ada ke Memorystore untuk Redis akan dihentikan. 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 Konsol Google Cloud atau gcloud
.
Verifikasi konsol Google Cloud
Sebelum memulai failover manual, buka halaman daftar instance Memorystore for Redis, lalu klik nama instance Anda.
Kemudian, di tab Konfigurasi, di samping Primary Location, lihat zona tempat node utama Anda berada. Catat zona. Periksa halaman ini lagi saat Anda menyelesaikan failover manual untuk mengonfirmasi bahwa node utama telah beralih zona.
Verifikasi Cloud Monitoring
Untuk melihat metrik untuk resource yang dimonitor menggunakan Metrics Explorer, lakukan langkah berikut:
-
Di konsol Google Cloud, buka halaman leaderboard Metrics explorer:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.
- Pada elemen Metric, luaskan menu Select a metric,
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 Active metric categories, pilih replication.
- Di menu Active metrics, pilih Node role.
- Klik Terapkan.
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 menampilkan node utama dan replika dengan dua garis. Jika garis node memiliki nilai nol pada diagram, node tersebut adalah node replika. Jika garis node memiliki nilai satu pada diagram, node tersebut adalah node utama. Diagram ini mewakili failover dengan menunjukkan bagaimana 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 yang diberi label currentLocationId
. Catat zona.
Setelah menyelesaikan failover manual, Anda dapat mengonfirmasi bahwa node primer Anda
beralih ke zona baru dengan menjalankan perintah gcloud redis instances describe
lagi dan memeriksa apakah currentLocationId
mengubah zona.
Selain itu, label locationId
memberi tahu Anda zona tempat Anda awalnya menyediakan node utama. Label alternativeLocationId
memberi tahu Anda zona tempat sistem awalnya menyediakan node replika Anda. Setiap kali
failover terjadi, utama dan replika akan beralih di antara kedua zona ini. Namun, zona yang terkait dengan locationId
dan alternativeLocationId
tidak berubah.