keepalived原理
keepalived是一个保证集群高可用的中间件。采用VRRP协议,即虚拟路由冗余协议,通过竞选机制确定,在原master节点发生故障时,选出一个备用节点作为master继续提供服务。从而在个别节点宕机时,保证服务不中断。
keepalived组成部分有以下几个:
core模块:keepalived主进程的启动、维护及配置文件的加载启动
vrrp模块:实现vrrp协议
check模块:检查集群状态
keepalived的工作流程是:
master节点正常:向backup节点发送VRRP包,告诉backup节点自己是存活的,master节点建立连接,接收服务请求
发生故障时:master节点宕掉,根据竞选机制,选出配置一个优先级高的backup节点作为master节点
切换后:新的master节点开始建立连接,接收服务请求