LVS集群之NAT模式
基本概念:
集群:cluster就是一组计算机,他们作为一个整体向用户提供一组网络资源,这些单个的计算机系统就是集群的节点
集群的种类:
LB 负载均衡集群 HA 高可用性集群 HPC 高性能计算集群
LB的实现方法:
1 软件 -F5 负载均衡器
2 硬件 LVS(4层) nginx(7层)
LVS(Linux Virtual Server)
官网:http://www.linuxvirtualserver.org(英文)
http://zh.linuxvirtualserver.org
LVS模式
1 NAT 2 DR 3 TUN
LVS集群采用三层结构:
1 负载调度器:负责将客户的请求发送到真实服务器上执行,客户会认为是同一个IP地址,我们称为 VIP的公网地址
2 服务器池:真正向用户提供服务的服务器,执行服务有web,mail,ftp,dns等
3 共享存储:为了保障服务器提供的数据一致,共享的存储区域,提供相同的服务,相同的内容
NAT的特点
优点:可以支持任何的操作系统,以及私有网络,并且只需要一个公网IP地址
缺点:整个系统的性能受到了限制,因为执行NAT每次都需要重写数据包,有一定的延迟,另外有80%的数据是从服务器发往客户端的,也就是用户的请求非常短,而服务器的响应非常大,对负载均衡器形成很大的压力,成为了新的瓶颈
LVS之NAT模式的工作原理
客户端访问调度器时,调度器通过网络地址转换,调度器重写请求报文的目标地址,根据预设的调度算法,将请求分派给后端的真实服务器;真实服务器的响应报文通过调度算法,报文的源地址被重写,再返回给客户,完成整个负载调度的过程。
分发器的设置:
1 开启数据包转发的功能
vim /etc/sysctl.conf net.ipv4.ip_forward = 1 sysctl -p 立即生效 (开机自动生效)
或者修改内核参数 echo 1 > proc/sys/net/ipv4/ip_forward(临时生效)
2 安装LVS管理工具ipvsadmin
rpm -ivh /mnt/Packages/ipvsadmin-1.25-9el6X86_64.rpm
3 增加IP地址ifconfig -a 可查看全部的接口信息
setup增加一条与真实服务器同网段的IP地址
重启网络服务:service network restart
查看默认网关 route -n
4 设置规则
ipvsadm -A -t 192.168.1.63:80 -s rr (启动轮询的调度算法)(VIP)
-A 表示添加
-t 表示TCP的服务 VIP:port
-s 制定调度算法 rr 表示轮询
5 添加realserver地址
ipvsadm -a -t 192.168.1.63:80 -r 192.168.2.62 -m
ipvsadm -a -t 192.168.1.63:80 -r 192.168.2.64 -m
-a 表示添加一个realserver地址
-r 制定realserver的地址
-m 表示masquerade也就是NAT的LVS
6 保存配置
/etc/init.d/ipvsadm save
7 查看ipvsadmin规则
ipvsadm -L -n
ipvsadm -L -n -c (查看详细连接数)
-nL 查看规则,显示内核虚拟服务器表
-nLc 查看客户端连接分发器和realserver的情况
--state 查看分发的情况,数据库和连接的数目
--rate 查看连接速率
多台真实服务器端的配置:
1 配置IP地址
vim /etc/sysconfig/network-scripts/ifcfg-eth0
2 修改网卡模式
修改为和分发器同一网段的网卡模式vmnet4 在同一个地址段,通信才正常
3 开启httpd服务
下载web服务器软件,开启httpd进程
yum install -y httpd
service httpd restart
可以通过向 /var/www/html内写入静态页面此时就可以实现NAT的负载均衡了,至于同一存储池,今后再研究编写,谢谢大家。