LVS负载均衡群集与NAT模式LVS负载均衡部署

一、群集的含义
集群、群集
由多台主机构成,但对外,只表现为一个整体,只提供一个访问入口(域名或IP),相当于一台大型计算机。

1、群集存在的必要
互联网应用中,随着站点对硬件性能、响应速度、服务稳定性、数据可靠性等要求越来越高,单台服务器无法满足负载均衡及高可用的需求。

2、解决方法
1、使用价格昂贵的小型机、大型机。
2、使用多台相对廉价的普通服务器构建服务群集。
通过整合多台服务器,使用LVS来达到服务器高可用和负载均衡,并于同一个IP地址对外提供相同服务。
这就是企业中常用的一种群集技术——LVS(Linux Virtual Server ,Linux虚拟服务器)。
 

二、群集的类型
1.负载均衡群集 LB
提高系统的响应效率,处理更多的访问请求,减少延迟,实现高并发、高负载的能力
典型代表:软件类(Nginx  LVS  HAProxy  SLB)   硬件类(F5  绿盟)

2.高可用群集 HA
提高系统的可靠性,减少服务中断时间,确保服务的连续性(通过使用 N 个 9 来代表高可用的指标)
典型代表:keepalived、heartbeat

3.高性能计算群集 HPC
将多台服务器的硬件资源整合成资源池以获取高性能的CPU、内存等资源,来提高整体运算能力
典型代表:云计算、分布式计算

三、LVS负载均衡的三种工作模式
1.NAT   地址转换
调度器会作为所有节点服务器的默认网关,也是客户端的访问入口和节点服务器返回响应消息的出口,所以调度器会承载双向流量的负载压力,可能会成为整个群集的性能瓶颈。
由于节点服务器都会处于内网环境并使用私网IP,所以NAT模式具有一定的安全性。

2.TUN   IP隧道   IP Tunnel
调度器仅作为客户端的访问入口,节点服务器的响应消息是直接返回给客户端的,不需要经过调度器。
由于节点服务器需要部署在互联网环境中,所以需要有独立的公网IP。
调度器与节点服务器是通过专用的IP隧道相互通信。
因此IP隧道模式的成本较高、网络安全性较低密,且数据在IP隧道传输的过程中需要额外的封装和解封装过程,性能也会受到一定的影响。

3.DR    直接路由  Direct Rounting
调度器也是仅作为客户端的访问入口,节点服务器的响应消息是直接返回给客户端的,不需要经过调度器。(与NAT模式的区别)
节点服务器与调度器是部署在同一个物理网络中,因此不需要专用的IP隧道。(与IP隧道模式的区别)
DR模式是企业首选的LVS模式。wuLVS的负载调度算法

1、轮询(Round Robin)
● 将收到的访问请求按照顺序轮流分配给群集中的各节点(真实服务器) ,均等地对待每一台服务器 ,而不管服务器实际的连接数和系统负载

2、加权轮询 (Weighted Round Robin)
● 根据调度器设置的权重值来分发请求,权重值高的节点优先获得任务,分配的请求数越多
● 保证性能强的服务器承担更多的访问流量

3、最少连接 (Least Connections )
● 根据真实服务器已建立的连接数进行分配,将收到的访问请求优先分配给连接数最少的节点

4、加权最少连接(Weighted L east Connections )
● 在服务器节点的性能差异较大时,可以为真实服务器自动调整权重
● 性能较高的节点将承担更大比例的活动连接负载
5、sh (源地址哈希)

5、dh目的地址哈希       

6、sed(最短预期延迟)

7、nq(永不排队)

五、ipvsadm工具

六、NAT模式LVS负载均衡群集部署

实验:

 1.配置实验环境 关闭防火墙

systemctl stop firewalld 
systemctl disable firewalld
setenforce 0

一、配置nfs共享

yum install-y nfs-utils rpcbind

1.准备共享目录

mkdir /share  #创建共享目录
mkdir /share2
vim /etc/exports   #编辑共享文件的配置文件

在nfs服务器中  创建测试文件
cd /share/
echo "this is nginx web1 test page " > test.html
cd /share2/
echo "this is nginx web2 test page " > test.html

ro 是只读的意思  再exportfs -rv

2.开启 rpcbind nfs  再showmount -e 查看本机

二、web服务器nginx的部署 

1.安装nginx

rz -E 
yum install -y nginx 

2.在web1中 vim /etc/fastab 设置开机自动挂载 

将192.168.80.12的/share目录挂载到 /usr/share/nginx/html/xy101目录中


再mount -a 根据配置文件挂载

df -hT  #查看挂载情况
systemctl restart nginx

在web2中 vim /etc/fastab 设置开机自动挂载

 将192.168.80.12的/share2目录挂载到 /usr/share/nginx/html/xy101目录中


再mount -a 根据配置文件挂载

df -hT  #查看挂载情况
systemctl restart nginx

修改两个web服务器的网关地址

cd /etc/sysconfig/netwrok-scripts
vim ifcfg-ens32

两个web服务器网关网关指向ens32  然后重启网卡

三.配置网关服务器

1.添加网卡

2.修改网卡文件

cd /etc/sysconfig/netwrok-scripts
cp ifcfg-ens32 ifcfg-ens33
vim ifcfg-ens32
vim ifcfg-ens33

 ens32

ens33

之后全部重启网卡

3.修改系统配置文件 /etc/sysctl.d

sysctl -p   # 加载
  

4.清空原有规则

iptables -F && iptables -t nat -F

5.添加规则

6.加载模块

modprobe ip_vs					#加载 ip_vs模块

7.安装ipvsadm 管理工具

yum insatll -y ipvsadm  #安装ipvasadm
touch /etc/sysconfig/ipvsadm    #创建ipvsadm文件
systemctl restart ipvsadm.service    #启动ipvsadm

8.配置负载分配策略

配置负载分配策略(NAT模式只要在服务器上配置,节点服务器不需要特殊配置)
ipvsadm -C 					#清除原有策略
ipvsadm -A -t 12.0.0.30:80 -s rr [-p 60]
ipvsadm -a -t 12.0.0.30:80 -r 192.168.80.10:80 -m [-w 1]
ipvsadm -a -t 12.0.0.30:80 -r 192.168.80.20:80 -m [-w 1]

ipvsadm						#启用策略
ipvsadm -ln					#查看节点状态,Masq代表 NAT模式
ipvsadm-save -n > /opt/ipvsadm						#保存策略

测试:

  • 28
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值