部署LVS-DR演示
准备工作
系统为CentOS6.x、ipvsadm-1.26-4.el6.x86_64
节点 | ip |
---|---|
DR1 | 10.220.5.175 |
web1(RS1) | 10.220.5.176 |
web2(RS2) | 10.220.5.177 |
VIP | 10.220.5.233 |
实现思路:DR1上安装lvs,并配置地阿杜规则和算法
web1 web2 上质选装web服务器,并分别准备一个测试页面
安装配置DR1
- 安装各种依赖以及ipvsadm
[root@DR1 ~]# yum install libnl* popt* kernel-devel ipvsadm -y
- 给安装的内核开发库做连接
[root@DR1 ~]# ln -sv /usr/src/kernels/2.6.32-754.el6.x86_64/ /usr/src/linux
#(如果这里不做连接,那么在使用ipvsadm的时候,需要手动指定/usr/src/kernels/2.6.32-754.el6.x86_64/)
另外Centos6和Centos7的内核不同需要注意,如果是Centos7此处应该连接7的内核开发库
- 添加一个vip
[root@DR1 ~]# ifconfig eth0:0 10.220.5.223/24 up
测试vip是否可用,测试方法:从windows ping vip
- 在lvs中添加一个虚拟服务(vip)
[root@DR1 ~]# ipvsadm -A -t 10.220.5.223:80 -s rr
# 查看创建的虚拟服务
[root@DR1 ~]# service ipvsadm status
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 10.220.5.223:80 r
- 在虚拟服务中添加真是的服务器
[root@DR1 ~]# ipvsadm -a -t 10.220.5.223:80 -r 10.220.5.176:80 -w 1 -g
[root@DR1 ~]# ipvsadm -a -t 10.220.5.223:80 -r 10.220.5.177:80 -w 1 -g
# 查看一下RS的信息
[root@DR1 ~]# service ipvsadm status
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 10.220.5.223:80 rr
-> 10.220.5.176:80 Route 1 0 0
-> 10.220.5.177:80 Route 1 0 0
- 保存规则
[root@DR1 ~]# service ipvsadm save
ipvsadm: Saving IPVS table to /etc/sysconfig/ipvsadm: [ OK ]
# 查看状态
[root@DR1 ~]# 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.220.5.223:80 rr
-> 10.220.5.176:80 Route 1 0 0
-> 10.220.5.177:80 Route 1 0 0
安装配置web服务
- 安装配置web服务
[root@web1 ~]# yum install httpd -y
[root@web1 ~]# service httpd start
[root@web1 ~]# cd /var/www/html/
[root@web1 html]# vim index.html
test page 176
- 给RS绑定VIP【所有的RS都需要做】
[root@web1 ~]# ifconfig lo:0 10.220.5.233/32 up
- 在RS做ARP抑制【设置不对某些arp请求做应答】
echo "1">/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "1">/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2">/proc/sys/net/ipv4/conf/lo/arp_announce
echo "2">/proc/sys/net/ipv4/conf/all/arp_announce
说明:web2安装配置同上,为了区分,web2的测试页面可以改为test page 177,其他没有差异。
测试
在浏览器访问10.220.5.223,多次刷新可以看到页面上test page 176
和test page 177
交替出现,说明lvs部署完成,DR调度器可以正常将用户请求按照规则调度到后端RS服务器。