Episode ini membedah vrrp_instance secara menyeluruh: parameter state, priority, dan authentication, perilaku virtual IP saat failover, tracked interfaces yang menurunkan priority otomatis, serta mekanisme preemption dan preempt_delay untuk failback.

Di episode 3 kalian sudah menyalakan konfigurasi dua node. Sekarang saatnya membedah setiap baris vrrp_instance sehingga kalian paham, bukan sekadar menyalin. Episode 4 membahas parameter yang menentukan perilaku VRRP: state, priority, authentication, daftar VIP, tracked interfaces, dan aturan preemption.
Memahami bagian ini adalah pembeda antara operator yang menyelesaikan insiden dalam lima menit dan yang membabi buta me-restart node. Perilaku floating IP saat failover, kondisi MASTER vs BACKUP, dan cara preemption bekerja akan menentukan kualitas HA kalian.
Kita susun episode ini mulai dari anatomi instance yang lengkap, lalu perilaku virtual IP, tracked interfaces, dan ditutup dengan mekanisme failback.
Dua parameter pertama yang selalu kalian lihat:
state: status awal instance, MASTER atau BACKUP. Ini hanya status awal; setelah election, status aktual ditentukan priority dan kesehatan.interface: NIC tempat paket VRRP dikirim dan VIP dipasang.Pilih interface yang benar-benar menghubungkan node ke jaringan bersama. Memakai interface yang salah membuat node tidak pernah saling mendengar advertisement, dan semua node akan menganggap dirinya MASTER.
virtual_router_id (1-255) memisahkan kelompok VRRP. Dua instance dengan ID sama di jaringan yang sama akan saling berebut. priority (1-254) menentukan pemenang election:
Pastikan virtual_router_id unik untuk setiap VIP yang berbeda, dan konsisten antar node pada instance yang sama.
Blok authentication mengamankan advertisement:
authentication {
auth_type PASS
auth_pass rahasia123
}Catatan penting: pada Keepalived 2.2 ke atas, auth_type PASS sudah dihapus karena standar VRRP menilai mekanisme ini tidak aman. Di versi baru, kalian menggunakan auth_type AH atau menghilangkan blok ini sama sekali dan mengandalkan isolasi jaringan. Detail lengkapnya kita bahas di episode 9.
Blok ini berisi daftar VIP yang dimiliki instance:
virtual_ipaddress {
192.168.1.100/24 dev eth0
192.168.1.101/24 dev eth0
}Kalian bisa menempatkan beberapa VIP dalam satu instance. Saat node menjadi MASTER, semua VIP di pasang; saat turun menjadi BACKUP, semua dilepas.
Jika sebuah VIP harus dibawa oleh MASTER tapi tidak dipakai untuk advertisement VRRP (misalnya IP untuk traffic backend), gunakan blok terpisah:
virtual_ipaddress_excluded {
10.0.0.10/24 dev eth0
}Blok virtual_ipaddress_excluded berguna untuk memisahkan VIP layanan dari VIP yang terlibat mekanisme VRRP, sehingga konfigurasi tetap rapi dan mudah diinspeksi.
Saat MASTER mati, BACKUP menunggu master_down_interval, lalu mempromosikan diri dan memasang VIP. Bersamaan dengan itu, Keepalived mengirim gratuitous ARP agar klien meng-update tabel ARP dengan MAC baru. Tanpa GARP, klien akan terus mengirim ke MAC lama dan layanan tampak mati meski VIP sudah berpindah.
Interface uplink yang gagal sebaiknya menurunkan priority node secara otomatis, supaya node dengan jalur keluar yang rusak tidak tetap menjadi MASTER:
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 100
track_interface {
eth0
eth1
}
}Jika eth1 (uplink) putus, priority instance otomatis turun, dan BACKUP yang sehat akan mengambil alih VIP.
Penurunan priority per interface mengikuti weight. Nilai default adalah -2 per interface. Keepalived mengurangi priority hanya jika node tidak dalam kondisi menjadi IP address owner. Mekanisme ini memastikan MASTER yang uplink-nya bermasalah segera menyerahkan VIP ke node yang benar-benar sehat.
Secara default, preemption aktif. Artinya, jika node MASTER lama kembali sehat dengan priority lebih tinggi, dia akan merebut kembali VIP dalam waktu preempt_delay. Ini disebut failback otomatis.
Failback yang terlalu cepat bisa menyebabkan flapping saat layanan di node MASTER baru saja menyala. Tunda preemption dengan:
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 100
preempt_delay 120
virtual_ipaddress {
192.168.1.100/24 dev eth0
}
}Nilai preempt_delay 120 membuat MASTER yang kembali menunggu 120 detik sebelum merebut VIP. Ini memberi waktu service dan cache di node tersebut memanas, mengurangi risiko gangguan.
Jika kalian ingin node yang baru pulih tidak pernah merebut VIP dan tetap menjadi BACKUP, aktifkan nopreempt. Pola ini dipakai ketika failback manual lebih diinginkan, dan akan kita bedah lebih dalam di episode 18.
Setelah konfigurasi berubah, cek sintaks lalu amati:
sudo keepalived -t -f /etc/keepalived/keepalived.conf
sudo systemctl restart keepalived
sudo ip -brief addr show eth0Urutan keepalived -t lalu restart adalah rutinitas wajib setiap kali menyentuh konfigurasi. Periksa juga bahwa ip -brief addr show eth0 hanya menampilkan VIP di node yang menjadi MASTER.
Episode 4 melengkapi pemahaman kalian tentang vrrp_instance: bagaimana state, priority, dan virtual_router_id menentukan election, bagaimana VIP berperilaku saat failover, bagaimana tracked interfaces menurunkan priority, dan bagaimana preemption serta preempt_delay mengatur failback.
Inti yang harus dibawa pulang:
virtual_router_id dan VIP harus konsisten di semua node dalam satu instance.state hanya status awal; election ditentukan priority dan kesehatan.track_interface menurunkan priority saat uplink bermasalah.preempt_delay mencegah flapping.nopreempt untuk skenario failback manual atau terkontrol.Di episode 5 selanjutnya kita membahas health checks dan failover policies — menulis vrrp_script dan track_script, memakai notify hooks, menggabungkan berbagai sumber health check, serta mengatur nopreempt, preempt_delay, dan garp_master_delay agar failover kalian presisi.