LVS负载均衡集群
2023-12-15 20:46:37
目录
1.集群
什么是集群
- 集群 群集 cluster:由多台主机构成,都干同样的一件事,对外展现为一个整体
群集的类型
1.负载均衡群集(LB)
- 提高系统响应效率,处理更多的访问请求,减少响应延迟,实现高并发,高负载能力
- 典型代表:软件类(Nginx? LVS? HAProxy? SLB)
2.高可用群集(HA)
- 提高系统可靠性,减少中断时间,确保服务的连续性,(通常使用N个9来代表高可用的指标)
- 典型代表:keepalived? heartbeat
3.高性能运算群集(HPC)
- 通过云计算或分布式计算将硬件资源整合成资源池以获取高性能的CPU,内存等资源,来提高整体运算能力
2.LVS
LVS的三种工作模式
NAT 地址转换
- 调度器会作为所有节点服务器的默认网关,也是客户端的访问入口和节点服务器返回响应消息出口,所以调度器会承载双向流量的负载压力,可能会为整个群集的性能瓶颈。由于节点服务器都会处于内网环境,使用私网IP,所以具有一点的安全行。
TUN IP隧道 ? IP Tunnel ?
- 调度器仅作为客户端的访问入口,节点服务器的响应消息是直接返回客户端的,不需要经过调度器。但是由于节点服务器需要部署在不同的公网环境,所以要有独立的公网IP,而且调度器与节点服务器是通过专用的IP隧道实现相互通信,因此IP隧道模式的成本较高、安全性较低,且数据IP隧道传输的过程中需要额外的封装和解封装,性能也会受到一定的影响。
DR 直接路由 ?Direct Routing
- 调度器仅作为客户端的访问入口,节点服务器的响应消息是直接返回客户端的,不需要经过调度器。(与NAT模式的区别)
- 节点服务器与调度器是部署在同一个物理网络里,因此不需要建议专用的IP隧道。(与IP隧道模式的区别)
- DR模式是企业首选的LVS模式。
LVS调度算法
- rr(轮询)
- wrr(加权轮询)
- sh(源地址哈希)
- dh(目的地址哈希)
- lc(最小连接)
- wlc(加权最小连接):优先分配请求给 <连接数>/<权重值> 的值最小的节点服务器
- lblc(基于地址的最小连接):优先根据目的地址哈希将请求分配给同一个节点服务器,若此节点服务器满负荷了则优先将请求分配当前连接数最小的节点服务器
3.NAT模式LVS负载均衡群集部署
图例
实验准备
#负载调度器#
192.168.88.22 #内网
12.0.0.100 #外网
先添加双网卡
#web服务器#
192.168.88.13 #web1
192.168.88.31 #web2
#nfs共享服务#
192.168.88.40 #nfs
systemctl stop firewalld
setenforce 0
NFS共享服务器配置
yum install nfs-utils rpcbind -y #安装nfs软件
systemctl start rpcbind.service #启动服务
systemctl start nfs.service
mkdir /opt/yy /opt/cc
chmod 777 /opt/yy /opt/cc
echo 'this is yy web!' > /opt/yy/index.html
echo 'this is cc web!' > /opt/cc/index.html
vim /etc/exports
/opt/yy 192.168.88.0/24(rw,sync)
/opt/cc 192.168.88.0/24(rw,sync)
exportfs -rv
web1配置
yum install -y httpd nfs-utils
systemctl start httpd.service
systemctl start rpcbind
showmount -e 192.168.88.40
##临时挂载##
mount 192.168.88.40:/opt/yy /var/www/html
##永久挂载##
vim /etc/fstab
192.168.88.40:/opt/yy /var/www/html nfs defaults,_netdev 0 0
vim /etc/sysconfig/network-scripts/ifcfg-ens33
将GATWAK网关改为192.168.88.22
systemctl restart network httpd
web2配置?
yum install -y httpd nfs-utils
systemctl start httpd.service
systemctl start rpcbind
showmount -e 192.168.88.40
##临时挂载##
mount 192.168.88.40:/opt/cc /var/www/html
##永久挂载##
vim /etc/fstab
192.168.88.40:/opt/cc /var/www/html nfs defaults,_netdev 0 0
vim /etc/sysconfig/network-scripts/ifcfg-ens33
将GATWAK网关改为192.168.88.22
systemctl restart network httpd
配置负载调度器
yum -y install ipvsadm #下载此应用
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1 #打开路由转发功能
sysctl -p
cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens36
vim ifcfg-ens33
TYPE=Ethernet
DEVICE=ens33
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.88.22
NETMASK=255.255.255.0
GATEWAY=192.168.88.22
DNS1=8.8.8.8
vim ifcfg-ens36
TYPE=Ethernet
DEVICE=ens36
ONBOOT=yes
BOOTPROTO=static
IPADDR=12.0.0.100
NETMASK=255.255.255.0
GATEWAY=12.0.0.100
DNS1=8.8.8.8
systemctl restart network #配置网卡,并重新启动网卡
ifconfig
modprobe ip_vs #加载 ip_vs模块
cat /proc/net/ip_vs #查看 ip_vs版本信息
ipvsadm-save > /etc/sysconfig/ipvsadm #启动服务前须保存负载分配策略
systemctl start ipvsadm.service #重启服务
ipvsadm -C #清除原有策略
ipvsadm -A -t 12.0.0.100:80 -s rr
ipvsadm -a -t 12.0.0.100:80 -r 192.168.88.13:80 -m
ipvsadm -a -t 12.0.0.100:80 -r 192.168.88.31:80 -m
ipvsadm #启用策略
ipvsadm -ln #查看节点状态
进入客户端验证?
文章来源:https://blog.csdn.net/Ybaocheng/article/details/135021251
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!