文章目录
f5 是一个硬件设备,典型的负载均衡设备
前言:
-
理解keepalived实现原理
-
keepalived的部署
-
LVS+keepalived高可用群集部署
双机热备keepalived
底层跑的协议就是vrrp
一:实例分析keepalived
在企业应用中,单台服务器承担应用,存在单点故障的危险,在企业应用群集中,存在了至少两处单点故障危险,单点故障一旦发生,企业服务将发生中断,造成极大的危害
二:keepalived工具
2.1 专为LVS负载均衡和HA高可用设计的一款健康检查工具
- 支持故障自动切换(failover)
- 支持节点健康状态检查(Health Checking)
- 官方网站:http://www.keepalived.org/
三:keepalived原理解析
- keepalived采用VRRP热备份协议,实现linux服务器的多机热备功能
- VRRP,虚拟路由冗余协议,是针对路由器的一种备份解决方案
- 由多台路由器组成一个热备组,通过共用的虚拟IP地址对外提供服务
- 每个热备组内同一时刻只有一台主路由器提供服务,其他路由器处于冗余状态
- 若当前在线的路由器失效,则其他路由器会根据设置的优先级自动接替虚拟IP地址,继续提供服务
- keepalive可实现多机热备,每个热备组可有多台服务器,最常用的就是双机热备
- 双机热备的故障切换是由虚拟IP地址的漂移来实现,适用于各种应用服务器
四:keepalived安装与启动
- 在LVS群集环境中应用时,也需要ipvsadm管理工具
- yum安装keepalived
- 启用keepalived服务
五:配置keepalived master服务器
- keepalived配置目录位于/etc/keepalived/
- keepalived.conf是主配置文件
- global_defs {…} 区段指定全局参数
- vrrp_instance 实例名称 {…} 区段指定VRRP热备参数
- 注释文字以”!“符号开头
- 目录samples/,提供了许多配置样例作为参考
6.1 常用配置选项讲解
router_id HA_TEST_R1: 本路由器(服务器)的名称
vrrp_instance VI_1: 定义VRRP热备实例
state MASTER:热备状态,MASTER表示主服务器
interface ens33:承载VIP地址的物理接口
virtual_router_id 1:虚拟路由器的ID号,每个热备组保持一致
热备组的ID号,代表是否在一个热备组中
priority 100: 优先级,数值越大优先级越高
advert_int 1: 通告间隔秒数(心跳频率)
auth_type PASS: 认证类型
auth_pass 123456: 密码字串
virtual_ipaddress {vip}: 指定漂移地址(VIP),可以有多个
六:配置keepalived slave服务器
keppalived 备份服务器的配置与master的配置有三个选项不同
-
router_id: 设为自由名称
-
state: 设为BACKUP
-
priority: 值低于主服务器
-
其他选项与master相同
七:keepalived双机热备效果测试
8.1 测试双机热备的效果
- 主备机均启用Web服务,内容相同
- 先后禁用、启用主服务器的网卡,执行以下测试
查看系统日志文件/var/log/messages
系统日志文件,messages
九:负载均衡+高可用群集
keepalived的设计目标是构建高可用的LVS负载均衡群集,可以调用ipvsadm工具来创建虚拟服务器、管理服务器池,而不仅仅用作双机热备
使用keepalived构建LVS群集更加简便易用,主要优势体现在:
- 对LVS负载调度器实现热备切换,提高可用性
- 对服务器池中的节点进行健康检查,自动移除失效节点,恢复后再重新加入
在基于LVS+keepalived实现的LVS群集结构中,至少包括两台热备的负载调度器,三台以上的节点服务器
十一:配置主调度器
11.1 全局配置、热备配置
- 首先应为主、从调度器实现热备功能,漂移地址使用LVS群集的VIP地址
11.2 Web服务器池配置
- 在keepalived的热备配置基础上,添加”virtual_server VIP 端口 { … }“ 区段来配置虚拟服务器,主要包括对负载调度算法、群集工作模式、健康检查间隔、真实服务器地址等参数的设置
11.3 重新启动keepalived服务
十二:配置Web节点服务器
在DR模式的LVS集群中,除了需要调整/proc系统的ARP响应参数以外,还需要为虚拟接口lo:0配置VIP地址,并添加一条到VIP的本地路由,具体方法与LVS-DR集群一致
十三:测试群集
在客户机浏览器中,能够通过群集的VIP地址正常访问Web页面内容
当主、从调度器任何一个失效时,Web站点仍然可以访问
只要服务器池有两台及以上的真是服务器可用,就可以实现访问量的负载均衡