一,什么是集群?
就是多台pc组成的一个服务器
1.群集的三种类型
负载均衡群集、高可用群集和高性能运算群集。
二,负载均衡结构
一共有三层:
第一层:负载调度器
第二层,服务器池
第三层,共享存储
负载均衡的的工作模式也有三种,三种方法的数据走的流向也不一样:
1(NAT)地址转换
Network Address Translation,简称NAT模式;
类似于防火墙的私有网络结构,负载调度器作为所有服务器节点的网关,即作为客户机的访问入口,也是各节点回应客户机的访问出口;
服务器节点使用私有IP地址,与负载调度器位于同一个物理网络,安全性要优于其他两种方式。
2(TUN)IP隧道
IP Tunnel,简称TUN模式;
采用开放式的网络结构,负载调度器仅作为客户机的访问入口,各节点通过各自的Internet连接直接回应客户机,而不再经过负载调度器;
服务器节点分散在互联网中的不同位置,具有独立的公网IP地址,通过专用IP隧道与负载调度器相互通信。
3(DR)直接路由
Direct Routing,简称DR模式
采用半开放式的网络结构,与TUN模式的结构类似,但各节点并不是分散在各地,而是与调度器位于同一个物理网络
负载调度器与各节点服务器通过本地网络连接,不需要建立专用的IP隧道
三,虚拟服务器LVS
LVS实际上相当于基于IP地址的虚拟化应用,为基于IP地址和内容请求分发的负载均衡提出了一种高效的解决方法
现在LVS已经成为Linux内核的一部分,默认编译为ip_vs模块
LVS的负载调度 算法
针对不同的网络服务和配置需要,LVS 调度器提供多种不同的负载调度算法,其中最常用的四种算法是轮询、加权轮询、最少连接和加权最少连接。
- 轮询(Round Robin):将收到的访问请求按照顺序轮流分配给群集中的各节点,均 等地对待每台服务器,而不管服务器实际的连接数和系统负载。
- 加权轮询(Weighted Round Robin):根据调度器设置的权重值来分发请求,权重 值高的节点优先获得任务并且分配的请求越多,这样可以保证性能高的节点承担更 多请求。
- 最少连接(Least Connections):根据真实服务器已建立的连接数进行分配,将收 到的访问请求优先分配给连接数最少的节点。如果所有的服务器节点性能相近,采 用这种方式可以更好地均衡负载。
- 加权最少连接(Weighted Least Connections):在服务器节点的性能差异较大的 情况下,调度器可以根据节点服务器负载自动调整权重,权重较高的节点将承担更 大比例的活动连接负载。
接下来是IPVSadm工具
ipvsadm 是在负载调度器上使用的 LVS 群集管理工具,通过调用 ip_vs 模块来添加、删 除 服 务器 节 点 ,以 及 查 看 群集 的 运 行状 态 。 在 CentOS 7 系 统 中 , 需 要 手动 安装 ipvsadm.x86_64 0:1.27-7.el7 软件包。
yum -y install ipvsadm
ipvsadm -v #查看版本
ipvsadm 工具选项说明:
选项 | 解释 |
---|---|
-A | 添加虚拟服务器 |
-D | 删除整个虚拟服务器 |
-s | 指定负载调度算法(轮询:rr、加权轮询:wrr、最少连接:lc、加权最少连接:wlc) |
-a | 表示添加真实服务器(节点服务器) |
-d | 删除某一个节点 |
-t | 指定 VIP地址及 TCP端口 |
-r | 指定 RIP地址及 TCP端口 |
-m | 表示使用 NAT群集模式 |
-g | 表示使用 DR模式 |
-i | 表示使用 TUN模式 |
-w | 设置权重(权重为 0 时表示暂停节点) |
-p 60 | 表示保持长连接60秒 |
-l | 列表查看 LVS 虚拟服务器(默认为查看所有) |
-n | 以数字形式显示地址、端口等信息,常与“-l”选项组合使用。ipvsadm -ln |
四,开始部署!!
首先准备四台Linux机子,一台window测试机
负载调度器:内网关ens33:192.168.100.254 外网关 ens37:12.0.0.1
web节点服务器1:192.168.100.10
web节点服务器2:192.168.100.11
NFS服务器:192.168.100.12
客户端:12.0.0.2
首先去NFS服务器配置共享存储(NFS)
首先还是关闭防火墙
安装NFS包
在opt目录下方便创建俩目录
/opt/accp/
/opt/benet/
然后各自创建index.html文件
输入不同文字
别忘了给他们俩文件夹权限
再去/etc/exports里配置共享目录
发布共享
接下来配置网关服务器(负载调度器)
配置SNAT转发规则
vim /etc/sysctl.conf
sysctl -p
更新配置
iptables添加新规则
然后安装ipvsadm工具
保存负载均衡分配策略后启动服务
配置负载均衡策略
启动策略
查看节点状态
接下来配置节点服务器
(ens33网关需要设置为网关服务器)
俩服务器配置httpd服务并开启
在同时安装nfs-utils和rpcbind
挂载到两台节点服务器中的/var/www/html/目录
测试: