【集群】LVS负载均衡

简介: 文章目录前言一、NAT负载均衡1.0 架构概况1.1 NFS资源存储器

一、NAT负载均衡

1.0 架构概况

作用 IP地址 安装服务 root密码
负载均衡器 192.168.13.10 ipvsadm aaabbb
节点服务器1 192.168.13.20 httpd aaabbb
节点服务器2 192.168.13.30 httpd aaabbb
NFS资源存储器 192.168.13.40 rpcbind/nfs aaabbb

1.1 NFS资源存储器

systemctl disable --now firewalld         #关闭防火墙
setenforce 0
sed -i "7c SELINUX=disabled" /etc/sysconfig/selinux
yum install -y rpcbind nfs          #安装rpcbind/nfs服务
mkdir -p /opt/nfs/web1 /opt/nfs/web2    #准备两个分享的测试文件
chmod 777 /opt/nfs/web1 /opt/nfs/web2
echo 'this is test web1!' >/opt/nfs/web1/index.html
echo 'this is test web2!' >/opt/nfs/web2/index.html
cat >/etc/exports<<EOF
/opt/nfs/web1 192.168.13.0/24(rw,sync,no_root_squash)
/opt/nfs/web2 192.168.13.0/24(rw,sync,no_root_squash)
EOF
#分享目录 享受分享的IP地址 可读可写,可修改分享目录,root用户不降权
systemctl start rpcbind           #启动rpcbind服务(必须必nfs先启动)
systemctl start nfs             #启动nfs服务
showmount -e                #查看是否配置成功

1.2 节点服务器

systemctl disable --now firewalld         #关闭防火墙
setenforce 0
sed -i "7c SELINUX=disabled" /etc/sysconfig/selinux
yum install httpd -y                #安装httpd网页服务
mount 192.168.13.40:/opt/nfs/web1 /var/www/html/  #挂载资源到本地
systemctl start httpd.service           #启动httpd服务
sed -i "s/GATEWAY=\"192.168.13.2\"/GATEWAY=\"192.168.13.10\"/" /etc/sysconfig/network-scripts/ifcfg-ens33
systemctl restart network             #将网关IP设置为负载均衡器的网关
#在节点服务器2重复此操作

1.3 配置负载均衡器

systemctl disable --now firewalldsystemctl disable --now firewalld              #关闭防火墙
setenforce 0
sed -i "7c SELINUX=disabled" /etc/sysconfig/selinux
cd /etc/sysconfig/network-scripts/          #添加ens35网卡,并配置好
cp ifcfg-ens33 ifcfg-ens35
vim ifcfg-ens35
ifdown ens35 && ifup ens35
vim /etc/sysctl.conf                #开启路由转发功能,连同内外网
  net.ipv4.ip_forward=1
sysctl -p
iptables -t nat -A POSTROUTING -s 192.168.13.0/24 -o ens35 -j SNAT --to 12.0.0.1
                          #开启SNAT源地址转换功能,保护节点服务器IP地址
modprobe ip_vs                    #加载LVS内核模块
yum install ipvsadm -y                #安装ipvsadm工具,并创建目录(必须先创建才能启动)
ipvsadm-save >/etc/sysconfig/ipvsadm
ipvsadm -C                      #清空所有原有调度策略
ipvsadm -A -t 12.0.0.1:80 -s rr
#添加调度器 指定调度器IP/端口 指定调度算法
ipvsadm -a -t 12.0.0.1:80 -r 192.168.13.20:80 -m
#添加节点服务器 指定调度器IP/端口 指定节点服务器IP/端口 指定集群模式
ipvsadm -a -t 12.0.0.1:80 -r 192.168.13.30:80 -m
ipvsadm                       #启动调度策略
ipvsadm -ln                     #查看调度策略
ipvsadm-save >/etc/sysconfig/ipvsadm        #保存现有调度规则,下次重启后,会自动加载该文件

二、DR负载均衡

2.1 部署共享资源

systemctl stop firewalld          #关闭防火墙
setenforce 0
yum install -y rpcbind nfs          #安装rpcbind/nfs服务
mkdir -p /opt/nfs/web1 /opt/nfs/web2    #准备两个分享的测试文件
chmod 777 /opt/nfs/web1 /opt/nfs/web2
echo 'this is test web1!' >/opt/nfs/web1/index.html
echo 'this is test web2!' >/opt/nfs/web2/index.html
vim /etc/exports
  /opt/nfs/web1 192.168.13.0/24(rw,sync,no_root_squash)
  /opt/nfs/web2 192.168.13.0/24(rw,sync,no_root_squash)
  #分享目录 享受分享的IP地址 可读可写,可修改分享目录,root用户不降权
systemctl start rpcbind           #启动rpcbind服务(必须必nfs先启动)
systemctl start nfs             #启动nfs服务
showmount -e                #查看是否配置成功

2.2 配置节点服务器

systemctl stop firewalld              #关闭防火墙
setenforce 0
yum install -y httpd                #安装网页服务
cd /etc/sysconfig/network-scripts         #配置VIP地址
cp ifcfg-lo ifcfg-lo:0
vim ifcfg-lo:0
  DEVICE=lo:0                   #修改虚拟网卡VIP地址与调度器VIP地址一致
  IPADDR=192.168.13.21
  NETMASK=255.255.255.255
