lvs 負載均衡Centos7
echo 1 > /proc/sys/net/ipv4/ip_forward
ipv=/sbin/ipvsadm
vip=192.168.1.110
rs1=192.168.1.113
rs2=192.168.1.133
ifconfig eth0:0 down
ifconfig eth0:0 $vip broadcast $vip netmask 255.255.255.255 up
route add -host $vip dev eth0:0
$ipv -C
$ipv -A -t $vip:80 -s wrr
$ipv -a -t $vip:80 -r $rs1:80 -g -w 3
$ipv -a -t $vip:80 -r $rs2:80 -g -w 1
rs1 和rs2 分別為兩臺伺服器rs
注意eth0 是網絡卡名稱,eth0是centos6的預設網絡卡名稱,用centos7的話就要對應的改一下。如:ifconfig eno16777736:0 down,當然這行下邊的那幾個都得改。另外 $rs1:80 指的是第一臺機器的埠號是80。可以根據需要改。好,做完這些配置儲存並執行:sh /usr/local/sbin/lvs_dr.sh
沒有任何反應就說明配置正確,否則請檢視你的lvs主機、兩臺rs伺服器是否存在防火牆開啟狀態,如果有,請關閉。另外vip的地址不要和lvs主機的地址相同。
配置正確之後,ifconfig 檢視顯示的資訊其中有你之前配置的vip地址。
好lvs主機配置完成
配置rs伺服器,基本和lvs一樣,在rs伺服器上:
1.vim/usr/local/sbin/lvs_dr_rs.sh 新建這個檔案並貼入
#! /bin/bash
vip=192.168.1.110
ifconfig lo:0 down
ifconfig lo:0 $vip broadcast $vip netmask 255.255.255.255 up
route add -host $vip lo:0
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
#然後把vip改成和lvs上配置的一致之後sh /usr/local/sbin/lvs_dr.sh 啟動
沒反應說明正確,否則問題和lvs一樣
ifconfig 能看到vip地址
第一臺rs配置完成,第二臺rs一樣的操作。
測試:
在兩臺rs中各安裝jdk和tomcat 為了區別,把index.jsp檔案各修改一下。路徑為tomcat下webapps/ROOT/index.jsp
不要忘了例子裡的埠號是80.所以你也要改為80、
之後啟動。先直接訪問一下,看單機是否正常,如果正常OK直接訪問vip地址,埠號80預設沒有。那麼出現其中一個的index內容,過20秒左右刷新出現另一個。
OK配置成功。