LVS-TUN模式的负载均衡

TUN简介

 是IP Tunneling ,IP隧道的简称,它将调度器收到的IP数据包封装在一个新的IP数据包中,转交给应用服务器,然后实际服务器的返回数据会直接返回给用户。

简单的LVS/TUN架构图

模拟下用户访问百度的情况:

1.用户在浏览器输入http://www.baidu.com, 用户的电脑通过网络询问DNS,www.baidu.com域名的IP地址。

2.DNS服务器通过用户的地址,在服务器列表里选择一个可能是距离用户最近的LVS虚拟服务IP地址或者一个按照轮询策略的地址。

可以用ping www.baidu.com,能看到会返回一个IP地址,这个IP地址就是我们DNS返回给我们的地址。也可以用dig命令,能够看到www.baidu.com 实际对应了3个IP地址

3.用户浏览器通过DNS获得的IP地址,访问LVS服务器

4.进入LVS/TUN模式,LVS将数据包提供给APACHE或者nginx构建的反向代理服务器;

5.反向代理服务器最终将请求送给应用服务器;

6.应用服务器完成用户请求之后,通过反向代理服务器直接返回给用户,而不需要通过LVS服务器。

优点

TUN模式可以解决DR模式下不能跨网段的问题,甚至可以跨公网进行。

一、在server1上:

ip addr
添加隧道tun:
ip addr add 172.25.3.100/24 dev tunl0
ip link set up dev tunl0
ip addr  ##查看是否添加上 tunl0

添加规则:

yum install ipvsadm -y
ipvsadm -A -t 172.25.3.100:80 -s rr
ipvsadm -a -t 172.25.3.100:80 -r 172.25.3.2:80 -i
ipvsadm -a -t 172.25.3.100:80 -r 172.25.3.3:80 -i

禁用rp_filter内核和打开内部路由

vim /etc/sysctl.conf  ##更改设置
net.ipv4.ip_forward = 1
net.ipv4.conf.default.rp_filter = 0
sysctl -p   ###查看配置

二、在server2上:

安装arptables_jf 
因为设置172.25.3.100/24作为vip,不可以和外部通信,所以设用arptables将其的访问全部DROP,出去的包全部转化为本机的ip 
添加策略:

yum install arptables_jf
arptables -A IN -d 172.25.3.100 -j DROP
arptables -A OUT -s 172.25.3.100 -j mangle --mangle-ip-s 172.25.3.2
 arptables -L  -n   ###查看策略添加情况
/etc/init.d/arptables_jf  save

禁用rp_filter内核和打开内部路由

vim /etc/sysctl.conf  ##更改设置
net.ipv4.ip_forward = 1
net.ipv4.conf.default.rp_filter = 0
sysctl -p   ###刷新

添加隧道tun:

ip addr add 172.25.3.100/24 dev tunl0
ip link set up dev tunl0
ip addr  ##查看是否添加上 tunl0

三、在server3中:

安装arptables_jf 
因为设置172.25.3.100/24作为vip,不可以和外部通信,所以设用arptables将其的访问全部DROP,出去的包全部转化为本机的ip
添加策略:
yum install arptables_jf
arptables -A IN -d 172.25.3.100 -j DROP
arptables -A OUT -s 172.25.3.100 -j mangle --mangle-ip-s 172.25.3.3
 arptables -L  -n   ###查看策略添加情况
/etc/init.d/arptables_jf  save

禁用rp_filter内核和打开内部路由

vim /etc/sysctl.conf  ##更改设置
net.ipv4.ip_forward = 1
net.ipv4.conf.default.rp_filter = 0
sysctl -p   ###刷新

添加隧道tun:

ip addr add 172.25.3.100/24 dev tunl0
ip link set up dev tunl0
ip addr  ##查看是否添加上 tunl0

在真机中访问:

Curl 172.25.3.100 ##出现轮询即ok 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值