1、配置selinux ,iptables ,同步時間
各節點時間必須同步:
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 } }
vrrp_instance <STRING> {
state MASTER|BACKUP:當前節點在此虛擬路由器上的初始狀態;只能有一個是MASTER,餘下的都應該爲BACKUP
interface IFACE_NAME:綁定爲當前虛擬路由器使用的物理接口
virtual_router_id VRID:當前虛擬路由器惟一標識,範圍是0-255
priority 100:當前物理節點在此虛擬路由器中的優先級;範圍1-254
advert_int 1:vrrp通告的時間間隔,默認1s
}
啓用ka的日誌
vim /etc/sysconfig/keepalived
KEEPALIVED_OPTIONS="-D -S 3"
vim /etc/rsyslog.conf
local3.* /var/log/keepalived.log