DR搭建Web群集与LVS结合Keepalived搭建高可用Web群集

实现LVS的DR模式

LVS的DR模式的原理详细介绍请看LVS负载均衡之LVS-NAT与LVS-DR模式原理详解这篇文章。

一. 实验环境

三台机器:

Director节点: (ens33 192.168.10.53 vip ens33:0 192.168.10.80)

Real server1: (ens33 192.168.10.51 vip lo:0 192.168.10.80)

Real server2: (ens33 192.168.10.52 vip lo:0 192.168.10.80)

二. 安装和配置 1. 配置两个real server服务器

(1) 配置虚拟IP地址(VIP)

VIP地址仅用作发送Web响应数据包的源地址,并不需要监听客户机的访问请求(改由调度器Director监听并分发)。因此使用虚接口lo:0来承载VIP地址。

cd /etc/sysconfig/network-scripts/ cp ifcfg-lo ifcfg-lo:0 vim ifcfg-lo:0 DEVICE=lo:0 IPADDR=192.168.10.80 NETMASK=255.255.255.255 #子网掩码必须全为1 ONBOOT=yes 1 ifup lo:0 #开启虚拟接口

LVS负载均衡之LVS-DR搭建Web群集与LVS结合Keepalived搭建高可用Web群集


(2)安装httpd,创建测试网页

#安装httpd yum install httpd -y #real server1创建测试网页 echo "Server 192.168.10.51" > /var/www/html/index.html #real server2创建测试网页 echo "Server 192.168.10.52" > /var/www/html/index.html

(3)启动httpd服务,关闭防火墙和安全性策略

#启动httpd服务 systemctl start httpd.service systemctl enable httpd.service #关闭防火墙和安全性策略 systemctl stop firewalld.service systemctl disable firewalld.service setenforce 0

(4)在两台real server上配置启动脚本

vim /etc/init.d/rs.sh #!/bin/bash VIP=192.168.10.80 case "$1" in start) ifconfig lo:0 $VIP netmask 255.255.255.255 broadcast $VIP /sbin/route add -host $VIP dev lo:0 #为本机添加一条路由记录 echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce sysctl -p >/dev/null 2>&1 echo "RealServer Start OK " ;; stop) ifconfig lo:0 down route del $VIP /dev/null 2>&1 echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce echo "RealServer Stopd" ;; *) echo "Usage: $0 {start|stop}" exit 1 esac exit 0

这里需要注意的是避免ARP通信紊乱,解决方案是:修改RS上内核参数(arp_ignore和arp_announce)将RS上的VIP配置在lo接口的别名上,并限制其不能响应对VIP地址解析请求。

arp_ignore=1表示系统只响应目的IP为本地IP的ARP请求。

arp_announce=2表示系统不使用IP包的源地址来设置ARP请求的源地址,而选择发送接口的IP地址。
(5)运行启动脚本 chmod +x rs.sh service rs.sh start

最后在本机上自测访问网站服务

LVS负载均衡之LVS-DR搭建Web群集与LVS结合Keepalived搭建高可用Web群集


LVS负载均衡之LVS-DR搭建Web群集与LVS结合Keepalived搭建高可用Web群集

2. 配置Director server服务器

(1)配置虚拟IP地址,以便响应群集访问

cd /etc/sysconfig/network-scripts/ cp ifcfg-ens33 ifcfg-ens33:0 vim ifcfg-ens33:0 DEVICE=ens33:0 ONBOOT=yes IPADDR=192.168.10.80 NETMASK=255.255.255.0 ifup ens33:0

LVS负载均衡之LVS-DR搭建Web群集与LVS结合Keepalived搭建高可用Web群集


(2)安装ipvsadm管理工具

yum install ipvsadm -y

(3)开启路由功能

vim /etc/sysctl.conf net.ipv4.ip_forward=1 sysctl -p #保存

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/d370ca4166323de65b51bd6dcb2710b1.html