一、HA是Highly Available缩写,是双机集群系统简称,提高可用性集群,是保证业务连续性的有效解决方案,一般有两个或两个以上的节点,且分为活动节点及备用节点。
1、指标及用途
高可用指标=MTBF/(MTBF+MTTR)
MTBF:Mean Time Between Failture [两次故障平均间隔时间]
MTTR:Mean Time To Restoration [平均恢复时间]
从上诉公式可以得出,要提高系统的高可用性,就需要提高系统的无故障时间(MTBF)和缩短系统修复的时间(MTTR)。
缩短MTTR的办法:引入冗余机制,当系统某一部分出现故障,备份可以快速替换。因此MTTR主要取决于检测出故障的时间和完成故障切换的时间。
keepalived的作用:
①生成ipvs规则;
②实现IP漂移。
keepalived是VRRP协议在Linux系统上的实现软件,是为了实现IP漂移。
2、原理
Keepalived软件主要是通过VRRP协议实现高可用功能的。VRRP是Virtual Router RedundancyProtocol(虚拟路由器冗余协议)的缩写,VRRP出现的目的就是为了解决静态路由单点故障问题的,它能够保证当个别节点(如某个Nginx)宕机时,整个网络可以不间断地运行。
3、VRRP术语
虚拟路由器:由一个Master路由器和多个Backup路由器组成。通俗讲就是一个路由器集群。
VRID:虚拟路由器标识,如果多个路由器有相同的VRID,那么这些路由器就组成了一个虚拟路由器。
Master路由器:虚拟路由器中真正承担报文转发的节点。
Backup路由器:虚拟路由器中某一时刻除Master路由器的其他都有节点。
虚拟IP(VIP):虚拟路由器的IP,VIP是用于客户接入的IP地址。
虚拟MAC地址:虚拟路由器拥有的MAC地址,其格式为00-00-5E-00-01-VRID。
优先级:VRRP根据每个节点的优先级确定节点在虚拟路由器中的地位。如果优先级相同,则根据节点的IP地址大小进行比较。
抢占方式和非抢占方式:抢占方式中只要优先级最高才会成为Master路由器,而非抢占方式中只要Master路由器没有出现故障,则Baskup路由器的优先级再高也不会成为Master路由器。
解决方案:https://blog.51cto.com/13570193/2161637;
Keepalived + Nginx 实现高可用 Web 负载均衡:https://blog.csdn.net/l1028386804/article/details/72801492