Keepalive se utiliza para la conmutación por error de IP entre dos servidores. Sus facilidades para balanceo de carga y alta disponibilidad a infraestructuras basadas en Linux. Trabajó en el protocolo VRRP (Protocolo de redundancia de enrutador virtual). En este tutorial, hemos configurado la conmutación por error de IP entre dos sistemas Linux que se ejecutan como un equilibrador de carga para el equilibrio de carga y las infraestructuras de alta disponibilidad.
También puede interesarle nuestro tutorial Cómo configurar HAProxy en Ubuntu y Linuxmint.
Escenario de red:
1. LB1 Server: 192.168.10.111 (eth0) 2. LB2 Server: 192.168.10.112 (eth0) 3. Virtual IP: 192.168.10.121
Espero que comprenda mejor la configuración con la estructura anterior. Pasemos a la configuración de conmutación por error de IP entre los servidores LB1 y LB2.
Paso 1:instalar los paquetes necesarios
En primer lugar, use el siguiente comando para instalar los paquetes necesarios para configurar Keepalived en el servidor.
sudo apt-get update sudo apt-get install linux-headers-$(uname -r)
Paso 2:instalar Keepalived
Los paquetes Keepalived están disponibles en los repositorios apt predeterminados. Así que solo use un comando para instalarlo en ambos servidores.
sudo apt-get install keepalived
Paso 3:configurar Keepalived en LB1.
Ahora cree o edite el archivo de configuración de Keepalived /etc/keepalived/keepalived.conf en LB1 y agregue las siguientes configuraciones. Actualice todos los valores resaltados en rojo con la configuración de su red y sistema.
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived global_defs { notification_email {[email protected] [email protected] } notification_email_from[email protected] smtp_server localhost smtp_connect_timeout 30 } vrrp_instance VI_1 { state MASTER interfaceeth0 virtual_router_id 101 priority 101 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress {192.168.10.121 } }
Paso 4:configure KeepAlived en LB2.
Además, cree o edite el archivo de configuración de Keepalived /etc/keepalived/keepalived.conf en LB2 y agregue la siguiente configuración. Al realizar cambios en el archivo de configuración de LB2, asegúrese de establecer valores de prioridad inferiores a LB1. Por ejemplo, la siguiente configuración muestra un valor de prioridad 100 que LB1 tiene 101.
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived global_defs { notification_email {1. Prioridad el valor será más alto en el servidor maestro, no importa lo que haya usado en el estado. Si su estado es MAESTRO pero su prioridad es menor que el enrutador con RESPALDO, perderá el estado MAESTRO.[email protected] [email protected] } notification_email_from[email protected] smtp_server localhost smtp_connect_timeout 30 } vrrp_instance VI_1 { state MASTER interfaceeth0 virtual_router_id 101 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress {192.168.10.121 } }
2. id_enrutador_virtual debe ser igual en los servidores LB1 y LB2.
3. vrrp_instance único predeterminado admite hasta 20 virtual_ipaddress . Para agregar más direcciones, debe agregar más vrrp_instance
Paso 5:inicie el servicio KeepAlived
Inicie el servicio keepalived con el siguiente comando y también configúrelo para que se inicie automáticamente en el arranque del sistema.
sudo service keepalived start
Paso 6:comprobar las direcciones IP virtuales
Por defecto, la IP virtual se asignará al servidor maestro. En caso de que el maestro se caiga, se asignará automáticamente al servidor esclavo. Use el siguiente comando para mostrar la IP virtual asignada en la interfaz.
ip addr show eth0
Salida de muestra
2: eth0:mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 08:00:27:b9:b0:de brd ff:ff:ff:ff:ff:ff inet 192.168.10.111/24 brd 192.168.1.255 scope global eth0 valid_lft forever preferred_lft forever inet 192.168.10.121/32 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::11ab:eb3b:dbce:a119/64 scope link valid_lft forever preferred_lft forever
Paso 7:verificar la configuración de conmutación por error de IP - Apague el servidor maestro (LB1) y verifique si las direcciones IP se asignan automáticamente al servidor esclavo.
ip addr show eth0
- Ahora inicie LB1 y detenga el servidor esclavo (LB2). Las direcciones IP se asignarán automáticamente al servidor maestro.
ip addr show eth0
- Vea los archivos de registro para asegurarse de que funcionen
tailf /var/log/syslog
Salida de muestra
Feb 7 17:24:51 tecadmin Keepalived_healthcheckers[23177]: Registering Kernel netlink reflector Feb 7 17:24:51 tecadmin Keepalived_healthcheckers[23177]: Registering Kernel netlink command channel Feb 7 17:24:51 tecadmin Keepalived_healthcheckers[23177]: Opening file '/etc/keepalived/keepalived.conf'. Feb 7 17:24:51 tecadmin Keepalived_healthcheckers[23177]: Configuration is using : 11104 Bytes Feb 7 17:24:51 tecadmin Keepalived_healthcheckers[23177]: Using LinkWatch kernel netlink reflector... Feb 7 17:24:52 tecadmin Keepalived_vrrp[23178]: VRRP_Instance(VI_1) Transition to MASTER STATE Feb 7 17:24:53 tecadmin Keepalived_vrrp[23178]: VRRP_Instance(VI_1) Entering MASTER STATE Feb 7 17:24:53 tecadmin avahi-daemon[562]: Registering new address record for 192.168.10.121 on eth0.IPv4.