环境
角色 | 外部IP地址 | 内部IP地址 | 备注 |
LVS调度器(Director) | 222.216.110.10 | 10.10.0.10 | |
RS1(真实服务器) | 10.10.0.12 | ||
RS2(真实服务器 | 10.10.0.13 |
[root@F-LVS ~]# cat /etc/redhat-release CentOS release 6.9 (Final) [root@F-LVS ~]# uname -r 2.6.32-696.el6.x86_64 [root@F-LVS ~]# lsmod|grep ip_vs //查看是否安装此模块
准备工作
#安装了内核开发包 [root@A-host ~]# yum install kernel-devel -y #yum install kernel -y //更新内核,如果还没有执行这条 [root@A-host ~]# ln -s /usr/src/kernels/2.6.32-754.3.5.el6.x86_64/ /usr/src/linux [root@A-host ~]# yum install libnl* popt* gcc -y
1.安装LVS
[root@F-LVS ~]# wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.26.tar.gz [root@F-LVS ~]# tar zxf ipvsadm-1.26.tar.gz [root@F-LVS ~]# cd ipvsadm-1.26 [root@F-LVS ~]# make [root@F-LVS ~]# make install [root@F-LVS ~]# modprobe ip_vs // 或输入:/sbin/ipvsadm [root@F-LVS ~]# lsmod |grep ip_vs //检查是否加载成功
2.手动配置LVS负载均衡服务
1.配置VIP
[root@F-LVS ~]# ifconfig eth0:0 10.10.0.9/24 up
2.添加主机路由(可不添)
[root@F-LVS ~]# route add -host 10.10.0.9 dev eth0 [root@F-LVS ~]# route -n
3.清空配置
[root@F-LVS ~]# ipvsadm -C
4.手工执行配置添加LVS服务
[root@F-LVS ~]# ipvsadm --set 30 5 60 //设置超时时间,30-TCP ,5-TCPFIN 60--UDP [root@F-LVS ~]# ipvsadm -A -t 10.10.0.9:80 -s rr -p 20 //添加Lvs虚拟服务器10.10.0.9, 端口:80, -s rr 调度算法,-p 20秒 会话保持
5.添加两台RS(节点,真实服务器IP)
[root@F-LVS ~]# ipvsadm -a -t 10.10.0.9:80 -r 10.10.0.12 -g -w 1 [root@F-LVS ~]# ipvsadm -a -t 10.10.0.9:80 -r 10.10.0.13 -g -w 1 //-g 工作DR模式 -w 1 权重 [root@F-LVS ~]# ipvsadm -L -n //查看配置列表(成功) IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 10.10.0.10:80 rr persistent 20 -> 10.10.0.12:80 Route 1 0 0 -> 10.10.0.13:80 Route 1 0 0
#删除节点方法 # ipvsadm -D -t 10.10.0.10:80 -s wwr //删除虚拟服务 # ipvsadm -d -t 10.10.0.10:80 -r 10.10.0.14:80 //删除节点
3.手动配置RS服务器,绑定VIP
1.配置RIP [root@RS1 ~]# ifconfig lo:0 10.10.0.9/32 up [root@RS1 ~]# route add -host 10.10.0.9 dev lo [root@RS2 ~]# ifconfig lo:0 10.10.0.9/32 up [root@RS2 ~]# route add -host 10.10.0.9 dev lo 主机路由(可不添)
4.手动配置抑制ARP响应(RS上配置)
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
ARP抑制配置思路
1.如果是单个VIP,那么可以用stop传参设置0
2.如果RS端有多个VIP绑定,此时,及使是停止VIP绑定也一定不要置0
ARP广播而进行新的地址解析。具体命令:
/sbin/arping -I eth0 -c 3 -s 10.10.0.9 192.168.1.1(网关IP) /sbin/arping -U -I eth0 10.10.0.9
VIP配置文件
vim /etc/sysconfig/network-scripts/lo:0
停留在世界边缘,与之惜别