LVS是Linux Virtual Server的簡寫,意即Linux虛擬服務器,是一個虛擬的服務器集羣系統。可以在UNIX/linux平臺下實現負載均衡集羣功能。該項目在1998年5月由章文嵩博士組織成立,是中國國內最早出現的自由軟件項目之一。
LVS一般分爲三個模式,DR模式也就是路由模式,這樣是用的最多的一種模式。NAT模式,tunnel模式也就是隧道模式。 也有說四種的,就是多了FULL NAT模式。
我們這裏的實驗也是一個簡單實驗,顯示一個路由模式,也就是1臺LVS帶動兩臺nginx服務器。
大概就是這樣一個簡單拓撲。
先安裝LVS吧
安全裝備命令。
lsmod |grep ip_vs
uname -rm
ls /usr/src/kernels/`uname -r`
ln -s /usr/src/kernels/`uname -r` /usr/src/linux
因爲LVS是基於內核的,所以要建立這麼一個連接,注意最後的鏈接應該是藍色顯示
如果顯示不出內核,就要安裝一個包
yum install kernel-devel -y
開始源碼安裝LVS
yum install libnl* libpopt*
yum install popt-static
yum install gcc
yum install gcc+
先提前把這些包給裝了。然後下載軟件
wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.26.tar.gz
ls
tar zxf ipvsadm-1.26.tar.gz
cd ipvsadm-1.26/
mkdir /application
cd /application/
mv /software/ipvsadm-1.26/ .
cd ipvsadm-1.26/
make
echo $?
make install
這樣就安裝好了。
然後要設置VIP
ip addr add 192.168.19.44/24 dev ens192
添加路由表
在LVS先清空。
用ipvsadm -C 命令
然後開始配置兩臺主機上去
ipvsadm --set 30 5 60
ipvsadm -A -t 192.168.19.44:80 -s rr -p 20
ipvsadm -a -t 192.168.19.44:80 -r 192.168.19.39 -g -w 1
ipvsadm -a -t 192.168.19.44:80 -r 192.168.19.38 -g -w 1
ipvsadm -L -n
然後就是要在RIP上做ARP的抑制和綁定VIP。
ip addr show
ip addr add 192.168.19.44/32 dev lo:0
route add -host 192.168.19.44 dev lo
route -n
下面是做ARP抑制
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
可以開始測試效果了。
同一個地址訪問出不同的效果。
證明負載均衡有在作用了。
這樣最簡單的兩臺WEB的負載均衡就可以了。當然我們最佳的方式,是搭配keepalived來實現高可用是最好的。
但我這裏沒有列出來,高可用又分了單實例和多實例。
這個後面還要好好學習一下。
監測命令 watch -n 1 ipvsadm -L -n
ARP抑制的選項說明。