一、Keepalived工具介绍
1.1 普通集群容易出现的问题
企业应用中,单台服务器承担应用存在单点故障的危险。
单点故障一旦发生, 企业服务将发生中断,造成极大的危害。
1.2 Keepalived工具介绍
Keepalived 是一个基于VRRP协议来实现的LVS服务高可用方案,可以解决静态路由出现的单点故障问题。
Keepalived是专为LVS和HA设计的一款健康检查工具:
支持故障自动切换(Failover)
支持节点健康状态检查(Health Checking)
判断LVS负载调度器、节点服务器的可用性,当master主机出现故障及时切换到backup节点保证业务正常,当master故障主机恢复后将其重新加入群集并且业务重新切换回master节点。
官方网站: www.keepalived.orgl
二、Keepalived实现原理剖析
2.1 Keepalived采用VRRP热备份协议
Keepalived采用VRRP热备份协议实现Linux服务器的多机热备功能。
VRRP(虚拟路由冗余协议)是针对路由器的一种备份解决方案:
由多台路由器组成一个热备组,通过共用的虚拟IP地址对外提供服务。
每个热备组内同时只有一台主路由器提供服务,其他路由器处于冗余状态。
若当前在线的路由器失效,则其他路由器会根据设置的优先级自动接替虚拟IP地址,继续提供服务。
在配置时设置优先级,优先级高的那一方为master。master节点承载着VIP地址。
2.2 Keepalived多机热备
Keepalived可实现多机热备,每个热备组可有多台服务器。(由于服务器的成本较高,一般使用2~3台服务器做热备组,大部分公司都是1主1备两台服务器)
双机热备的故障切换是由虚拟IP地址的漂移来实现,适用于各种应用服务器。
2.3 Keepalived工作原理
在一个LVS服务集群中通常有主服务器(MASTER)和备份服务器(BACKUP)两种角色的服务器,但是对外表现为一个虚拟IP,主服务器会发送VRRP通告信息给备份服务器,当备份服务器收不到VRRP消息的时候,即主服务器异常的时候,备份服务器就会接管虚拟IP,继续提供服务,从而保证了高可用性。
主服务器作用:转发数据;发送报文告诉备服务器自己在线。
备服务器作用:监听主服务器发来的数据;收不到消息的时候就接替主服务器。
三、Keepalived体系主要模块
keepalived体系架构中主要有三个模块,分别是core、check和vrrp。
core模块:为keepalived的核心,负责主进程的启动、维护及全局配置文件的加载和解析。
vrrp模块:是来实现VRRP协议的。
check模块:负责健康检查,常见的方式有端口检查及URL检查。
四、LVS-DR模式+keepalived 高可用集群部署
实验环境:
主DR调度器:192.168.192.10/24
备DR调度器:192.168.192.11/24
web1:192.168.192.12/24
web2:192.168.192.13/24
VIP:192.168.72.20/32
客户端:192.168.192.14/24
4.1 部署2台web服务器
4.1.1 第一台web节点服务器(192.168.192.12/24),VIP:192.168.192.20/32
1、#关闭防火墙
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0
2、#安装httpd,开启服务
[root@localhost ~]# mount /dev/sr0 /mnt //挂载光盘
mount: /dev/sr0 写保护,将以只读方式挂载
[root@