DR模式 LVS负载均衡群集
部署LVS的DR模式
- DR 服务器:10.190.33.40
- Web 服务器1:10.190.33.20
- Web 服务器2:10.190.33.30
- VIP:10.190.33.200
- 客户端:10.190.33.1(物理机)
- NFS服务器:10.190.33.10
部署共享存储
准备工作
hostnamectl set-hostname nfs-server
systemctl disable firewalld.service --now
vim /etc/selinux/config
将“SELINUX=enforcing”修改成“SELINUX=0”
reboot
安装nfs服务器必要软件及配置
yum -y install nfs-utils rpcbind
mkdir /share/wang /share/lei -p
ll /share
vim /etc/exports
/share/wang 10.190.33.0/24(ro)
/share/lei 10.190.33.0/24(ro)
echo '<h2>Here is <h1>WANG</h1></h2>' > /share/wang/test.html
echo '<h2>Here is <h1>LEI</h1></h2>' > /share/lei/test.html
检查nfs服务
systemctl enable --now rpcbind nfs
showmount -e
配置节点服务器(server2的步骤与serve1基本相同,故本文以server1举例)
准备工作
hostnamectl set-hostname nginx-server1
systemctl disable firewalld.service --now
vim /etc/selinux/config
将“SELINUX=enforcing”修改成“SELINUX=0”
reboot
配置节点web服务
yum安装Nginx需要独立的“repo”文件
yum install -y nginx
yum -y install nfs rpcbind
vim /etc/nginx/nginx.conf
······
keepalive_timeout 0;
systemctl enable --now rpcbind nfs
mount 10.190.33.10:/share/wang /usr/share/nginx/html/
ll /usr/share/nginx/html/
cat /usr/share/nginx/html/test.html
systemctl start nginx
使用客户端检查web服务是否启动及运行正常
配置虚拟环回地址
cp /etc/sysconfig/network-scripts/ifcfg-lo /etc/sysconfig/network-scripts/ifcfg-lo:0
vim /etc/sysconfig/network-scripts/ifcfg-lo:0
DEVICE=lo:0
IPADDR=10.190.33.200
NETMASK=255.255.255.255
ONBOOT=yes
systemctl restart network
route add -host 10.190.33.200 dev lo:0
ifconfig lo:0
route -n
调整内核
vim /etc/sysctl.conf
·······
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_announce = 2
sysctl -p
配置负载调度器
准备工作
hostnamectl set-hostname lvs.dr-server
systemctl disable firewalld.service --now
vim /etc/selinux/config
将“SELINUX=enforcing”修改成“SELINUX=0”
reboot
配置虚拟IP
cp /etc/sysconfig/network-scripts/ifcfg-lo /etc/sysconfig/network-scripts/ifcfg-ens32:0
vim /etc/sysconfig/network-scripts/ifcfg-ens32:0
DEVICE=ens32:0
IPADDR=10.190.33.200
NETMASK=255.255.255.255
ONBOOT=yes
systemctl restart network
ifconfig
调整 proc 响应参数
vim /etc/sysctl.conf
net.ipv4.ip_forward = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens32.send_redirects = 0 #以自己实际网卡为准
sysctl -p
配置负载分配策略
yum install -y ipvsadm
touch /etc/sysconfig/ipvsadm
systemctl start ipvsadm
ipvsadm -A -t10.190.33.200:80 -s rr
ipvsadm -a -t 10.190.33.200:80 -r 10.190.33.20:80 -g
ipvsadm -a -t 10.190.33.200:80 -r 10.190.33.30:80 -g
测试
浏览器输入VIP地址进行测试
即时刷新