Keepalive基础

news2025/2/24 11:41:33

一。简介和功能

vrrp协议的软件实现,原生设计目的是为了高可用ipvs服务

功能:

1.基于vrrp协议完成地址流动

2.为vip地址所在的节点生成ipvs规则(在配置文件中预先定义)

3.为ipvs集群的各RS做健康状况检测

4.基于脚本调用接口完成脚本中的跟中定义的功能,进而影响集群事务,以此支持nginx,haproxy等服务

二。keepalived环境准备

安装:yum install keepalived

配置文件:vi /etc/keepalived/keepalived.conf

模块一:全局模块

模块二:VIP模块

主配置master配置:

备份backup配置:

使用ip a查看是否自动东生成子网卡下的ip地址

检测ip是否有效:tcpdump -i 网卡名 -nn host 组播地址

三。keepalived的常见用法

1.其他主机ping通keepalived虚拟ip

当keepalived配置了虚拟ip后,其他的主机不能进行ping通ip(防火墙默认关闭了keepalived)

解决方法:vi /etc/keepalived/keepalived.conf (主备keepalive均配置)

2.实现keepalived的日志分离

解决方法: vi /etc/sysconfig/keepalived (指定采集日志的id为0-7之间)

vi /etc/rsyslog.conf 

最后重启keepalived检查是否存在/var/log/keepalived这个文件,且里面内容为keepalived的内容

3.独立出子配置文件

解决方法:vi /etc/keepalived/keepalived.conf(先注释整段)

mkdir -p /etc/keepalived/conf.d

vi /etc/keepalived/conf.d/keepalived.conf

4.抢占模式和非抢占模式:

默认抢占模式为preempt,即当高优先级的主机恢复在线后,会抢占优先级低的master角色,这样会导致vip在KA主机中来回漂移,导致网络抖动

建议设置抢占模式为非抢占模式nopreempt,即优先级主机恢复后,并不会抢占优先级主机master的角色,非抢占模块下,如果原主机down机,vip迁移至新主机后,后续也会发生down时,任会将vip迁回主机

配置方法:vi /etc/keepalived/keepalived.conf (两台主机均改为BACKUP,且设置为nopreempt)

5.VIP单波配置

默认keepalived主机之间利用多播相互通告消息,会造成网络拥堵,可以换成单薄,减少网络流量

解决方法: vi /etc/keepalived/keepalived.conf (两主机之间的ip写相反的ip)

检测方法:tcpdump -i ens160 -nn src host 192.168.142.133 and dst host 192.168.142.135看源到目的ip是否有精确ip,而不是组播地址

6.实现master/master的keepalived双主模式:

master/stave的单主模式,同一时间只有一个keealived对外提供服务,此主机比较繁忙,而另外一台主机却空闲,利用率低下,可以使用双主模式解决问题

解决方法: vi /etc/keepalived/keepalived.conf

主机甲:

主机乙:

四。实现IPV4的高可用性

1.DR的配置:

(1)客户机配置:(所有均配置虚拟vip,并且与keepalived的相同)

ip a a 192.168.142.20/32 dev lo:为各个主机添加VIP

vi /etc/sysctl.conf:编辑配置文件

sysctl -p:重启服务

(2)服务器配置:

yum install ipvsadm -y:下载ipvs

 vi /etc/keepalived/keepalived.conf(备用机也配置)

systemctl restart keepalived:重启

进行测试:

五。VRRP Script配置

keepalived利用VRRP Script技术,可以调用外部的辅助脚本进行资源监控,并根据监控的结果实现优先动态调整,从而实现其他应用的高可用性功能

vi /etc/keepalived/test.sh

chmod +x /etc/keepalived/test.sh


 vi /etc/keepalived/keepalived.conf 

存在文件,返回值为非0(weight生效,优先级减去权重),不存在返回值为0(weight不生效)

六。实战案例:实现haproxy的高可用

目的:可以解决当一台服务器的haproxy失效后,可以将ip进行转移到另外一台上面,实现高可用

服务器:

