Keepalived高可用
高可用简介
一般是指2台机器启动着完全相同的业务系统,当有一台机器宕机了,另外一台服务器就能快速的接管,对于访问的用户是无感知的。
常用的工具
- 硬件通常使用 :
F5
- 软件通常使用 :
keepalived
问题
比如公司的网络是通过网关进行上网的,那么如果该路由器故障了,网关无法转发报文了,此时所有人都无法上网了,怎么办?
通常做法是给路由器增加一台备节点,但是问题是,如果我们的主网关master
故障了,用户是需要手动指向backup
的,如果用户过多修改起来会非常麻烦。
- 问题一:假设用户将指向都修改为
backup路由器
,那么master路由器
修好了怎么办? - 问题二:假设
Master
网关故障,我们将backup
网关配置为master
网关的ip是否可以?
其实是不行的,因为PC第一次通过ARP广播
寻找到Master网关的MAC
地址与IP
地址后,会将信息写到ARP
的缓存表中,那么PC之后连接都是通过那个缓存表的信息去连接,然后进行数据包的转发,即使我们修改了IP但是Mac
地址是唯一的,pc的数据包依然会发送给master
。(除非是PC的ARP缓存表过期,再次发起ARP广播的时候才能获取新的backup对应的Mac地址与IP地址)
如何才能做到出现故障自动转移,此时VRRP
就出现了,我们的VRRP
其实是通过软件或者硬件的形式在Master
和Backup
外面增加一个虚拟的MAC地址(VMAC
)与虚拟IP地址(VIP
),那么在这种情况下,PC请求VIP的时候,无论是Master处理还是Backup处理,PC仅会在ARP缓存表中记录VMAC与VIP的信息。