小谈keepalived vip漂移原理与VRRP协议

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小谈keepalived vip漂移原理与VRRP协议相关的知识,希望对你有一定的参考价值。

参考技术A https://www.cnblogs.com/lixuwu/p/8476997.html

什么是keepalived呢?keepalived是实现高可用的一种轻量级的技术手段,主要用来防止单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发生。之所以说keepalived是轻量级的,是相对于corosync + ldirectord来说的。keepalived也可以实现高可用集群,而且配置起来比corosync + ldirectord简单方便很多,keepalived与corosync的工作机制相差很多。corosync + ldirectord实现的功能虽然强大,但配置起来比较麻烦,而keepalived功能虽然简单,但配置起来比较容易。也就是说keepalived可实现corosync + ldirectord实现的功能,只不过前者没有后者功能强大而已。

【keepalived】keepalived vrrp 双实例

参考技术A 项目内部工程7层调用,走nginx,将域名使用dnsPod 轮询解析在 两个vip上了。

dnsPod 能实现将域名轮询解析在多个ip上,实现负载, 但是无法对被轮询的ip所在的主机上的监听的端口(此处为80)做健康检查,所以需要keepalived绑定vip结合检测脚本,实现高可用。

nginx01 + nginx02 + keepalived ----> vip01
nginx03 + nginx04 + keepalived ----> vip02

将域名 www.example.com 解析在 vip01 vip02 上,既实现了负载均衡,又实现了高可用。

这种主备模式,每组一台备机,有点浪费资源,怎么才能充分利用起来呢?

我们可以将 keepalived改造为vrrp双实例,每组绑定2个vip,这样正常情况下每台主机能分到一个vip,就算有某台主机故障了,该组另一台最多多承接1/4 的流量,结合监控功告警,可以快速恢复。

nginx01 + nginx02 + keepalived ---> vip01 vip03
nginx03 + nginx04 + keepalived ---> vip02 vip04

以 nginx01 + nginx02 + keepalived -------> vip01 vip03 为例

BACKUP <-----> MASTER(vip01)
MASTER(vip03)<-----> BACKUP

keepalived双主多实例
https://blog.csdn.net/zfx1997/article/details/78765540

如何运用VRRP协议实现双主双备网络?
https://blog.csdn.net/m0_47452405/article/details/107039453

LVS+keepalived实现双实例
https://blog.csdn.net/cx55887/article/details/82830816

keepalived双实例配置
https://blog.51cto.com/jiayimeng/1896830

安装keepalived高可用(双实例)
https://www.cnblogs.com/mashuang/p/10074675.html

keepalived配置多实例高可用
https://cloud.tencent.com/developer/article/1843033

以上是关于小谈keepalived vip漂移原理与VRRP协议的主要内容,如果未能解决你的问题,请参考以下文章

负载均衡实现故障vip自动漂移

Keepalived双机热备原理与基础配置

Nginx + Keepalived

解决keepalived服务无法生成VIP故障

keepalived漂移VIP故障

keepalived的抢占与非抢占模式