当前位置: 首页 > news >正文

Keepalived高可用模型

一、高可用集群与 VRRP

  1. 集群类型:负载均衡(LB,如 LVS)、高可用(HA,解决单点故障)、高性能计算(HPC)。
  2. 可用性指标:SLA 协议,公式A=MTBF/(MTBF+MTTR),常见等级 99.9%(月停机 43.2 分钟)至 99.9999%(2.6 秒)。
  3. VRRP 协议:虚拟路由冗余协议,通过虚拟路由器(VRID)、VIP、VMAC 实现网关冗余,支持主备 / 主主模式,含优先级、心跳通告、认证机制。

二、Keepalived 部署

1.Keepalived 安装

dnf install keepalived -y

2.修改配置文件

IP地址

224.0.0.44 组播地址

192168.23.50 ka1的主机ip

192.168.23.60 ka2的主机ip

192.168.23.20 rs1的ip

192.168.23.30 rs2的ip

192.168.23.200 虚拟ip

192.168.23.201 虚拟ip

KA1

KA2

vrrp_strict要注释 #严格遵循vrrp协议 #启用此项后以下状况将无法启动服务

3.启用keepalived日志功能

 vim /etc/sysconfig/keepalived

KEEPALIVED_OPTIONS="-D -S 6"

vim /etc/rsyslog.conf

local6.*                                              /var/log/keepalived.log

systemctl restart keepalived.service rsyslog.service

三.Keepalived 企业应用示例

1 实现master/slave的 Keepalived 单主架构

见上方配置文件

2. 抢占模式和非抢占模式

默认抢占模式

非抢占模式

rs1优先级高

rs2优先级低

当把ka1关闭时ka2会自动获取虚拟ip,当ka1重启时不会获取虚拟ip

抢占延迟模式

ka1和ka2配置

优先级高的主机恢复后,不会立即抢回VIP,而是延迟一段时间(默认300s)再抢回 VIP

3 VIP单播配置

ka1

ka2

测试

4.Keepalived 通知脚本配置

ka1和ka2都一样

vim /etc/keepalived/mail.sh

vim /etc/mail.rc

keepalived的配置

enable_script_security

script_user root

发送测试邮件

dnf install s-nail sendmail   -y

systemctl enable --now sendmail.service

echo test message |mail -s test 13814074602@163.com

当关闭或启动keepalived时,vip所处主机改变会发送邮件

5.master/master 的 Keepalived 双主架构

ka1

ka2

观察(两个或以上VIP分别运行在不同的keepalived服务器,以实现服务器并行提供web访问的目的,提高 服务器资源利用率)

6 .实现IPVS的高可用性

ka1和ka2相同

启动两台真实服务器

绑定VIP至web服务器lo网卡

启动客户端测试

7.双主分别实现httpd和mysql服务的调度

ka配置

ipvsadm策略

rs1和rs2安装mysql。创建用户和提供权限

测试

8.实现其它应用的高可用性 VRRP Script

利用脚本实现主从角色切换

运行脚本时,如果脚本没成功,echo $?时返回1,这时高优先级主机的优先级会降30,vip会被备用主机抢去,返回0的时候会再抢回来

创建脚本

提供权限

chmod +x /mnt/check_lee.sh

ka配置

interval 1#间隔时间,单位为秒,默认1秒

timeout  3#超时时间

weight #默认为0,如果设置此值为负数。#当上面脚本返回值为非0时     #会将此值与本节点权重相加可以降低本节点权重, #即表示fall。 #如果是正数,当脚本返回值为0,     #会将此值与本节点权重相加可以提高本节点权重     #即表示 rise.通常使用负值

 fall       #执行脚本连续几次都失败,则转换为失败,建议设为2以上  

  rise       #执行脚本连续几次都成功,把服务器从失败标记为成功

测试

实现HAProxy高可用

安装haproxy

进入 /etc/haproxy/haproxy.cfg配置

创建脚本并给权限

ka配置

测试结果跟上面差不多

http://www.dtcms.com/a/293837.html

相关文章:

  • [matlab]matlab上安装xgboost安装教程简单版
  • Excel——设置打印的区域
  • Unity × RTMP × 头显设备:打造沉浸式工业远控视频系统的完整方案
  • 将AI协作编程从“碰运气”的提示工程(Prompt Engineering)提升到“可预期”的上下文工程(Context Engineering)
  • 驯服AI的“魔法咒语”:Prompt提示词工程使用教程
  • 【Spring Cloud Gateway 实战系列】基础篇:路由、断言、过滤器、负载均衡深度解析
  • AI产品经理面试宝典第46天:模型评估与Prompt工程核心考点解析
  • 1553B心得总结
  • VSCODE 禁用git 功能
  • k8s:docker compose离线部署haborV2.13.1及采用外部的postgresql及redis数据库
  • 设计模式九:构建器模式 (Builder Pattern)
  • Hexo - 免费搭建个人博客01 - 安装软件工具
  • 在 Ubuntu 22.04 上运行 cAdvisor 时遇到 mountpoint for cpu not found 错误
  • DeepSeek 助力 Vue3 开发:打造丝滑的日历(Calendar),日历_家庭维护示例(CalendarView01_31)
  • Linux 环境下安装 MySQL 8.0.34 二进制 详细教程 附docker+k8s启动
  • 【Redis】在Ubentu环境下安装Redis
  • 探索 Linux 权限的奥秘:守护系统安全的关键
  • Cell Meb | 国自然热点DNA甲基化和蛋氨酸代谢共同解析癌症恶病质肌肉萎缩的机制
  • 嵌入式平台DMXRDM协议开源项目说明
  • DIOR-ViT:用于病理图像癌症分类的差分序数学习视觉Transformer|文献速递-医学影像算法文献分享
  • 总结CRC算法的几个知识点【防止遗忘】
  • C#与WPF使用mvvm简单案例点击按钮触发弹窗
  • 【Spring Cloud Gateway 实战系列】进阶篇:过滤器高级用法、动态路由配置与性能优化
  • 2025年股指期货期权交割日一览表
  • 第五章 W55MH32 UDP示例
  • 算法笔记之归并排序
  • 分享鸢尾花数据集:iris.csv,以及简单数据分析与分类预测示例(决策树)
  • Deep learning--模型压缩的五种方法
  • 沪银本周想法
  • Spring DeferredResult 实现长轮询