Halaman ini memberikan ringkasan tentang pengalihan 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 replika ditetapkan sebagai node utama baru. Failover manual berbeda dengan failover normal karena Anda memulainya sendiri. Untuk 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 di kemudian hari.
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 instance utama dan replika kurang dari 30 MB sebelum memulai failover. Offset pada primer bertambah untuk setiap byte
data yang harus disinkronkan ke replikanya. Dalam mode limited-data-loss
, failover akan dibatalkan jika perbedaan offset terbesar antara server utama dan setiap replika adalah 30 MB atau lebih besar. Jika Anda dapat mentoleransi lebih banyak kehilangan data dan ingin
mengeksekusi pengalihan secara agresif, coba setel mode perlindungan data ke
force-data-loss
.
Mode force-data-loss
menggunakan serangkaian strategi failover untuk
mengeksekusi failover secara agresif. Failover tidak memeriksa perbedaan offset antara
replika dan primer sebelum memulai failover; Anda berpotensi
kehilangan lebih dari 30 MB perubahan data.
Metrik byte menunggu replikasi
Metrik byte yang menunggu replikasi memberi tahu Anda jumlah byte yang tersisa yang perlu disalin replika sebelum database utama dicadangkan sepenuhnya. Anda mungkin melihat peningkatan byte yang menunggu diproses saat primer mereplikasi 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 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.
Waktu untuk menjalankan failover manual
Pengalihan manual menggunakan mode perlindungan limited-data-loss
default hanya berhasil jika metrik byte yang menunggu replikasi kurang dari 30 MB. Jika Anda ingin menjalankan failover manual dengan byte yang menunggu replikasi 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 hingga metrik byte yang menunggu replikasi serendah yang Anda anggap dapat diterima sebelum menjalankan failover manual.
Potensi masalah yang menghalangi failover manual
Menjalankan failover manual pada instance Paket Dasar tidak berfungsi karena instance Paket Dasar tidak memiliki replika yang dapat digunakan untuk failover instance utama.
Jika instance Redis Anda tidak sehat, maka operasi failover manual dengan kehilangan data terbatas akan gagal karena diblokir untuk meminimalkan kehilangan data.
Jika Anda menjalankan skrip Lua yang dieksekusi tanpa batas, 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 belum selesai dan tertunda, seperti penskalaan atau pembaruan, 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 melakukan failover ke replika, koneksi yang ada ke Memorystore untuk Redis akan terputus. 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 konsolGoogle Cloud atau gcloud
.
Verifikasi konsolGoogle Cloud
Sebelum memulai failover manual, buka halaman daftar instance Memorystore for Redis, lalu klik nama instance Anda.
Kemudian, di tab Configuration, 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.
- Di toolbar konsol Google Cloud , pilih project Google Cloud Anda. Untuk konfigurasi App Hub, pilih project host App Hub atau project pengelolaan folder yang mendukung aplikasi.
- 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 Active metric categories, pilih replication.
- Di menu Active metrics, pilih Node role.
- Klik Terapkan.
Untuk menambahkan filter, yang menghapus deret waktu dari hasil kueri, 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, itu adalah node replika. Jika garis node memiliki nilai satu pada diagram, itu adalah node utama. Diagram ini merepresentasikan failover dengan menunjukkan cara peralihan garis 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 bahwa currentLocationId
telah berubah 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, primer dan replika akan beralih di antara kedua zona ini. Namun,
zona yang terkait dengan locationId
dan alternativeLocationId
tidak
berubah.