Keepalived 双 机 热 备 基 础 知 识
Keepalived 起初是专门针对LVS 设计的一款强大的辅助工具,主要用来提供故障切换(Failover) 和健康检查(Health Checking) 功能——判断 LVS负载调度器、节点服务器的可用性,当master 主机出现故障及时切换到backup节点保证业务正常,当master 故障主机恢复后将其重新加入群集并且业务重新切换回 master 节点。
Keepalived概述及安装
1.Keepalived 的热备方式
Keepalived 采用VRRP(Virtual Router Redundancy Protocol,虚拟路由冗余协议)热备份协议,以软件的方式实现Linux 服务器的多机热备功能。
2.Keepalived 的安装与服务控制
(1)安装Keepalived
(2)控制Keepalived 服务
使用Keepalived 实现双机热备
基于VRRP的热备方式,Keepalived 可以用作服务器的故障切换,每个热备组可以有多台服务器——当然,最常用的就是双机热备了。
1.主服务器的配置
确认上述配置无误,然后启动Keepalived 服务。实际状态为MASTER的主服务器将为 ens33 接口自动添加VIP 地址,通过ip 命令可以查看。
2. 备用服务器的配置
在同一个Keepalived 热备组内,所有服务器的Keepalived 配置文件基本相同,包括虚拟路由器的ID 号、认证信息、漂移地址、心跳频率等。不同之处主要在于路由器名称、热备状态、优先级。
路由器名称(router_id): 建议为每个参与热备的服务器指定不同的名称。
热备状态(state): 至少应有一台主服务器,将状态设为MASTER; 可以有多台备用的服务器,将状态设为BACKUP。
优先级(priority): 数值越大则取得VIP 控制权的优先级越高,因此主服务器的优先级应设为最高;其他备用服务器的优先级可依次递减,但不要相同,以免在争夺VIP 控制权时发生冲突。
配置备用服务器(可以有多台)时,可以参考主服务器的keepalived.conf 配置文件内容,只需修改路由器名称、热备状态、优先级。
确认配置无误,一样需要启动Keepalived 服务。此时主服务器仍然在线,VIP 地址实 际上仍然由主服务器控制,其他服务器处于备用状态。
3. 测试双机热备功能
Keepalived 的日志消息保存在/var/log/messages 文件中,在测试主、备故障自动切换功能时,可以跟踪此日志文件来观察热备状态的变化。
(1)连通性测试
在客户机中执行“ping-t 172.16.16.172” 命令,能够正常、持续ping 通,根据以下 操作继续观察测试结果。
① 停止启用主服务器的Keepalived服务,发现ping测试只中断了1或2个包即恢复 正常,说明已有其他服务器接替VIP地址,并及时响应客户机请求。
② 重新启用主服务器的Keepalived服务,发现ping测试再次中断1或2个包即恢复 正常,说明主服务器已恢复正常,并夺回VIP 地址的控制权。
(2)Web 访问测试
在客户机中访问http://172.16.16.172/, 将看到由主服务器172.16.16.173提供的网
页文档。
① 停止启用主服务器的Keepalived服务,再次访问上述Web服务,将看到由备用服务 器172.16.16.174提供的网页文档,说明VIP地址已切换至备用服务器。
② 重新启用主服务器的Keepalived服务,再次访问上述 Web服务,将看到重新由主服 务器172.16.16.173提供的网页文档,说明主服务器已重新夺取VIP地址。
(3)查看日志记录
在执行主、备服务器故障切换的过程中,分别观察各自的/var/log/messages 日志文件,可以看到MASTER、SLAVE 状态的迁移记录。
① 主服务器中,Keepalived 服务状态先变为“stop”,移除VIP 地址,恢复后重新变为 MASTER。
② 备用服务器中,状态先切换为MASTER,待主服务器恢复后再交回控制权。
LVS+Keepalived高可用群集
eepalived 的设计目标是构建高可用的LVS负载均衡群集,可以调用ipvsadm工具来 创建虚拟服务器、管理服务器池,而不仅仅用作双机热备。使用Keepalived 构建LVS 群集 更加简便易用,主要优势体现在:对LVS负载调度器实现热备切换,提高可用性;对服务器 池中的节点进行健康检查,自动移除失效节点,恢复后再重新加入。
1. 配置主调度器
(1)全局配置、热备配置
首先为主、从调度器实现热备功能,漂移地址使用LVS 群集的VIP 地址。
(2)Web 服务器池配置
(3)重新启动Keepalived 服 务
2. 配置从调度器
3. 配 置Web节点服务器
根据所选择的群集工作模式不同 (DR 或 NAT), 节点服务器的配置也有些差异。以 DR 模式为例,除了需要调整/proc 系统的 ARP响应参数以外,还需要为虚拟接口lo:0 配 置VIP 地址,并添加一条到VIP 的本地路由。
4. 测试LVS+Keepalived 高可用群集
在客户机的浏览器中,能够通过LVS+Keepalived群集的VIP地址(172.16.16.172)正 常访问Web页面内容。当主、从调度器任何一个失效时,Web站点仍然可以访问(可能需要 刷新或者重新打开浏览器);只要服务器池有两台及以上的真实服务器可用,就可以实现访 问量的负载均衡。
通过主、从调度器的/var/log/messages 日志文件,可以跟踪故障切换过程;若要查看 负载分配情况,可以执行 “ipvsadm -1n”“ipvsadm -lnc” 等操作命令。最终可以验证 LVS+Keepalived 高可用负载均衡群集的健壮性。