LVS是一个开源的软件,可以实现LINUX平台下的简单负载均衡LVSLinux Virtual Server的缩写,意思是Linux虚拟服务器

它是一种四层交换,默认情况下来通过用户请求的的地址和端口,来判断用户的请求,从而转发到后台真正提供服务的主机,而判断这种请求的是通过套接字来实现,所以四层就可以实现。而且这个转发的过程对用户而言是透明的(简单的讲,就是用户访问的是DR的IP,而DR转发给RSS,而用户不知道这个过程)

lvs-nat模型

213950351.png

{

1.VIP:虚拟IP地址,并不提供服务,而是将用户的请求转发到后方

2 RIP:真正IP地址,客户端真正提供服务的IP地址

3.DIP:调度IP地址,通常是和RIP相连的LVSIP地址

4.CIP:客户端IP地址,用户请求时,用户的IP

}

能实现端口的重定向

要求:

drectorcluster node必须在同一子网内,不能实现异地容灾。

Director将处理所有的请求,压力比较大,扩展到10个结点就不行了

Rip通常是私有地址

下面我们就来以实际的实验来进一步认识一下LVS群集的net模型

214513873.png

1、如图所示:分别为两台realserver配置相应的ip地址,网关指向director的内口地址192.168.3.1。另外为director额外加一块网卡,并配置相应的ip地址。把director的外卡加入vm1区域,把其他的都加入到vm2区域。


2、建立后方web服务器

新建光盘挂载点并挂载光盘,安装http

mkdir /mnt/cdrom

mount /dev/cdrom /mnt/cdrom

设置为开机自动启动

chkconfig httpd on

cd /var/www/html

echo node1 >index.html(在两台web服务器上做的操作基本相同,唯一不同的就是第二台服务器的网页内容输入node2


3、director的配置

因为是lvsnet模式,所以要启动路由转发功能

vim /etc/sysctl.conf

214620846.jpg

sysctl -p 是内核参数生效

挂在光盘,安装工具

/mnt/cdrom/Cluster

rpm -ivh ipvsadm-1.24-10.i386.rpm

后方的服务决定了前方的director的虚拟服务,这里后方是web服务器的群集,那么前方的drector就应该是web的虚拟服务

写虚拟服务的规则指明

web的虚拟服务(rr为轮训调度)

ipvsadm -A -t 192.168.2.100:80 -s rr

指明后方的realserver(mnet转换模式)

ipvsadm -a -t 192.168.2.100:80 -r 192.168.3.2 -m

ipvsadm -a -t 192.168.2.100:80 -r 192.168.3.3 -m

service ipvsadm save(保存规则,重启服务之后还存在)


4、访问测试

214701450.jpg

刷新

214720425.jpg

再接着刷新的话就会发现是依次访问两个节点的,这就是轮训