Tentang failover manual

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:

  1. Di panel navigasi Konsol Google Cloud, pilih Monitoring, lalu pilih  Metrics Explorer:

    Buka Metrics Explorer

  2. Pada elemen Metrik, luaskan menu Pilih metrik, masukkan Node role di panel filter, lalu gunakan submenu untuk memilih jenis dan metrik resource tertentu:
    1. Di menu Active resources, pilih Cloud Memorystore Redis.
    2. Di menu Kategori metrik aktif, pilih replikasi.
    3. Di menu Metrik aktif, pilih Peran node.
    4. Klik Apply.
  3. Untuk menghapus deret waktu dari tampilan, gunakan elemen Filter.

  4. 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.

  5. Untuk kuota dan metrik lain yang melaporkan satu sampel per hari, lakukan tindakan berikut:
    1. Di panel Display, tetapkan Jenis widget ke Diagram batang bertumpuk.
    2. 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.