lvs-nat模型:类似于DNAT,但支持多目标转发, 就是多目标的DNAT
它通过修改请求报文的目标地址为根据调度算法所挑选出的某RS的RIP来进行转发
架构特性:
(1) RS应该使用私有地址,即RIP应该为私有地址,各RS的网关必须指向DIP
(2) 请求报文和响应报文都经由Director转发;高负载场景中,Director易于成为系统瓶颈
(3) 支持端口映射
(4) RS可以使用任意类型的OS
(5) RS的RIP必须与Director的DIP在同一网络
架设NAT模式的LVS负载均衡前需要先弄清楚哪个端口是哪个IP地址。
因此我们要先根据自己需要架设的服务拓扑图来规划IP地址以及测试。
1、根据上面的拓扑图我们可以规划IP地址为:
VIP:192.168.10.1
VIP为外网地址,因此这个地址需要能连通外部网络的,注意如果是在VM虚拟机上实验最好设置成桥接模式。
DIP:192.168.100.1
DIP为内网私有地址,不对外公布的,并且后面的Real server的网关都必须要设置成DIP
RIP:192.168.100.2-4
RIP为Real server的IP地址,拓扑图的三台服务器依次设置IP地址从2到4
2、设置完成IP地址架设完内部网络之后进行测试是否连通。
先测试各个IP地址之间是否能够正常通信,使用ping工具
在每个主机上都ping一下其他主机的IP地址
3、测试需要架设的服务是否能够在Directory上正常访问
本次以http为例,在各个RS上安装完http之后,在Directory使用curl http://192.168.100.2测试是否正常
测试完成之后就可以配置集群了。
我们使用LVS配置,不懂的可以先看另一篇博客LVS基础 http://kmk0226.blog.51cto.com/5975994/1717592
配置Directory
在Directory服务器上面配置ipvsadm,本机配置的是http服务,端口号是80
ipvsadm -A -t 192.168.10.1:80 -s rr //设置VIP为访问集群时候的IP地址,端口号为80,-s 代表使用自定义集群模式,rr为轮询,代表每个服务器都会轮换着访问 ipvsadm -a -t 192.168.10.1:80 -r 192.168.100.2 -m -w 1 //设置192.168.100.2为一个RS服务器,-m代表是开启NAT模式, -w为权重,1为权重为1 ipvsadm -a -t 192.168.10.1:80 -r 192.168.100.3 -m -w 2 //设置192.168.100.3为一个RS服务器,-m代表是开启NAT模式, -w为权重,2为权重为2 ipvsadm -a -t 192.168.10.1:80 -r 192.168.100.4 -m -w 3 //设置192.168.100.4为一个RS服务器,-m代表是开启NAT模式, -w为权重,3为权重为3 注意:权重越大代表被访问到的几率越大,不过为RR轮询的时候是无效的。
配置完Directory之后集群的配置就已经配置完成了。
测试集群是否可以正常访问:
1、实验环境中先确保iptables防火墙为关闭状态
2、实验环境中确保selinux为关闭状态或警告状态
3、在RS服务器中建立http页面,页面内容最好是能区分每个主机的不通内容,例如:192.168.100.2这样一个IP地址的内容
4、在本地物理机直接访问VIP测试是否能够正常访问,并且是否是正常轮询访问的,如果都正常代表LVS集群已经架设完成
总结:
LVS负载均衡集群对网络要求较高,如果内部网络架设不完整或者不通都将会导致集群无法正常访问,重点只要所有IP地址都能ping通就能正常架设成功。
本文出自 “私人博客” 博客,请务必保留此出处http://kmk0226.blog.51cto.com/5975994/1736671
原文地址:http://kmk0226.blog.51cto.com/5975994/1736671