该服务涉及到的技术较多,相关技术文档的具体解释可以参考以下链接:
LVS 实现负载均衡原理及安装配置详解
keepalived双机热备理论+配置文件详解

一、环境分析:
1、2个调度器和2个web节点使用同一个网段地址,可以直接和外网通信。为了共享存储的
安全性,一般将web节点和存储服务器规划到内网环境,所以web节点必须有两个及以上
网卡的接口。
2、我这里资源有限,也为了配置方便,所以调度器和web节点分别只有两个,在web访问请
求量不大的情况下,足够了,但是若访问请求比较大,那么最少要分别配置三个调度器和
web节点,如果只有两个web节点的话,访问量又比较大,那么一旦有一个宕机了,那剩下
一个独苗必定会因为扛不住激增的访问请求,而被打死。
3、准备系统映像,以便安装相关服务。
4、自行配置防火墙策略和除了VIP之外的IP地址(我这里直接关闭了防火墙)。
5、keepalived会自动调用IP_vs模块,所以无需手动加载。
二、最终效果:
1、 客户端多次访问群集的VIP,得到的是同一个网页。
2、主调度器宕机后,群集的VIP地址将会自动漂移到从(备份)调度器,此时,所有
的调度任务由从调度器进行分配。当主调度器恢复运行后,群集的VIP地址会自动转移回
主调度器,主调度器继续工作,从调度器转回备份状态。
3、web节点宕机后,会被keepalived健康检查功能检测到,从而自动在web节点池中去除
宕机的节点,待web节点恢复运行后,会被自动添加到web节点池中。
三、开始搭建:
主调度器ip:200.0.0.1
从调度器ip: 200.0.0.2
web1ip:200.0.0.3
web2ip:200.0.0.4
1、配置主调度器
[root@LVS1 ~]# yum -y install keepalived ipvsadm #安装所需工具
[root@LVS1 ~]# vim /etc/sysctl.conf #调整内核参数,写入下面三行
.....................
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0
[root@LVS1 ~]# sysctl -p #刷新一下
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0
[root@LVS1 ~]# cd /etc/keepalived/
[root@LVS1 keepalived]# cp keepalived.conf keepalived.conf.bak #备份配置文件
[root@LVS1 keepalived]# vim keepalived.conf #编辑keepalived配置文件
#以下标注的行是需要进行更改的,没有标注的行,保持默认即可
! Configuration File for keepalived
global_defs {
notification_email {
acassen@firewall.loc #收件人地址(没需要的话可以不做修改)
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc #发件人姓名、地址(可不做修改)
smtp_server 192.168.200.1
smtp_connect_timeout 30

本文详细介绍如何使用LVS和Keepalived搭建一个高可用的负载均衡集群,包括环境分析、系统配置、服务安装、内核参数调整、keepalived配置、web节点设置以及故障切换测试,确保服务的稳定性和高可用性。

879

被折叠的 条评论
为什么被折叠?



