LVS+keepalived

概念

Lvs+keepalived:高可用集群

Keepalived是为了lvs应运而生的高可用服务,lvs的调度器无法做高可用,于是keepalived这个软件,实现的是调度器的高可用

但是keepalived不是专门为了lvs集群服务的,也可以做其他代理服务器的高可用

Lvs的高可用集群:主调度器和备调度器(可以有多个)一主两备或一主一备

主调度器能够正常运行时,由主调度器进行后端真实服务器的分配处理,其余的备用调度器处于在冗余状态,也就是备用调度器不参与集群的运转,主调度器出现了故障无法运行,这个时候备调度器才会承担主调度器的功能,一旦主调度器恢复了工作,继续由主调度器进行处理,备调度器又成了冗余。

Vrrp:keepalived 是基于rrp协议实现lvs服务的高可用,解决了调度器单节点的故障问题

Vrrp协议:提高网络路由器的可靠性开发的一种协议

  1. 选举出主设备,预先设定好主和备的,主的优先级较高,备的优先级较低,一旦开启服务器,优先级高的自动抢占主的位置
  2. Vrrp组播通信:224.0.0.18 地址 ,vrrp协议当中的主备服务器通过组播地址进行通信,交换主备服务器之间的运行状态,主服务器会周期性的发送vrrp的报文消息,以通知其他备服务器主现在的状态
  3. 主备切换,主服务器发生故障,或者不可达,vrrp协议会把请求转移到被服务器,通过组播地址,vrrp可以迅速地通知其他服务器发生了主备切换,可以确保新的主服务器可以正常的处理客户端的请求,

故障恢复:一旦主服务器恢复了通信之后还是由组播地址进行通信,发现在恢复的主服务器优先级更高,会抢占原主服务器的位置,成为主服务器,调度和接受请求

Lvs-DR模式结合keepalived

Keepalived的体系模块有三个

  1. core模块:负载整个keepalived启动加载和维护
  2. Vrrp模块:实现vrrp协议,主备切换
  3. Check模块:负责健康检查,检查节点服务器(后端真实服务器)的健康检查,这个是配置真实服务器的模块当中。

配置文件内容解释

优先等级

发送报文间隔(通知间隔秒数)

检查后端服务器

工作方式要大写

0就是关掉连接保持时间

用的tcp协议

脑裂:主和备同时拥有vip地址,在高可用系统当中,联系两个节点的心跳线,如果断开,本来是一体的,动作协调的高可用系统,心跳线断开后,分裂成两个独立的个体,主要是主和备之间失去了联系,都以为是对方出现了故障。,两个调度器就像脑裂人一样开始抢占主的位置,抢占vip,于是出现了脑裂现象,主有vip,备也有vip,从而导致整个集群失败。

怎么解决脑裂?

  1. 软件层面

检查配置文件,配置文件有问题,是不是主备优先级搞错了。

Tcpdunmp抓包分析一下

简单粗暴的方式就是重启

  1. 网络层面

高可用服务器之间的心跳线检测失败,主要是主和备之间无法进行通信,导致主备抢占vip导致的

  1. 硬件层面

很复杂多种原因

连接主备之间的心跳线老化

网卡或者网卡的驱动失效,ip地址配置冲突

防火墙导致的,没配置心跳线消息的传输通道,导致检测失败

后端服务器的配置问题,心跳方式不同,心跳广播冲突(比较少见),软件bug

解决脑裂方法

1.硬件方面:准备两条心跳线,这样断一条线,依然能够传送心跳消息

2.设置防火墙一定要让心跳的消息通过

3.依靠监控软件实时监测(zabbix)。

Dev 开发环境 开发人员专用,

Sit 测试环境,测试人员使用(开发,运维)

Pre 预生产环境,一般是运维开发使用(要和最终的生产环境保持一致)

Prd 生产环境(面向用户的最终环境)

实验

Test1:主调度器 192.168.233.66

Test2:备调度器 192.168.233.67

后端真实服务器1:192.168.233.68

后端真实服务器2:192.168.233.69

第二个实验

其他代理服务器 如nginx

总结

Keepaliced

工作方式就是基于vrrp协议:

  1. 确定主备
  2. Vip地址只能有一个,出现在主服务器上
  3. Vrrp 224.0.0.18 这个是组播地址,双方发送vrrp报文,检测主的心跳(状态)
  4. 主备切换,主切换故障,vip地址会漂移到备服务器
  5. 主恢复了,vip地址要回到主
  6. 脑裂 主备都有vip 软件层面 检查配置文件,重启
  7. Keepalived 不是只能和lvs搭配,也可以和其他服务配合,实现高可用。

Keepalived工作方式 流向

相关推荐
开开心心就好10 小时前
近200个工具的电脑故障修复合集
安全·智能手机·pdf·电脑·consul·memcache·1024程序员节
数据皮皮侠AI2 天前
中国城市可再生能源数据集(2005-2021)|顶刊 Sci Data 11 种能源面板
大数据·人工智能·笔记·能源·1024程序员节
计算机毕业论文辅导5 天前
物联网实战:基于MQTT协议的智能家居数据传输系统设计与实现
1024程序员节
开开心心就好6 天前
支持批量处理的视频分割工具推荐
安全·智能手机·rust·pdf·电脑·1024程序员节·lavarel
liuyao_xianhui8 天前
Linux开发工具结尾 _make
linux·运维·服务器·数据结构·哈希算法·宽度优先·1024程序员节
学传打活9 天前
【边打字.边学昆仑正义文化】_21_爱的结晶(1)
微信公众平台·1024程序员节·汉字·昆仑正义文化
数据皮皮侠AI16 天前
顶刊同款!中国地级市风灾风险与损失数据集(2000-2022)|灾害 / 环境 / 经济研究必备
大数据·人工智能·笔记·能源·1024程序员节
Fab1an18 天前
Busqueda——Hack The Box 靶机
linux·服务器·学习·1024程序员节
技术专家18 天前
Stable Diffusion系列的详细讨论 / Detailed Discussion of the Stable Diffusion Series
人工智能·python·算法·推荐算法·1024程序员节
学传打活21 天前
古代汉语是源,现代汉语是流,源与流一脉相承。
微信公众平台·1024程序员节·汉字·中华文化