Я настроил балансировщик нагрузки при отказе, чтобы он действовал как резервный, когда мой основной сервер выходит из строя. Поэтому я настроил Keepalived, который переключает плавающий виртуальный IP-адрес на другую машину всякий раз, когда не может найти службу HAProxy, работающую на другой машине. IP-адреса, указанные в файле conf, присутствуют на моем интерфейсе eth1.
На моем первичный балансировщик нагрузки я получаю
статус systemctl
● keepalived.service - Keepalive Daemon (LVS and VRRP)
Loaded: loaded (/lib/systemd/system/keepalived.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2022-05-15 18:06:32 UTC; 21min ago
Main PID: 659 (keepalived)
Tasks: 2 (limit: 1131)
Memory: 4.7M
CGroup: /system.slice/keepalived.service
├─659 /usr/sbin/keepalived --dont-fork
└─711 /usr/sbin/keepalived --dont-fork
May 15 18:27:57 ubuntu-s-1vcpu-1gb-blr1-01 killall5[2250]: only one argument, a signal number, allowed
May 15 18:28:01 ubuntu-s-1vcpu-1gb-blr1-01 killall5[2252]: only one argument, a signal number, allowed
May 15 18:28:03 ubuntu-s-1vcpu-1gb-blr1-01 killall5[2253]: only one argument, a signal number, allowed
May 15 18:28:05 ubuntu-s-1vcpu-1gb-blr1-01 killall5[2256]: only one argument, a signal number, allowed
May 15 18:28:07 ubuntu-s-1vcpu-1gb-blr1-01 killall5[2259]: only one argument, a signal number, allowed
May 15 18:28:09 ubuntu-s-1vcpu-1gb-blr1-01 killall5[2260]: only one argument, a signal number, allowed
May 15 18:28:11 ubuntu-s-1vcpu-1gb-blr1-01 killall5[2261]: only one argument, a signal number, allowed
May 15 18:28:13 ubuntu-s-1vcpu-1gb-blr1-01 killall5[2262]: only one argument, a signal number, allowed
May 15 18:28:15 ubuntu-s-1vcpu-1gb-blr1-01 killall5[2263]: only one argument, a signal number, allowed
May 15 18:28:17 ubuntu-s-1vcpu-1gb-blr1-01 killall5[2264]: only one argument, a signal number, allowed
судо нано /etc/keepalived/keepalived.conf
vrrp_script chk_haproxy {
script "pidof haproxy"
interval 2
}
vrrp_instance VI_1 {
interface eth1
state MASTER
priority 200
virtual_router_id 33
unicast_src_ip 10.122.0.2
unicast_peer {
10.122.0.3
}
authentication {
auth_type PASS
auth_pass password
}
track_script {
chk_haproxy
}
notify_master /etc/keepalived/master.sh
}
На моем вторичный балансировщик нагрузки
статус systemctl
● keepalived.service - Keepalive Daemon (LVS and VRRP)
Loaded: loaded (/lib/systemd/system/keepalived.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2022-05-15 17:57:16 UTC; 36min ago
Main PID: 329993 (keepalived)
Tasks: 2 (limit: 4677)
Memory: 1.9M
CGroup: /system.slice/keepalived.service
├─329993 /usr/sbin/keepalived --dont-fork
└─330005 /usr/sbin/keepalived --dont-fork
May 15 17:57:16 ubuntu-s-2vcpu-4gb-blr1-01 Keepalived_vrrp[330005]: Script `chk_haproxy` now returning 1
May 15 17:57:16 ubuntu-s-2vcpu-4gb-blr1-01 Keepalived_vrrp[330005]: VRRP_Script(chk_haproxy) failed (exited with status 1)
May 15 17:57:16 ubuntu-s-2vcpu-4gb-blr1-01 Keepalived_vrrp[330005]: (VI_1) Entering FAULT STATE
May 15 18:05:21 ubuntu-s-2vcpu-4gb-blr1-01 killall5[330439]: only one argument, a signal number, allowed
May 15 18:10:13 ubuntu-s-2vcpu-4gb-blr1-01 killall5[330679]: only one argument, a signal number, allowed
May 15 18:11:37 ubuntu-s-2vcpu-4gb-blr1-01 killall5[330750]: only one argument, a signal number, allowed
May 15 18:17:53 ubuntu-s-2vcpu-4gb-blr1-01 killall5[331070]: only one argument, a signal number, allowed
May 15 18:24:21 ubuntu-s-2vcpu-4gb-blr1-01 killall5[331386]: only one argument, a signal number, allowed
May 15 18:28:11 ubuntu-s-2vcpu-4gb-blr1-01 killall5[331552]: only one argument, a signal number, allowed
May 15 18:30:31 ubuntu-s-2vcpu-4gb-blr1-01 killall5[331649]: only one argument, a signal number, allowed
судо нано /etc/keepalived/keepalived.conf
vrrp_script chk_haproxy {
script "pidof haproxy"
interval 2
}
vrrp_instance VI_1 {
interface eth1
state BACKUP
priority 100
virtual_router_id 33
unicast_src_ip 10.122.0.3
unicast_peer {
10.122.0.2
}
authentication {
auth_type PASS
auth_pass password
}
track_script {
chk_haproxy
}
notify_master /etc/keepalived/master.sh
}
Вывод pidof pidof haproxy
Начальный
root@ubuntu-s-1vcpu-1gb-blr1-01:~# pidof haproxy
726 719
Среднее
root@ubuntu-s-2vcpu-4gb-blr1-01:~# pidof haproxy
328842 328841
Примечание : Я запустил сценарий /etc/keepalived/master.sh вручную, и он успешно работал.
РЕДАКТИРОВАТЬ1: Он не работает, даже когда я использую pidof -s haproxy
балансировка нагрузки haproxy failover keepalived virtual-ip
Химаншу Поддар
1 ответ
Переустановка пакета KeepAlived решила мою проблему.
Чтобы удалить поддержку активности:
sudo apt-get remove -y keepalived
sudo apt-get remove --auto-remove -y keepalived
Установка KEEPALIVED
sudo apt-get update
sudo apt-get install -y keepalived
Химаншу Поддар