码迷,mamicode.com
首页 > 其他好文 > 详细

LVS负载均衡群集

时间:2018-08-07 00:40:21      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:nfs-utils   大量   yum   项目   mct   开启   使用   lock   目录   

LVS虚拟服务器

LVS虚拟服务器是针对Linux内核开发的一个负载均衡项目,它实际上相当于基于IP地址的虚拟化应用,为基于IP地址和内容请求分发的负载均衡提出了一种高效的解决方法。
LVS现在已经是Linux内核的一部分,默认编译为ip_vs模块,必要时能够自动调用。

负载均衡的工作模式:

群集的负载调度技术可以基于IP、端口、内容等进行分发,其中基于IP的效率最高。基于IP的负载均衡模式中,常见的有地址转换、IP隧道和直接路由三种工作模式。
地址转换:简称NAT模式,类似于防火墙的私有网络结构,负载调度器作为所有服务器节点的网关,即作为客户机的访问入口,也是各节点回应客户机的访问出口。服务器节点使用私有IP地址与负载调度器位于同一个物理网络,安全性要优于其他方式。
IP隧道:简称TUN模式,采用开放式的网络结构,负载调度器仅作为客户机的访问入口,各节点通过各自的Internet连接直接回应客户机,而不再经过负载调度器。服务器节点分散在互联网中的不同位置,具有独立的公网IP地址,通过专用IP隧道与负载调度器相互通信。
直接路由:简称DR模式,采用半开放式的网络结构,与TUN模式的结构类似,但各节点并不是分散在各地,而是与调度器位于同一个物理网络。负载调度器与各节点服务器通过本地网络连接,不需要建立专用的IP隧道。

负载均衡的分层结构:

典型的负载均衡群集中,包括三个层次的组件。前端至少有一个负载调度器负责响应并分发来自客户端的访问请求,后端有大量真实服务器构成的服务器池来提供实际的应用服务,整个群集的伸缩性通过增加、删除服务器节点来完成,而这些过程对客户机是透明的,为了保持服务的一致性,所有节点使用共享存储设备。

第一层,负载调度器:这是整个群集的唯一入口,对外使用所有服务器共有的VIP(虚拟IP)地址,也称为群集IP地址。
第二层,服务器池:群集所提供的应用服务由服务器池承担,其中的每个节点具有独立的RIP(真实IP)地址,只处理调度器分发来的客户机请求。
第三层,共享存储:为服务器池中的所有节点提供稳定、一致的文件存取服务,确保整个群集的统一性。

实验环境

负载调度器(网关):内网:192.168.100.1 外网:12.0.0.1
web服务器1:192.168.100.125 web1:apache
web服务器2:192.168.100.126 web:apache
NFS服务器(存储):192.168.100.130
win7客户端:12.0.0.10

NFS服务器:192.168.100.130

1. 安装(默认已经安装)
#先查询系统是否已经安装该软件包
rpm -q nfs-utils rpcbind
2.如果没有安装,则使用yum安装
yum install nfs-utils rpcbind -y
3.启动服务
systemctl start rpcbind.service
systemctl restart nfs.service
4.创建共享目录并修改用户权限
mkdir -p /opt/zhangsan /opt/lisi
chmod 777 zhangsan/ lisi/5.编辑配置文件
vi /etc/exports
/usr/share *(ro,sync)
/opt/zhangsan 192.168.100.0/24(rw,sync)
/opt/lisi 192.168.100.0/24(rw,sync)
6.发布共享
exportfs -rv
7.关闭防火墙及selinux
setenforce 0
systemctl stop firewalld.service

web服务器1:192.168.100.125

1. 安装apache
yum install -y httpd
2. 客户端查看、挂载
showmount -e 192.168.100.130
mount.nfs 192.168.100.130:/opt/zhangsan /var/www/html
3. 创建默认首页文件
echo "this is zhangsan web" > /var/www/html/index.html
4. 启动服务
systemctl enable httpd.service
systemctl start httpd.service
5. 关闭防火墙及selinux
setenforce 0
systemctl stop firewalld.service

技术分享图片

web服务器2:192.168.100.126

1. 安装apache
yum install -y httpd
2. 客户端查看、挂载
showmount -e 192.168.100.130
mount.nfs 192.168.100.130:/opt/lisi /var/www/html
3. 创建默认首页文件
echo "this is lisi web" > /var/www/html/index.html
4. 启动服务
systemctl enable httpd.service
systemctl start httpd.service
5. 关闭防火墙及selinux
setenforce 0
systemctl stop firewalld.service

技术分享图片

负载调度器:外网:12.0.0.1 内网:192.168.100.1

1. 安装管理软件(安装完之后再修改网卡)
yum install ipvsadm -y
2. 开启路由转发功能
vim /etc/sysctl.conf
net.ipv4.ip_forward=1

技术分享图片

3. 使配置生效
sysctl -p
4. 清空防火墙及设置snat地址转换
iptables -t nat -F
iptable -F
iptables -t nat -A POSTROUTING -o ens36 -s 192.168.100.0/24 -j SNAT --to-sourcec 12.0.0.1
5. 加载LVS内核模块
modprobe ip_vs
6. 查看ip_vs模块版本
cat /proc/net/ip_vs
7. centos7之后必须先保存后才可以启动服务,不然会报错
ipvsadm-save  > /etc/sysconfig/ipvsadm
systemctl start ipvsadm
8. 创建虚拟服务器
#清空
ipvsadm -C
#添加虚拟服务器采用rr(轮询)的负载均衡算法
ipvsadm -A -t 12.0.0.1:80 -s rr
#添加真实服务器节点,分别为web1、web2服务器
ipvsadm -a -t 12.0.0.1:80 -r 192.168.100.125:80 -m
ipvsadm -a -t 12.0.0.1:80 -r 192.168.100.126:80 -m
ipvsadm

技术分享图片

测试

技术分享图片
技术分享图片
技术分享图片
技术分享图片
客户机对调度服务器进行访问,已实现了轮询访问

LVS负载均衡群集

标签:nfs-utils   大量   yum   项目   mct   开启   使用   lock   目录   

原文地址:http://blog.51cto.com/13620950/2155484

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!