企业项目实战----LVS负载均衡(DR模式)

前言

为了平衡缓解访问压力,负载均衡的使用必不可少。负载均衡,以达到最佳化资源使用、最大化吞吐率、最小化响应时间、同时避免过载为目的。本文讲的是,LB(Load Balancing)负载均衡集群中的软件类,四层负载均衡LVS(Linux VirtualServer)。
企业项目实战----LVS负载均衡(DR模式)_第1张图片
如上图,用户不会直接链接真实服务器,而是连接负载均衡服务器,然后由负载均衡服务器把消息转发给实际应用服务器。

实验环境

server1	172.25.64.1		调度器				版本企业六
server2	172.25.64.2		后端真实服务器		版本企业六
server3	172.25.64.3		后端真实服务器		版本企业六

一、LVS----DR模式的部署

server1(调度器)

1、安装ipvsadm

#配置高级yum源
[root@server1 ~]# cd /etc/yum.repos.d/
[root@server1 yum.repos.d]# vim rhel-source.repo 
[rhel-source]
name=Redhat6.5
baseurl=http://172.25.64.250/rhel6.5
enabled=1
gpgcheck=0

[LoadBalancer]
name=LoadBalancer
baseurl=http://172.25.64.250/rhel6.5/LoadBalancer	#写自己的yum源地址
enabled=1
gpgcheck=0
[root@server1 yum.repos.d]# yum clean all

#安装ipvsadm软件
[root@server1 yum.repos.d]# yum install ipvsadm -y

2、编写DR模式策略并保存

[root@server1 ~]# ipvsadm -A -t 172.25.64.100:80 -s rr		#添加虚拟IP,模式轮询
[root@server1 ~]# ipvsadm -a -t 172.25.64.100:80 -r 172.25.64.2:80 -g	#添加真实服务器
[root@server1 ~]# ipvsadm -a -t 172.25.64.100:80 -r 172.25.64.3:80 -g
[root@server1 ~]# ipvsadm -l					#查看调度
[root@server1 ~]# /etc/init.d/ipvsadm save		#保存策略

企业项目实战----LVS负载均衡(DR模式)_第2张图片注释:
-A:添加虚拟设备
-t:指定ip地址
-s:添加指定策略(rr为调度算法:轮询)

3、给网卡添加Virtual IP(VIP)

[root@server1 ~]# ip addr add 172.25.64.100/24 dev eth7
[root@server1 ~]# ip a			#查看IP信息

企业项目实战----LVS负载均衡(DR模式)_第3张图片

server2(真实服务器)

1、安装阿帕奇并编写一个默认发布文件

[root@server2 ~]# yum install httpd -y
[root@server2 ~]# vim /var/www/html/index.html 
这里是服务器server2,ip为172.25.64.2!
[root@server2 ~]# /etc/init.d/httpd start

2、添加Virtual IP(VIP)

[root@server2 ~]# ip addr add 172.25.64.100/32 dev eth0		#子网掩码32是不对外开放
[root@server2 ~]# ip a

server3(真实服务器)

和server2相同

1、安装阿帕奇并编写一个默认发布文件

[root@server3 ~]# yum install httpd -y
[root@server3 ~]# vim /var/www/html/index.html 
欢迎访问server3,我的IP是172.25.64.3!
[root@server3 ~]# /etc/init.d/httpd start

2、添加Virtual IP(VIP)

[root@server3 ~]# ip addr add 172.25.64.100/32 dev eth0		#子网掩码32是不对外开放
[root@server3 ~]# ip a

测试:

客户端

[root@allen ~]# curl 172.25.64.100		#curl VIP

企业项目实战----LVS负载均衡(DR模式)_第4张图片
扩展注释:

arp -an | grep 100   ##查看MAC绑定地址
arp -d Virtual IP	#删除MAC绑定地址

企业项目实战----LVS负载均衡(DR模式)_第5张图片
现在是VIP通过MAC地址(还是服务器的MAC地址)访问的,这是不被允许的!

屏蔽虚拟IP访问请求

真实服务器server2

1、安装arptables_jf

[root@server2 ~]# yum install arptables_jf -y

2、编写并保存策略

[root@server2 ~]# arptables -A IN -d 172.25.64.100 -j DROP		#拒绝172.25.64.100访问请求
[root@server2 ~]# arptables -A OUT -s 172.25.64.100 -j mangle --mangle-ip-s 172.25.64.2
					##当自身需要通过100在网内发送数据包时,将ip伪装成172.25.64.2
[root@server2 ~]# /etc/init.d/arptables_jf save

真实服务器server3

1、安装arptables_jf

[root@server3 ~]# yum install arptables_jf -y

2、编写并保存策略

[root@server3 ~]# arptables -A IN -d 172.25.64.100 -j DROP		
[root@server3 ~]# arptables -A OUT -s 172.25.64.100 -j mangle --mangle-ip-s 172.25.64.3
[root@server3 ~]# /etc/init.d/arptables_jf save

3、查看策略

[root@server3 ~]# arptables -L

测试:

客户端
1、先删除之前实验绑定的MAC地址:arp-d 172.25.4.100(Vartual IP)
2、curl 172.25.64.100访问100时,数据经过调度器进行轮询

企业项目实战----LVS负载均衡(DR模式)_第6张图片
MAC地址是调度器的MAC,不是后端服务器的MAC
企业项目实战----LVS负载均衡(DR模式)_第7张图片

你可能感兴趣的:(运维,LVS负载均衡(DR模式))