keepalived:vrrp協議 主備模型
第一步配置出始環境: 準備兩節點: 主節點:172.18.57.7 long1 備節點:172.18.57.8 long2 (1) 各節點時間必須同步; 同步時間: ~]# yum -y install chrony ~]# vim /etc/chrony.conf ~]# systemctl start chronyd ~]# chronyc sources ~]# chronyc sourcestats (2) 確保iptables及selinux不會成為阻礙; 清空防火墻: ~]# iptables -F 關閉SELinux ~]# setenforce 0 清空規則: ~]# ipvsadm -C 重新啟動網絡: ~]#systemctl restart network (3) 各節點之間可通過主機名互相通信(對KA并非必須); 修改域名解析使用/etc/hosts文件實現; ~]#vim /etc/hosts 172.18.57.7 long1 172.18.57.8 long2
第二步:keepalived安裝 long1 ~]#yum -y install keepalived long2 ~]#yum -y install keepalived
第三步:修改配置文件 long1 ~]# cp /etc/keepalived/keepalived.conf{,.bak} long1 ~]# vim /etc/keepalived/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 long1 vrrp_mcast_group4 224.0.101.57 } vrrp_instance myr { state MASTER interface ens33 virtual_router_id 57 priority 100 advert_int 1 authentication { auth_type PASS auth_pass dAcLuTSt } virtual_ipaddress { 172.18.57.57/16 dev ens33 } } [root@long1 ~]# scp /etc/keepalived/keepalived.conf long2:/etc/keepalived/ [root@long2 ~]#vim /etc/keepalived/keepalived.conf router_id long2 state BACKUP priority 98
第四步:啟動服務 先啟動備節點: [root@long2 ~]#systemctl start keepalived.service [root@long2 ~]#systemctl status keepalived.service [29820]: Using LinkWatch kernel netlink reflector... [29820]: VRRP_Instance(myr) Entering BACKUP STATE [29820]: VRRP sockpool: [ifindex(2), proto(112), unicast(0), fd(10,11)] [29820]: Started LVS and VRRP High Availability Monitor. [29820]: VRRP_Instance(myr) Transition to MASTER STATE [29820]: VRRP_Instance(myr) Entering MASTER STATE [29820]: VRRP_Instance(myr) setting protocol VIPs. [29820]: VRRP_Instance(myr) Sending gratuitous ARPs on ens33 for 172.18.57.57 [29820]: Netlink reflector reports IP 172.18.57.57 added [29820]: VRRP_Instance(myr) Sending gratuitous ARPs on ens33 for 172.18.57.57 [root@long2 ~]#ip a inet 172.18.57.57/16 scope global secondary ens33 啟用主節點: [root@long1 ~]#systemctl start keepalived.service [root@long1 ~]#systemctl status keepalived.service [15994]: VRRP_Instance(myr) Entering MASTER STATE [15994]: VRRP_Instance(myr) setting protocol VIPs. [15994]: VRRP_Instance(myr) Sending gratuitous ARPs on ens33 for 172.18.57.57 [15993]: Netlink reflector reports IP 172.18.57.57 added [15994]: VRRP_Instance(myr) Sending gratuitous ARPs on ens33 for 172.18.57.57 [root@long1 ~]#ip a inet 172.18.57.57/16 scope global secondary ens33 [root@long2 ~]#systemctl status keepalived.service [29820]: VRRP_Instance(myr) Received higher prio advert [29820]: VRRP_Instance(myr) Entering BACKUP STATE [29820]: VRRP_Instance(myr) removing protocol VIPs. [29819]: Netlink reflector reports IP 172.18.57.57 removed [root@long2 ~]#ip a 無地址 [root@long1 ~]# tcpdump -i ens33 host 224.0.101.57 00:35:51.123982 IP long1 > 224.0.101.57: VRRPv2, Advertisement, vrid 57, prio 100, authtype simple, intvl 1s, length 20 [root@long2 ~]#tcpdump -i ens33 -nn host 224.0.101.57 00:39:26.811819 IP 172.18.57.7 > 224.0.101.57: VRRPv2, Advertisement, vrid 57, prio 100, authtype simple, intvl 1s, length 20
原創文章,作者:CL80516000,如若轉載,請注明出處:http://www.www58058.com/75752