首页 > 代码库 > keepalived
keepalived
一、KeepAlive基本介绍
keepalived是一款失效转发机制的软件, 它的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web服务器从系统中剔除,当web服务器工作正常后Keepalived自动将web服务器加入到服务器群中。
keepalived内置了对ipvs函数的调用支持。可以直接在keepalived中按照语法配置ipvs然后keepalived就可以实现对ipvs的配置。
keepalived是以VRRP(Virtual Router Redundancy Protocol)协议为实现基础的即虚拟路由冗余协议。虚拟路由冗余协议可以认为是实现路由器高可用的协议即将N台提供相同功能的路由器组成一个路由器组这个组里面有一个master和多个backupmaster上面有一个对外提供服务的vip该路由器所在局域网内其他机器的默认路由为该vipmaster会发组播当backup收不到vrrp包时就认为master宕掉了这时就需要根据VRRP的优先级来选举一个backup当master。这样的话就可以保证路由器的高可用了。
keepalived的工作原理是基于ARRP协议实现的,基于虚拟路由就是把多个路由设备对外看成一个,使用一个虚拟路由IP,该IP在路由间飘动,其中一个路由故障,该IP就会被其他路由获取,对外表现正常不影响服务。
KeepAlived 的作用:
防止单点,故障转移一步到位,丝毫不影响外界与服务器之间的交互,对我们搭建高可用性的集群服务器有一定的帮助。
二、KeepAlived的基本配置案例:
安装:使用rpm包安装,yum install keepalived
配置2个服务节点:如下
使用2个节点node
A节点:192.168.10.1
节点A(MASTER)
配置文件 /etc/keepalived/keepalived.conf
vrrp_instance VI_1 { //实例名称
state MASTER //主节点
interface eth1 //指定网卡设备
virtual_router_id 100 //拟路由ID priority 100 //优先级,主节点要数字要大于从节点
advert_int 1
authentication {
auth_type PASS
auth_pass 412825
}
virtual_ipaddress { //虚拟IP地址
192.168.100.1
}
}
节点上的web页面:nodeA
B节点:192.168.10.2
节点B(BACKUP)
节点上的web页面内容 :nodeB
vrrp_instance VI_1 { //实例名称
state BACKUP //从节点
interface eth1 //指定网卡设备
virtual_router_id 100 //拟路由ID priority 100 //优先级,从节点要数字要小于主节点
advert_int 1
authentication {
auth_type PASS
auth_pass 412825
}
virtual_ipaddress { //虚拟IP地址
192.168.100.1 }
}
启动keepalived
# service keepalived start (2个节点都要启动)
启动后,使用 # IP addr show 命令,查看VIP被发送到哪个节点上,
操作:
启动2个节点A和B,会在 /var/logs 下查看启动信息
他会首先被转移到默认MASTER的主节点上,
然后把主节点A节点停掉,会发现,VIP转移到B节点上了,且身份为MASTER,
如果把2个节点都停掉,然后再启用B节点,也就是BACKUP节点,但是会发现,BACKUP节点会显示为MASTER。
本文出自 “linux小盆友” 博客,请务必保留此出处http://ny0716.blog.51cto.com/9154254/1557144
keepalived