keepalived+LVS-DR
阿新 • • 發佈:2018-09-10
分發器 scrip 文件 broadcast cast arp router lse ive 拓撲 VIP=192.168.2.133 主keepalived IP=192.168.2.129 備keepalived=192.168.2.130
RS1=192.168.2.131 RS2=192.168.2.132
一、安裝lvs和keepalived工具 echo ‘1‘ > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo ‘2‘ > /proc/sys/net/ipv4/conf/lo/arp_announce
echo ‘1‘ > /proc/sys/net/ipv4/conf/all/arp_ignore
echo ‘2‘ > /proc/sys/net/ipv4/conf/all/arp_announce
;;
stop)
/sbin/ifconfig lo:1 down
echo ‘Close LVS of Realserver DR‘
echo ‘0‘ > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo ‘0‘ > /proc/sys/net/ipv4/conf/lo/arp_announce
echo ‘0‘ > /proc/sys/net/ipv4/conf/all/arp_ignore
echo ‘0‘ > /proc/sys/net/ipv4/conf/all/arp_announce
;;
*)
echo "Usage:$0 (start|stop)"
exit 1
esac
RS1=192.168.2.131 RS2=192.168.2.132
一、安裝lvs和keepalived工具
[root@Qj01 ~]# yum install –y keepalived ipvsadm
[root@Qj11 ~]# yum install –y keepalived ipvsadm
[root@Qj11 ~]# vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived global_defs { notification_email { root@localhost } notification_email_from root@localhost smtp_server localhost smtp_connect_timeout 30 router_id node1 } vrrp_instance apache { state MASTER interface ens33 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.2.133 } } virtual_server 192.168.2.133 80 { delay_loop 6 lb_algo rr lb_kind DR nat_mask 255.255.255.0 protocol TCP real_server 192.168.2.131 80 { weight 1 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } real_server 192.168.2.132 80 { weight 1 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } }
二、編輯主keepalived配置文件
三、將配置文件傳至備份keepalived上並修改參數[root@Qj11 keepalived]# scp keepalived.conf 192.168.2.130:/etc/keepalived/
註:修改下列參數
router_id node2 #運行 keepalived 的機器標示符 } vrrp_instance apache { state BACKUP #當前 LVS 狀態為備用分發器 interface ens32 virtual_router_id 51 priority 90 #LVS 優先級,備的要比主的小 ……
RS自動化配置腳本:
[root@Qj ~]# vim /etc/init.d/lvsrsdr #寫一個配置RS的腳本
#!/bin/bash
#description:start relserver
VIP=192.168.2.133
source /etc/init.d/functions #加載環境變量(可以加載所有的環境變量)
case $1 in
start)
echo ‘start LVS of Realserver DR‘
/sbin/ifconfig lo:1 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev lo:1
echo ‘2‘ > /proc/sys/net/ipv4/conf/lo/arp_announce
echo ‘1‘ > /proc/sys/net/ipv4/conf/all/arp_ignore
echo ‘2‘ > /proc/sys/net/ipv4/conf/all/arp_announce
;;
stop)
/sbin/ifconfig lo:1 down
echo ‘Close LVS of Realserver DR‘
echo ‘0‘ > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo ‘0‘ > /proc/sys/net/ipv4/conf/lo/arp_announce
echo ‘0‘ > /proc/sys/net/ipv4/conf/all/arp_ignore
echo ‘0‘ > /proc/sys/net/ipv4/conf/all/arp_announce
;;
*)
echo "Usage:$0 (start|stop)"
exit 1
esac
[root@Qj ~]# chmod +x /etc/init.d/lvsrsdr
[root@Qj ~]# /etc/init.d/lvsrsdr start
[root@Qj ~]# echo "/etc/init.d/lvsrsdr start" >> /etc/rc.local
[root@Qj ~]# ifconfig -a
keepalived+LVS-DR