1.vi /etc/sysctl.conf (不进行设置,双方服务器之间的ip无法识别,启动不了haproxy)

2.yum install haproxy -y
3.vi /etc/haproxy/haproxy.cfg (两台服务器复制一样的vip,为了让一台失效,另外一台能继续运行)

4.vi /etc/keepalived/test.sh

5. chmod +x /etc/keepalived/test.sh 

6.vi /etc/keepalived/keepalived.conf 

7.systemctl restart keepalived

客户机

1.ip a d 192.168.142.20/32 dev lo:删除以前的vip

2.vi /etc/sysctl.conf:关闭设置

同时服务器要进行关闭以前的ipvsadm配置

七.邮件模式:

下载软件:yum install mailx -y

vi /etc/mail.rc

测试: echo "hello word" | mail -s test 12345678@qq.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2304376.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

计算机毕业设计SpringBoot+Vue.jst0图书馆管理系统(源码+LW文档+PPT+讲解)

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…

【Java消息队列】应对消息丢失、重复、顺序与积压的全面策略

应对消息丢失、重复、顺序与积压的全面策略 引言kafka消息丢失生产者消费者重复消费顺序消费消息积压生产者消费者其他RabbitMQ消息丢失生产者事务机制,保证生产者发送消息到 RabbitMQ Server发送方确认机制,保证消息能从交换机路由到指定队列保证消息在 RabbitMQ Server 中的…

【论文解读】TransMLA: Multi-Head Latent Attention Is All You Need

论文链接 1. 论文背景与问题动机 现代大规模语言模型(LLM)在推理时往往遇到通信瓶颈,主要原因在于自注意力机制中需要缓存大量的 Key-Value(KV)对。例如,对于 LLaMA‑65B 这种模型,即使采用 8…

登录-06.JWT令牌-生成和校验

一.JWT令牌的生成和校验 JWT令牌生成 想要生成JWT令牌&#xff0c;那么就要首先引入JWT令牌的相关依赖&#xff0c; <dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt-api</artifactId><version>0.11.2</version>…

【Git】多人协作

文章目录 完成准备工作多人协作场景一场景二远程分支删除后&#xff0c;本地 git branch -a 依然能看到的解决办法 完成准备工作 在之前&#xff0c;我们所完成的工作如下&#xff1a; 基本完成 Git 的所有本地库的相关操作&#xff0c;git基本操作&#xff0c;分支理解&#…

邮件安全之发件人伪造

电子邮件工作原理 电子邮件传输过程中主要涉及到SMTP、IMAP、POP3三种协议&#xff0c;具体功能如下&#xff1a; SMTP:全称Simple Mail Transfer Protocol&#xff0c;即简单邮件传输协议&#xff0c;主要用于发送邮件&#xff0c;使用端口号25。 IMAP:全称Internet Mail Acce…

使用 AIStor 和 OpenSearch 增强搜索功能

在这篇文章中&#xff0c;我们将探讨搜索&#xff0c;特别是 OpenSearch 如何帮助我们识别模式或查看不断增长的数据中的趋势。例如&#xff0c;如果您正在查看运营数据&#xff0c;如果您的服务似乎是随机的&#xff0c;那么您需要尽可能回溯以识别模式并找出原因。这不仅适用…

【LLM】R1复现项目(SimpleRL、OpenR1、LogitRL、TinyZero)持续更新

note &#xff08;1&#xff09;未来的工作需亟待解决&#xff1a; 支持大规模 RL 训练&#xff08;PPO、GRPO 等&#xff09;的开源基础框架用于稳定训练的 GRPO 训练超参的自动化调优RL 训练数据的配比&#xff08;难度、领域、任务等&#xff09;基于 Instruct 模型训练 R…

买股票的最佳时机 - 2

买卖股票的最佳时机 III 题目描述&#xff1a; 提示&#xff1a; 1 < prices.length < 1050 < prices[i] < 105 分析过程&#xff1a; 写动态规划&#xff0c;我们需要考虑一下问题&#xff1a; 定义状态状态转移方程初始条件 遍历顺序 4种状态&#xff1a; …

