keepalived

    HA的解决方案的两大流派分为heartbeat、corosync和keepalived

    keepalived在诞生时被赋予的使命仅仅是为lvs的director的HA、生成ipvs规则和监控后端主机的健康状况


keepalived是可以模拟并以进程的方式实现vrrp协议,并以此协议进行工作的HA解决方案


vrrp:虚拟冗余路由协议

    vrrp的工作方式:将两个或两个以上的物理路由设备定义成一个虚拟的路由器,这种方式称作为一个路由组,这组路由设备共同构建成为一个虚拟的路由,在此路由上配置一个VIP和与此VIP相对应的VMAC,在此路由组中,每个路由器都有自己的优先级,当路由器开启时都会自我初始化,然后发送广播通告路由组中的所有路由器自己的优先级,以此推选出主节点MASTER和备用节点BACKUP级别的路由器,只有当主节点故障或优先级降低时才会通告其他节点,然后其他节点再次通过比较优先级推选出另外一个主节点,另外一个主节点会去夺取之前主节点的IP地址等信息


在keepalived中有三种节点类型:

    MASTER:主节点类型

    BACKUP:备用节点类型

    Initialized:表初始化



下面是keepalived的常用案例:

案例环境:

主节点:172.16.25.1

从节点:172.16.25.2

先在两台节点上安装keepalived程序包

这里使用yum的方式安装

#yum install keepalived

两台主机都安装完以后,开始我们的案例

1、先做简单的主从节点

主节点配置:

编辑keepalived的配置文件,在编辑之前先将此文件备份,以免以后使用
[root@localhost keepalived]# vim keepalived.conf
在此文件中暂时没用的信息都删除,然后开始定义所需的配置,这里我们开始直接进行定义
vrrp_instance VI_1 {  
    state MASTER   //表示设置此主机的节点信息为主节点
    interface eth0  //表示使用eth0网卡
    virtual_router_id 51  //默认的id号
    priority 100   //优先级为100
    advert_int 1  //表示发送自己在线信息,两节点的时间必须一样
    authentication {  //表示设置认证方式
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {  //表示设置一个虚拟的IP地址
        172.16.25.30
    }
}


从节点配置: