Episode ini mengoptimalkan timing Keepalived: menyetel advert_int dan mengenal satuan centisecond VRRPv3, memahami skew time dan master down interval, serta menyesuaikan daemon untuk HA skala besar dengan failover yang berlatensi rendah.

Pada topologi HA, waktu adalah segalanya. Makin cepat node baru mengambil alih VIP, makin kecil jendela gangguan bagi klien. Episode 15 membuka kotak alat performance tuning: menyetel advert_int, memahami rumus timing VRRP, dan menyesuaikan daemon agar failover terasa hampir tanpa jeda.
Tapi kecepatan bukan satu-satunya sasaran. Failover yang terlalu agresif bisa memicu flapping dan gangguan yang lebih besar. Kalian akan belajar menemukan titik keseimbangan antara latensi failover dan stabilitas, serta parameter apa saja yang aman diubah di lingkungan produksi.
advert_int adalah interval pengiriman advertisement MASTER, default 1 detik. Semakin kecil intervalnya, semakin cepat BACKUP mendeteksi MASTER mati, karena BACKUP menunggu sekitar tiga kali interval sebelum memutuskan MASTER hilang.
Keepalived modern menerima satuan centisecond dengan akhiran cs:
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 100
advert_int 100cs
virtual_ipaddress {
192.168.1.100/24 dev eth0
}
}Nilai advert_int 100cs setara dengan 1 detik. Untuk failover lebih cepat, kalian bisa menurunkan ke 50cs atau 20cs pada VRRPv3, tetapi ingat bahwa setiap advertisement adalah paket jaringan yang harus dikirim secara berkala ke semua node.
Interval kecil membuat deteksi lebih cepat tapi menambah beban jaringan dan sensitivitas terhadap packet loss. Satu paket advertisement yang hilang bukan masalah besar pada interval 1 detik, tapi bisa memicu false failover pada interval sangat kecil. Mulailah dengan 100cs dan turunkan bertahap sambil memantau kestabilan.
Seperti dibahas di episode 2, dua rumus ini menentukan kecepatan takeover:
skew_time = (256 - priority) / 256 detik
master_down_interval = (3 * advert_int) + skew_timeskew_time membuat node berprioritas tinggi menunggu lebih singkat, sehingga node yang memang pantas menjadi MASTER menang dalam kompetisi. master_down_interval adalah jendela sebelum BACKUP mengambil alih.
Dengan advert_int 100cs dan priority 90, skew time sekitar 0.65 detik dan master down interval sekitar 3.65 detik. Turunkan advert_int ke 50cs, dan master down interval menyusut ke sekitar 2.15 detik. Perhitungan sederhana ini membantu kalian memperkirakan target SLO failover sebelum mengubah konfigurasi.
Saat MASTER baru mengambil alih, GARP yang cepat membuat klien dan switch segera mengalihkan traffic:
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 100
advert_int 100cs
garp_master_delay 1
garp_master_repeat 3
virtual_ipaddress {
192.168.1.100/24 dev eth0
}
}garp_master_delay 1 mengirim GARP 1 detik setelah menjadi MASTER, dan garp_master_repeat 3 mengirimkannya tiga kali. Ini menyeimbangkan kecepatan dengan toleransi switch yang mungkin sedikit lambat menyerap GARP.
Satu daemon Keepalived bisa menangani ratusan instance VRRP. Untuk skala besar, perhatikan:
advert_int yang wajar, misalnya 100cs sampai 1 detik, untuk membatasi jumlah paket.vrrp_sync_group agar instance yang saling terkait tidak bergerak liar.interval script dan jumlah script berat.Setelah tuning, pantau daemon dari log:
sudo journalctl -u keepalived -fPerhatikan pola transisi MASTER dan BACKUP di journalctl -u keepalived. Flapping yang muncul setelah interval diperkecil adalah sinyal untuk kembali ke nilai yang lebih konservatif.
Latensi failover hanya bisa diklaim setelah diukur. Buat prosedur terukur:
date +%s.%N > /tmp/failover-start
sudo systemctl stop keepalived
while ! ping -c 1 -W 1 192.168.1.100 > /dev/null; do sleep 0.2; done
date +%s.%N > /tmp/failover-end
awk '{print "failover:", $1}' /tmp/failover-startUrutan systemctl stop keepalived lalu menunggu VIP kembali hidup mengukur jendela gangguan aktual. Catat hasilnya di setiap perubahan tuning agar keputusan didasarkan data, bukan perasaan.
Episode 15 membuat failover kalian cepat tapi tetap stabil: advert_int dalam centisecond, pemahaman skew time dan master down interval, GARP yang responsif, serta pengujian latensi yang terukur. HA kalian kini bukan hanya andal, tapi juga gesit.
Inti yang harus dibawa pulang:
advert_int menentukan kecepatan deteksi MASTER mati.50cs atau 20cs mempercepat failover tapi menambah sensitivitas.master_down_interval hampir tiga kali advert_int ditambah skew time.Di episode 16 selanjutnya kita membahas health check advanced patterns — health check untuk layanan eksternal, HTTP dan script custom, deteksi kegagalan bertingkat dengan rise dan fall, serta integrasi restart dan alerting dengan monitoring.