Am continuat să rulez pe 2 (centos7) vms și pot vedea că failover-ul funcționează cu succes în cea mai simplă formă prin emiterea ping -t 192.168.1.11
și tragerea vm1 din rețea, după care văd de obicei doar unul dintre ping-uri expirat înainte ca vm2 să-l ridice și să înceapă să răspundă.
După failoverul cu succes, sistemul se resetează după ce vm1 este readus online și se pare că de obicei nu văd niciun timeout pentru ping-uri, deși îmi imaginez că asta se datorează întâmplării, deoarece lucrurile nu sunt sincronizate...
Problema pe care o văd este cu http în aceeași configurație. Am o aplicație web care rulează pe vm1 și vm2 și pot vedea fiecare GET pe măsură ce intră (prin ssh fie pe vm1, fie pe vm2). De asemenea, am scris o aplicație de testare pe caseta mea de dezvoltare pentru a bucla http get-uri simple ale paginii principale (cu 1s timeout) în timp ce elimin vm1 din rețea și văd timpi de failover/resetare oriunde de la <1sec până la 27sec.
uitându-se la documentație Aici Nu văd niciun parametri pe care l-aș putea schimba și care ar putea influența acest lucru, dar aș dori cumva să aflu mai multe informații despre motivul pentru care acest lucru variază atât de mult și dacă pot reduce timpul de failover. De asemenea acest Răspunsul de top sugerează că advert_int este semnificativ, dar l-am setat la unul și încă văd aceste rezultate variate...
aici este fișierul de configurare kad al vm1:
global_defs {
rădăcină script_user
}
vrrp_instance VIP01 {
stat MAESTRU
interfata eth0
virtual_router_id 101
prioritate 150
advert_int 1
autentificare {
auth_type PASS
auth_pass [snip]
}
adresa_virtuală {
192.168.1.11
}
}
și vm2:
global_defs {
rădăcină script_user
}
vrrp_instance VIP01 {
stare BACKUP
interfata eth0
virtual_router_id 101
prioritate 100
advert_int 1
autentificare {
auth_type PASS
auth_pass [snip]
}
adresa_virtuală {
192.168.1.11
}
}