使用keepalive實現lvs的健康自動檢測和冗餘判斷
阿新 • • 發佈:2021-01-10
(1)健康檢測
在做過lvs負載均衡實驗後,將所新增的策略刪除,然後,使用keepalived自動新增策略。
[[email protected] mnt]# ipvsadm -C
策略刪除成功:
新增的地址刪除:
[[email protected] mnt]# ip addr del 172.25.254.100 dev eth0
刪除成功:
配置keepalived服務:
[[email protected] mnt]# yum search keepalive
[[email protected] mnt]# yum install -y keepalived.x86_64
[[email protected] mnt]# cd /etc/keepalived/
[[email protected] keepalived]# vim keepalived.conf
global_defs {
notification_email {
[email protected]
}
notification_email_from Alexandre.[email protected].loc
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_DEVEL
vrrp_skip_check_adv_addr
# vrrp_strict
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 140
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
172.25.254.100
}
}
virtual_server 172. 25.254.100 80 {
delay_loop 3
lb_algo rr
lb_kind DR
protocol TCP
real_server 172.25.254.179 80 {
weight 1
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
real_server 172.25.254.178 80 {
weight 1
TCP_CHECK {
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
[[email protected] keepalived]# systemctl restart keepalived
我們檢視keepalive已經自動將IP和策略新增:
停止一個負載上的服務
[[email protected] ~]# systemctl stop httpd
在客戶端測試:
已自動將down掉的主機在策略中刪除:
(2)keepalived的冗餘判斷
當一個冗餘down掉:
[[email protected] keepalived]# systemctl stop keepalived
另一個keepalived節點主機:sdb4:172.25.254.177
[[email protected] keepalived]# scp keepalived.conf sdb4:/etc/keepalived/.
[[email protected] ~]# vim /etc/keepalived/keepalived.conf
[[email protected] ~]# systemctl restart keepalived
在sdb4上:
安裝lvs:
[[email protected] haproxy]# yum install -y ipvsadm
[[email protected] haproxy]# systemctl stop firewalld
自動匹配到該備胎主機:
並且日誌檔案顯示切換為master節點:
客戶端沒有感受到任何影響: