dedecms导航网站模板,南京口碑最好的装修公司,室内设计效果图怎么做出来的,凡客家具质量怎么样目录 一、keepalived工作原理
1、VRRP
1.1 VRRP相关术语
1.2 VRRP相关技术
1.3 VRRP工作过程
2、keepalived介绍
2.1 Keepalived架构
3、keepalived的工作原理
3.1Keepalived高可用故障切换转移原理
4、脑裂
4.1什么是脑裂#xff1f;
4.2造成脑裂的原因有哪些
4.2造成脑裂的原因有哪些
4.3如何解决keepalived脑裂问题 一、keepalived工作原理
1、VRRP
VRRPVirtual Router Redundancy Protocol虚拟路由冗余协议解决静态网关单点故障风险它能够保证当个别节点宕机时整个网络可以不间断地运行。
物理层路由器、三层交换机软件层keepalived
1.1 VRRP相关术语
虚拟路由器Virtual Router虚拟路由器标识VRID0-255唯一标识虚拟路由器VIPVirtual IP虚拟路由器的IP地址VMACVirutal MAC (00-00-5e-00-01-VRID)物理路由器
master主设备虚拟路由器中承担报文转发任务的路由器backup备用设备master路由器出现故障时能够代替master路由器工作的路由器priority优先级VRRP根据优先级来确定虚拟路由器中每台路由器的地位。
1.2 VRRP相关技术
通告心跳优先级等周期性
工作方式抢占式非抢占式
抢占模式在抢占模式下如果Backup设备的优先级比当前Master设备的优先级高则主动将自己切换成Master。非抢占模式在非抢占模式下只要Master设备没有出现故障Backup设备即使随后被配置了更高的优先级也不会成为Master设备。
安全认证
无认证不进行任何VRRP报文的合法性认证不提供安全性保障简单字符认证预共享密钥在一个有可能受到安全威胁的网络中可以将认证方式设置为简单字符认证MD5认证在一个非常不安全的网络中可以将认证方式设置为MD5认证
工作模式
主/备单虚拟路由器主/主主/备虚拟路由器1备/主虚拟路由器2
1.3 VRRP工作过程
VRRP的工作过程如下
1VRRP备份组中的设备根据优先级选举出Master。Master设备通过发送免费ARP报文将虚拟MAC地址通知给与它连接的设备或者主机从而承担报文转发任务。
2Master设备周期性向备份组内所有Backup设备发送VRRP通告报文以公布其配置信息优先级等和工作状况。
3如果Master设备出现故障VRRP备份组中的Backup设备将根据优先级重新选举新的Master。
(4VRRP备份组状态切换时Master设备由一台设备切换为另外一台设备新的Master设备会立即发送携带虚拟路由器的虚拟MAC地址和虚拟IP地址信息的免费ARP报文刷新与它连接的主机或设备中的MAC表项从而把用户流量引到新的Master设备上来整个过程对用户完全透明。
5原Master设备故障恢复时若该设备为IP地址拥有者优先级为255将直接切换至Master状态。若该设备优先级小于255将首先切换至Backup状态且其优先级恢复为故障前配置的优先级。
6Backup设备的优先级高于Master设备时由Backup设备的工作方式抢占方式和非抢占方式决定是否重新选举Master。
2、keepalived介绍
keepalived基于VRRP协议的软件实现原生设计目的为了高可用 ipvs服务
ipvsIP虚拟服务器IP Virtual Server简写为IPVS。是运行在LVS下的提供负载均衡功能的一种技术。
keepalived的功能
基于vrrp协议完成地址流动为vip地址所在的节点生成ipvs规则(在配置文件中预先定义)为ipvs集群的各RS后端的Real Server做健康状态检测基于脚本调用接口完成脚本中定义的功能进而影响集群事务以此支持nginx、haproxy等服务
2.1 Keepalived架构
用户空间核心组件
vrrp stackVIP消息通告checkers监测real serversystem call实现 vrrp 协议状态转换时调用脚本的功能SMTP邮件组件IPVS wrapper生成IPVS规则Netlink Reflector网络接口WatchDog监控进程
控制组件提供keepalived.conf 的解析器完成Keepalived配置
IO复用器针对网络目的而优化的自己的线程抽象
内存管理组件为某些通用的内存管理功能例如分配重新分配发布等提供访问权限
3、keepalived的工作原理
Keepalived高可用对之间是通过VRRP进行通信的VRRP是通过竞选机制来确定主备节点的主节点的优先级高于备节点因此工作时主节点会优先获得所有的资源备节点处于等待状态当主节点出现故障时备节点就会接管主节点的资源然后顶替主节点对外提供服务。
在Keepalived服务对之间只有作为主节点的服务器会一直发送 VRRP广播包告诉备节点它还活着此时备节点不会抢占主节点资源当主节点不可用时即备节点监听不到主节点发送的广播包时备节点就会启动相关服务接管主节点的资源保证业务的连续性。接管速度最快可以小于1秒。
3.1Keepalived高可用故障切换转移原理
Keepalived高可用服务之间的故障切换转移还是通过VRRPVritual Route Redundancy Protocol虚拟路由冗余协议来实现的 。
在Keepalived服务正常工作时Master主节点会不断向Backup备节点发送心跳消息多播的方式用来告诉备用节点自己还活着当Master主节点出现故障时就无法发送心跳消息备节点也就因此无法继续检测到来自Master主节点的心跳消息了于是调用自身的接管程序接管Master主节点的IP资源及服务。而当Master主节点恢复时Backup备节点默认又会主动释放主节点故障时自身接管的IP资源及服务恢复到原来的备用角色。
4、脑裂
4.1什么是脑裂
在高可用HA系统中当联系2个节点的“心跳线”断开时本来为一整体、动作协调的HA系统就分裂成为2个独立的个体。
由于相互失去了联系都以为是对方出了故障。两个节点上的HA软件像“裂脑人”一样争抢“共享资源”、争起“应用服务”就会发生严重后果。共享资源被瓜分、两边“服务”都起不来了或者两边“服务”都起来了但同时读写“共享存储”导致数据损坏
4.2造成脑裂的原因有哪些
高可用服务器对之间心跳线链路发生故障导致无法正常通信。因心跳线坏了包括断了老化。因网卡及相关驱动坏了ip配置及冲突问题网卡直连因心跳线间连接的设备故障网卡及交换机因仲裁的机器出问题采用仲裁的方案高可用服务器上开启了 iptables防火墙阻挡了心跳消息传输。高可用服务器上心跳网卡地址等信息配置不正确导致发送心跳失败其他服务配置不当等原因如心跳方式不同心跳广插冲突、软件Bug等。
4.3如何解决keepalived脑裂问题
同时使用串行电缆和以太网电缆连接、同时使用两条心跳线路这样一条线路断了另外一条还是好的依然能传送心跳消息当检查脑裂时强行关闭一个心跳节点这个功能需要特殊设备支持如stonith、fence相当于备节点接收不到心跳消息通过单独的线路发送关机命令关闭主节点的电源做好对脑裂的监控报警
解决常见方案
如果开启防火墙一定要让心跳消息通过一般通过允许IP段的形式解决可以拉一条以太网网线或者串口线作为主被节点心跳线路的冗余开发检测程序通过监控软件检测脑裂