一、安裝依賴包:web
[root@client lvs]# yum -y install ipvs*
二、驗證本機ip_vs模塊是否加載 bash
[root@client lvs]# grep -i 'ip_vs' /boot/config-2.6.32-431.el6.x86_64
CONFIG_IP_VS=m CONFIG_IP_VS_IPV6=y # CONFIG_IP_VS_DEBUG is not set CONFIG_IP_VS_TAB_BITS=12 CONFIG_IP_VS_PROTO_TCP=y CONFIG_IP_VS_PROTO_UDP=y CONFIG_IP_VS_PROTO_AH_ESP=y CONFIG_IP_VS_PROTO_ESP=y CONFIG_IP_VS_PROTO_AH=y CONFIG_IP_VS_PROTO_SCTP=y CONFIG_IP_VS_RR=m CONFIG_IP_VS_WRR=m CONFIG_IP_VS_LC=m CONFIG_IP_VS_WLC=m CONFIG_IP_VS_LBLC=m CONFIG_IP_VS_LBLCR=m CONFIG_IP_VS_DH=m CONFIG_IP_VS_SH=m CONFIG_IP_VS_SED=m CONFIG_IP_VS_NQ=m CONFIG_IP_VS_FTP=m CONFIG_IP_VS_PE_SIP=m
編寫lvs drsrever腳本,修改functions權限: 服務器
(functions這個腳本是給/etc/init.d裏邊的文件使用的(可理解爲全局文件)。) 網絡
[root@client lvs]# chmod 755 /etc/rc.d/init.d/functions
建立lvs文件夾 spa
[root@client lvs]# cd /usr/local [root@client local]# mkdir –m 755 lvs [root@client local]# mkdir –m 755 lvs
[root@client local]# cd /lvs
[root@client lvs]# vi lvs_dr.sh
#!/bin/bash #description:start lvs server echo "1" >/proc/sys/net/ipv4/ip_forward #開啓ip轉發 WEB1=192.168.56.200 #真實的webip WEB2=192.168.56.201 #真實的webip VIP1=192.168.56.80 #虛擬lvs的ip /etc/rc.d/init.d/functions #初始化function case "$1" in #第一個參數 start) #第一個參數是start echo "start LVS of directorServer" #打印 /sbin/ifconfig eth0:0 $VIP1 broadcast $VIP1 netmask 255.255.255.255 up #設置虛擬網絡 /sbin/ipvsadm –C #清除內核虛擬服務器表中的全部記錄,清除lvs設置 /sbin/ipvsadm -A -t $VIP1:8080 -s rr #設置rr模式,輪詢模式 /sbin/ipvsadm -a -t $VIP1:8080 -r $WEB1:8080 –g #輪詢的機器,-g採用DR模式 /sbin/ipvsadm -a -t $VIP1:8080 -r $WEB2:8080 –g /sbin/ipvsadm #啓動lvs ;; stop) #若是第一個參數是stop echo "close LVS directorserver" #打印 echo "0" >/proc/sys/net/ipv4/ip_forward #關閉ip轉發 /sbin/ipvsadm –C #清除內核虛擬服務器表中的全部記錄 /sbin/ipvsadm –Z #虛擬服務表計數器清零(清空當前的鏈接數量等) ;; *) #若是第一個參數是其餘任何值 echo "usage:$0 {start|stop}" #打印:提示輸入start或者stop exit 1 #退出 esac #循環結束
[root@client lvs]# chmod 755 lvs_dr.sh [root@client lvs]# ./lvs-dr.sh start
查看: code
ipvsadm –ln server
看到上面信息說明ipvsadm啓動成功。 blog
在web1 和web2機器上修改functions權限: ip
(functions這個腳本是給/etc/init.d裏邊的文件使用的(可理解爲全局文件)。) it
chmod 755 /etc/rc.d/init.d/functions
#!/bin/sh VIP1=192.168.56.80 #虛擬ip /etc/rc.d/init.d/functions #初始化function case "$1" in #第一個參數 start) #若是第一個參數是start echo "start LVS of realserver" #打印 /sbin/ifconfig lo:0 $VIP1 broadcast $VIP1 netmask 255.255.255.255 up #設置虛擬網絡 echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore #定義接收到ARP請求時的響應級別 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) #若是第一個參數是stop /sbin/ifconfig lo:0 down #中止網卡 echo "close lvs dirctorserver" #打印 echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore #定義接收到ARP請求時的響應級別 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 |