Python基于flask的智慧交通可视化,大数据智慧交通数据可视化系统

博主介绍&#xff1a;✌程序员徐师兄、8年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战*✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447…

【Unity】鱼群效果模拟

鱼群效果模拟 文章目录 鱼群效果模拟Boid算法实现方式version1_CPUversion2_GPUversion3_Multilaterationversion4_Bitonic_Sorting &#xff08;GPU友好&#xff09;version5_Skinning &#xff08;TODO&#xff09; 细节项优化项参考链接 Boid算法 Boid算法是一种模拟群体行…

云图库平台(五)——后端图片模块开发

目录 一、需求分析二、库表设计三、图片的处理如何实现图片的上传和下载创建图片的业务流程如何对图片进行解析 四、创建并使用对象存储五、后端操作对象存储初始化客户端通用能力类文档上传文件下载 一、需求分析 管理员功能&#xff1a; 图片的上传和创建&#xff1a;仅管理…

postman调用ollama的api

按照如下设置&#xff0c;不需要设置key 保持长会话的方法 # 首次请求 curl http://localhost:11434/api/generate -d {"model": "deepseek-r1:32b","prompt": "请永久记住&#xff1a;110&#xff0c;1-12&#xff0c;之后所有数学计算必…

十、OSG学习笔记-多线程(OpenThreads)

上一节内容&#xff1a; 九、OSG学习笔记-NodeVisitor节点遍历器-CSDN博客https://blog.csdn.net/weixin_36323170/article/details/145742756?spm1001.2014.3001.5501 本章节代码&#xff1a; OsgStudy/Openthreads CuiQingCheng/OsgStudy - 码云 - 开源中国https://gite…

DeepSeek 助力 Vue 开发:打造丝滑的单选按钮(Radio Button)

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 Deep…

【行业解决方案篇十八】【DeepSeek航空航天:故障诊断专家系统 】

引言:为什么说这是“航天故障终结者”? 2025年春节刚过,航天宏图突然官宣"DeepSeek已在天权智能体上线",这个搭载在卫星和空间站上的神秘系统,号称能提前48小时预判99.97%的航天器故障。这不禁让人想起年初NASA禁用DeepSeek引发的轩然大波,更让人好奇:这套系…

谷歌浏览器更新后导致的刷新数据无法显示

这几天突然出现的问题&#xff0c;就是我做了一个网站&#xff0c;一直用Google展示&#xff0c;前两天突然就是刷新会丢失数据&#xff0c;然后再刷新几次吧又有了&#xff0c;之前一直好好的&#xff0c;后端也做了一些配置添加了CrossOrigin注解&#xff0c;然而换了edge浏览…

游戏设计模式阅读 - 游戏循环

游戏与普通程序最大的不同点在于&#xff1a; 游戏不像其他大多数软件&#xff0c;游戏即使在没有玩家输入时也继续运行。 如果你站在那里看着屏幕&#xff0c;游戏也不会冻结。动画会持续播放。视觉效果继续闪烁。 如果运气不好的话&#xff0c;怪物会继续暴揍你的角色。 那么…

(五)趣学设计模式 之 建造者模式!

目录 一、 啥是建造者模式&#xff1f;二、 为什么要用建造者模式&#xff1f;三、 建造者模式怎么实现&#xff1f;四、 建造者模式的应用场景五、 建造者模式的优点和缺点六、 总结 &#x1f31f;我的其他文章也讲解的比较有趣&#x1f601;&#xff0c;如果喜欢博主的讲解方…

github 怎么创建一个私有repository 并从另外一台电脑拉取下来更新

1.github上新建一个repository 设置为private tips删除在这 点setting 然后往下拖动 会有个这里是用来删项目的 2.另外 一台电脑拉取这个repository的时候 需要配置 一个ssh key 这个key的内容生成参考本地电脑的生成 然后在这配置 2.1 生成 SSH 密钥&#xff08;如果还没有…