ifup lo:0                     #启动虚拟网卡lp:0
route add -host 192.168.13.21 dev lo:0        #将VIP地址绑定到虚拟网卡上
vim /etc/rc.local                 #配置开机自动将VIP地址与虚拟网卡绑定
chmod +x /etc/rc.d/rc.local
vim /etc/sysctl.conf
  net.ipv4.conf.lo.arp_ignore = 1         #本机只相应目的IP为物理网卡的ARP请求
  net.ipv4.conf.lo.arp_announce = 2       #不使用数据包的源地址作为ARP的源地址,使用发送接口的IP作为ARP源地址
  net.ipv4.conf.all.arp_ignore = 1
  net.ipv4.conf.all.arp_announce = 2
sysctl -p
mount 192.168.13.10:/opt/nfs/web1 /var/www/html   #将nfs共享资源挂载到本地
#在节点服务器2重复此操作

2.3 配置负载均衡器

systemctl stop firewalld              #关闭防火墙
setenforce 0
cd /etc/sysconfig/network-scripts         #配置虚拟ens33:0网卡作为VIP地址
cp ifcfg-ens33 ifcfg-ens33:0
vim ifcfg-ens33:0
  NAME="ens33:0"
  DEVICE="ens33:0"
  ONBOOT="yes"
  IPADDR="192.168.13.21"
  PREFIX="32"                   #注:子网掩码必须为32位
ifup ens33:0
ifconfig
vim /etc/sysctl.conf
  net.ipv4.ip_forward = 0             #关闭路由转发功能
  net.ipv4.conf.all.send_redirects = 0      #关闭icmp重定向
  net.ipv4.conf.default.send_redirects = 0
  net.ipv4.conf.ens33.send_redirects = 0
sysctl -p                     #启动规则
modprobe ip_vs                    #加载LVS内核模块
yum install -y ipvsadm                #安装ipvsadm工具,并创建目录(必须先创建才能启动)
ipvsadm-save > /etc/sysconfig/ipvsadm
systemctl start ipvsadm
ipvsadm -C                      #清空所有原有调度策略,并配置新的调度策略
ipvsadm -A -t 192.168.13.21:80 -s rr
ipvsadm -a -t 192.168.13.21:80 -r 192.168.13.30:80 -g
ipvsadm -a -t 192.168.13.21:80 -r 192.168.13.40:80 -g
ipvsadm                       #启动调度策略
ipvsadm -ln                     #查看调度策略
ipvsadm-save >/etc/sysconfig/ipvsadm        #保存现有调度规则,下次重启后,会自动加载该文件
systemctl stop firewalld

三、思维导图


四、结语

思路:负载均衡主要是为了横向扩大服务器性能,加快处理速度,那么就要有调度器作为指挥官,节点服务器作为小兵,共享资源作为仓库。

易错点:DR模式与NAT模式不同,需要关闭路由转发功能,并且配置节点服务器的虚拟网卡IP地址与VIP地址保持一致,且配置ARP规则,防止出现广播紊乱。


相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
6月前
|
负载均衡 应用服务中间件 Linux
Nginx系列教程(14) - LVS+KeepAlived+Nginx实现高性能负载均衡集群
Nginx系列教程(14) - LVS+KeepAlived+Nginx实现高性能负载均衡集群
234 0
|
8天前
|
运维 负载均衡 监控
keepalived+LVS实现高可用性集群
通过结合keepalived和LVS,你可以创建一个高可用性的负载均衡集群,确保服务器的稳定性和性能。这对于托管Web服务、应用服务器等关键服务的服务器集群非常有用。
44 1
|
8天前
|
负载均衡 算法 网络协议
LVS、Nginx和HAProxy负载均衡器对比总结
LVS、Nginx和HAProxy负载均衡器对比总结
|
8天前
|
负载均衡 监控 Linux
CentOS6.5高可用集群LVS+Keepalived(DR模式)
CentOS6.5高可用集群LVS+Keepalived(DR模式)
|
8天前
|
负载均衡 监控 网络协议
使用haproxy实现负载均衡集群
【4月更文挑战第14天】HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,快速并且可靠的一种解决方案。
17 1
|
8天前
|
Kubernetes 负载均衡 监控
Kubernetes高可用集群二进制部署(一)主机准备和负载均衡器安装
Kubernetes高可用集群二进制部署(一)主机准备和负载均衡器安装
|
8天前
|
缓存 负载均衡 应用服务中间件
【分布式技术专题】「分析Web服务器架构」Tomcat服务器的运行架构和LVS负载均衡的运行机制(修订版)
在本章内容中,我们将深入探讨 Tomcat 服务器的运行架构、LVS 负载均衡的运行机制以及 Cache 缓存机制,并提供相应的解决方案和指导。通过理解这些关键概念和机制,您将能够优化您的系统架构,提高性能和可扩展性。
212 4
【分布式技术专题】「分析Web服务器架构」Tomcat服务器的运行架构和LVS负载均衡的运行机制(修订版)
|
8天前
|
负载均衡 算法 Linux
LVS集群
LVS(Linux Virtual Server)集群是一种基于Linux操作系统的高可用性和负载均衡解决方案。它通过将网络流量分发到多个后端服务器上,实现了对网络服务的负载均衡,并提高了系统的可用性和性能。
69 1
|
5月前
|
负载均衡 算法 网络协议
小白带你学习linux的LVS集群(三十六)
小白带你学习linux的LVS集群(三十六)
87 0
|
6月前
|
负载均衡 算法 网络协议
Keepalived+LVS搭建高可用负载均衡
Keepalived+LVS搭建高可用负载均衡
197 1