KeepAlived ( Haute disponibilité )
Introduction
Keepalived est un logiciel de routage. Le principal objectif de ce projet est de mettre en place du loadbalancing et/ou de la haute disponibilité pour les systèmes Linux et des infrastructures basées sur Linux. Le Loadbalancing repose sur Linux Virtual Server (IPVS) et la haute disponibilité fonctionne via le protocole VRRP.
Installation de keepalived
Récupération des sources
yum/apt-get install keepalived
Configuration Actif/Passif
Dans le cas d'une infrastructure web avec deux proxys en amont, en état master/slave, dont un actif, et l'autre est en secours
- Serveur Proxy1 :
- /etc/keepalived/keepalived.conf
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # # Configuration Keepalived: FailOver # # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ global_defs { notification_email { mail.a.prevenir@domaine.fr } notification_email_from proxy1@domaine.fr smtp_server xxx.xxx.xxx.xxx # il vaut mieux l'ip que le hostname des problèmes peuvent survenir smtp_connect_timeout 30 } # instance VRRP pour smtp vrrp_instance VI1 { interface ens192 state MASTER # MASTER sur proxy1, SLAVE sur proxy2 virtual_router_id 11 priority 101 # 101 on master, 100 on backup virtual_ipaddress { 192.168.1.4/24 brd 192.168.1.255 dev ens192 label ens192:0 } smtp_alert authentication { auth_type PASS auth_pass mdp8char } }
- Serveur Proxy2 :
- /etc/keepalived/keepalived.conf
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # # Configuration Keepalived: FailOver # # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ global_defs { notification_email { mail.a.prevenir@domaine.fr } notification_email_from proxy2@domaine.fr smtp_server xxx.xxx.xxx.xxx smtp_connect_timeout 30 } # instance VRRP pour smtp vrrp_instance VI1 { interface ens192 state SLAVE virtual_router_id 11 priority 100 # 101 on master, 100 on backup virtual_ipaddress { 192.168.1.4/24 brd 192.168.1.255 dev ens192 label ens192:0 } smtp_alert authentication { auth_type PASS auth_pass mdp8char } }
Configuration Actif/Actif
Dans le cas d'une infrastructure ldap avec deux proxys en amont, les deux étant actif dont ldap2 reçoit deux fois plus de requêtes que ldap1
- Serveur LDAP1 :
- /etc/keepalived/keepalived.conf
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # # Configuration Keepalived: FailOver & Round Robin Pondéré # # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ global_defs { notification_email { user@domaine.fr } notification_email_from ldaptest1@domaine.fr smtp_server IP_SMTP smtp_connect_timeout 30 } vrrp_instance VI-LDAP1 { state MASTER virtual_router_id 25 priority 150 interface eno16777984 protocol TCP virtual_ipaddress { IP_VIP/24 brd 1.2.3.255 dev em1 } smtp_alert advert_int 10 notify_master "/etc/keepalived/script_ipvs_backup.sh del IP_VIP" notify_backup "/etc/keepalived/script_ipvs_backup.sh add IP_VIP" notify_fault "/etc/keepalived/script_ipvs_backup.sh add IP_VIP" authentication{ auth_type AH auth_pass password } } virtual_server IP_VIP 389 { delay_loop 10 lb_algo rr lb_kind DR protocol TCP real_server IP_LDAP1 389 { weight 1 TCP_CHECK { connect_port 389 connect_timeout 5 } } real_server IP_LDAP2 389 { weight 2 TCP_CHECK { connect_port 389 connect_timeout 5 } } } virtual_server IP_VIP 636 { delay_loop 10 lb_algo rr lb_kind DR protocol TCP real_server IP_LDAP1 636 { weight 1 MISC_CHECK { misc_path "/etc/keepalived/script_check_ssl.sh IP_LDAP1" } } real_server IP_LDAP2 636 { weight 2 MISC_CHECK { misc_path "/etc/keepalived/script_check_ssl.sh IP_LDAP2" } }
Vous pourriez laisser un commentaire si vous étiez connecté.