第三章 LVS+Keepalived群集

Keepalived基础知识

Keepalived概述

  • Keepalived 起初是专门针对 LVS 设计的一款强大的辅助工具,主要用来提供故障切换(Failover)和健康检査(Health Checking)功能--判断 LVS 负载调度器、节点服务器的可用性。
  • 当 master 主机出现故障及时切换到 backup节点保证业务正常,当master 故障主机恢复后将其重新加入群集并且业务重新切换回master节点。

Keepalived案例分析

  • 企业应用中,单台服务器承担应用存在单点故障的危险
  • 单点故障一旦发生,企业服务将发生中断,造成极大的危害

Keepalived工具介绍

  • 专为LVS和HA设计的一款健康检查工具支持故障自动切换(Failover)
  • 支持节点健康状态检查(Health Checking)
  • 官方网站:Keepalived for Linux

Keepalived实现原理剖析

  • Keepalived采用VRRP热备份协议实现Linux服务器的多机热备功能

Keepalived案例讲解

  • Keepalived可实现多机热备每个热备组可有多台服务器
  • 双机热备的故障切换是由虚拟IP地址的漂移来实现,适用于各种应用服务器

实现基于Web服务的双机热备

  • 漂移地址:192.168.10.72
    • 漂移地址会随着故障的切换转移这个IP地址的承载者
  • 主、备服务器:192.168.10.73.192.168.10.74
  • 提供的应用服务: Web

Keepalived安装与启动

  • 在LVS群集环境中应用时,也需用到ipvsadm管理工具
  • YUM安装Keepalived
  • 启用Keepalived服务

配置Keepalived master服务器

进入主配置文件
  • Keepalived配置目录位于/etc/keepalived/keepalived.conf
    • global_defs {...} 区段指定全局参数
    • vrrp_instance 实例名称 {...}区段指定VRRP热备参数
    • 注释文字以"!"符号开头
    • 目录samples,提供了 许多配置样例作为参考
常用配置选项

|-------------------------|-----------------------|
| 配置选项 | 说明 |
| router_id LVS_DEVEL | 本路由器(服务器)的名称 |
| vrrp_strict | 严格模式 |
| vrrp_instance Vl_1 | 定义VRRP热备实例 |
| state MASTER | 热备状态,MASTER表示主服务器 |
| interface ens33 | 承载VIP地址的网卡 |
| virtual_router_id 1 | 虚拟路由器的ID号,每个热备组保持致 |
| priority 100 | 优先级,数值越大优先级越高 默认为100 |
| advert_int 1 | 通告间隔秒数(心跳频率) |
| auth_type PASS | 认证类型 |
| auth_pass 123456 | 密码字串 |
| virtual_ipaddress {vip} | 指定漂移地址{VIP},可以有多个集群地址 |

配置Keepalived slave服务器

  • Keepalived备份服务器的配置与master的配置有三个选项不同
    • router_id:设为自有名称
    • state:设为BACKUP
    • priority:值低于主服务器
  • 其他选项与master相同

Keepalived双机热备效果测试

测试双机热备的效果
  • 主、备机均启用Web服务,设置不同内容
  • 先后禁用、启用主服务器的网卡
执行的测试
  • 测试1:使用ping检测192.168.10.72的连通性
  • 测试2:访问http://192.168.10.72,确认可用性及内容变化
  • 测试3:查看日志文件/ar/log/messages中的变化

案例:负载均衡+高可用群集

  • Keepalived的设计目标是构建高可用的LVS负载均衡群集,可以调用ipvsadm工具来创建虚拟服务器、管理服务器池,而不仅仅用作双机热备
  • 使用Keepalived构建LVS群集更加简便易用

主要优势

  • 对LVS负载调度器实现热备切换,提高可用性
  • 对服务器池中的节点进行健康检查,自动移除失效节点,恢复后再重新加入

案例拓扑

  • 在基于LVS+Keepalived实现的LVS群集结构中,至少包括两台热备的负载调度器,三台以上的节点服务器
相关推荐
是小满满满满吗1 小时前
传输层:udp与tcp协议
linux·服务器·网络
小刘同学++1 小时前
ECB(电子密码本,Electronic Codebook) 和 CBC(密码分组链接,Cipher Block Chaining)区分于用途
网络·ssl
gadiaola2 小时前
【计算机网络】第3章:传输层—TCP 拥塞控制
网络·网络协议·tcp/ip·计算机网络
猎板PCB厚铜专家大族2 小时前
多层PCB技术解析:从材料选型到制造工艺的深度实践
网络·制造
FakeOccupational4 小时前
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
网络·游戏
fei_sun6 小时前
【计算机网络】三报文握手建立TCP连接
网络·tcp/ip·计算机网络
Johny_Zhao6 小时前
2025年6月Docker镜像加速失效终极解决方案
linux·网络·网络安全·docker·信息安全·kubernetes·云计算·containerd·yum源·系统运维
PypYCCcccCc6 小时前
支付系统架构图
java·网络·金融·系统架构
搬码临时工8 小时前
如何把本地服务器变成公网服务器?内网ip网址转换到外网连接访问
运维·服务器·网络·tcp/ip·智能路由器·远程工作·访问公司内网
zzc9218 小时前
MATLAB仿真生成无线通信网络拓扑推理数据集
开发语言·网络·数据库·人工智能·python·深度学习·matlab