【集群】LVS负载均衡

文章目录

  • 前言
  • 一、NAT负载均衡
    • 1.1 部署共享资源
    • 1.2 配置节点服务器
    • 1.3 配置负载均衡器
  • 二、DR负载均衡
    • 2.1 部署共享资源
    • 2.2 配置节点服务器
    • 2.3 配置负载均衡器
  • 三、思维导图
  • 四、结语


前言

本博客内容仅为记录博主思路,仅供参考,一切以自己实践结果为准。


一、NAT负载均衡

1.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								#查看是否配置成功

1.2 配置节点服务器

systemctl stop firewalld							#关闭防火墙
setenforce 0

vim /etc/sysconfig/network-scripts/ifcfg-ens33		#将网关IP设置为负载均衡器的网关
systemctl restart network

yum install httpd -y								#安装httpd网页服务
mount 192.168.13.10:/opt/nfs/web1 /var/www/html/	#挂载资源到本地
systemctl start httpd.service						#启动httpd服务

#在节点服务器2重复此操作

1.3 配置负载均衡器

systemctl stop firewalld							#关闭防火墙
setenforce 0

cd /etc/sysconfig/network-scripts/					#添加ens35网卡,并配置好
cp ifcfg-ens33 ifcfg-ens35
vim ifcfg-ens35
ifdown ens35 && ifup ens35

vim /etc/sysctl.conf								#开启路由转发功能,连同内外网
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				#保存现有调度规则,下次重启后,会自动加载该文件

三、思维导图

【集群】LVS负载均衡_第1张图片

四、结语

  • 思路:负载均衡主要是为了横向扩大服务器性能,加快处理速度,那么就要有调度器作为指挥官,节点服务器作为小兵,共享资源作为仓库。
  • 易错点:DR模式与NAT模式不同,需要关闭路由转发功能,并且配置节点服务器的虚拟网卡IP地址与VIP地址保持一致,且配置ARP规则,防止出现广播紊乱。

你可能感兴趣的:(中阶知识,负载均衡)