Я пытаюсь настроить keepalived для балансировки 2 серверов https. Keepalived устанавливается на двух других машинах (MASTER и BACKUP), все серверы имеют 2 интерфейса enp0s3 и enp0s8. Мой keepalived.conf
global_defs {
notification_email {
igorc@encompasscorporation.com
}
notification_email_from loadbalancer1
#smtp_server mail.bigpond.com
smtp_server 127.0.0.1
smtp_connect_timeout 5
router_id lb1
}
vrrp_instance VI_1 {
interface enp0s3
state BACKUP
lvs_sync_daemon_interface enp0s3
virtual_router_id 50
priority 150
advert_int 3
track_interface {
enp0s3
}
authentication {
auth_type PASS
auth_pass password
}
virtual_ipaddress {
192.168.178.10/24
}
}
vrrp_instance VI_2 {
interface enp0s8
state BACKUP
lvs_sync_daemon_interface enp0s8
virtual_router_id 51
priority 150
advert_int 3
track_interface {
enp0s8
}
authentication {
auth_type PASS
auth_pass password1
}
virtual_ipaddress {
192.168.0.10/24
}
notify_master "/etc/keepalived/iptables.sh 192.168.0.10 master"
notify_backup "/etc/keepalived/iptables.sh 192.168.0.10 backup"
notify_fault "/etc/keepalived/iptables.sh 192.168.0.10 backup"
}
virtual_server 192.168.178.10 443 {
delay_loop 6
lb_algo rr
lb_kind NAT
protocol TCP
real_server 192.168.0.104 443 {
weight 10
MISC_CHECK {
misc_path "/etc/keepalived/check_http_server.sh 192.168.0.104 443"
misc_timeout 2
user root
}
}
real_server 192.168.0.103 443 {
weight 10
MISC_CHECK {
misc_path "/etc/keepalived/check_http_server.sh 192.168.0.103 443"
misc_timeout 2
user root
}
}
}
, где уведомить. sh:
#!/bin/bash
VIP=$2
case "$1" in
add)
/sbin/iptables -A PREROUTING -t nat -d $VIP -p tcp -j REDIRECT
;;
del)
/sbin/iptables -D PREROUTING -t nat -d $VIP -p tcp -j REDIRECT
;;
*)
echo "Usage: $0 {add|del} ipaddress"
exit 1
esac
exit 0
Только с этой конфигурацией скручивание на vip 192.168.178.10 не удается. Я попытался добавить этот рул на master / backup:
iptables -A INPUT -i enp0s3 -p vrrp -j ACCEPT
iptables -A OUTPUT -o enp0s3 -p vrrp -j ACCEPT
iptables -A INPUT -d 224.0.0.0/8 -i enp0s3 -j ACCEPT
iptables -I INPUT -p 112 -d 224.0.0.18 -j ACCEPT
iptables -I INPUT -p 51 -d 224.0.0.18 -j ACCEPT
iptables -A FORWARD -i enp0s3 -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.178.0/24 -j MASQUERADE
, но не работает.
На реальном сервере я изменил маршрут gw с 192.168.178.1 на 192.168. 0.10 является правильным?
Какой руль мне нужно использовать или изменить?
Завиток не работает внутренний для keepalived сервера и внешний
Большое спасибо