Keepalived單主模式
各節點時間必須同步:
ntpdate TIME_SERVER_IP (如果沒有ntpdate,安裝ntp包,或者直接安裝ntpdate包)
vim /etc/chrony.conf
server TIME_SERVER_IP iburst
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
systemctl restart chronyd
確保iptables及selinux不會成為阻礙。
各節點之間可通過主機名互相通信(對KA並非必須):建議使用/etc/hosts文件實現(DNS服務如果有問題,還不如hosts文件好用)
確保各節點的用於集群服務的接口支持MULTICAST通信:多播或叫組播,使用D類地址(224-239)。(多播地址最好不要使用默認的,手動修改一下。因為如果好多個集群服務都是用默認的,雖然有認證機制,但是也會互相發送信息,雖然因為認證機制丟棄掉了,但也影響性能,也會產生無用的日誌。)
2、在ka1上
#vim keepalived.conf
! Configuration File for keepalived global_defs { notification_email { root@localhost(提醒是發送郵件地址) } notification_email_from keepalived@localhost(郵件來源) smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id proxy1 vrrp_mcast_group4 224.1.1.1(組播地址與備用ka服務器相同) } vrrp_instance VI_1 { state MASTER interface eth1(提供服務的網卡名稱) virtual_router_id 66(與備用ka服務器的相同,即表明在同一網段) priority 100(搶占虛擬IP的優先級) advert_int 1 authentication { auth_type PASS (認證方式:PASS為簡單字符串密碼,推薦使用;AH為IPSEC方式,不推薦使用) auth_pass 123456 } virtual_ipaddress { 172.18.0.200/16 (註意掩碼,默認為32) } }
3在ka2上
#vim keepalived.conf
! Configuration File for keepalived global_defs { notification_email { root@localhost } notification_email_from keepalived@localhost smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id proxy2 (不能與主ka相同) vrrp_mcast_group4 224.1.1.1 } vrrp_instance VI_1 { state BACKUP (備用模式) interface eth1 virtual_router_id 66 priority 80 (搶占IP優先級) advert_int 1 authentication { auth_type PASS auth_pass 123456 } virtual_ipaddress { 172.18.0.200/16 } }
啟用ka的日誌
vim /etc/sysconfig/keepalived
KEEPALIVED_OPTIONS="-D -S 3"
vim /etc/rsyslog.conf
local3.* /var/log/keepalived.log
Keepalived單主模式