Keepalived是一款优秀的、可实现高可用的开源软件,它运行在LVS之上,为LVS应运而生。在生产环境中也可以将其应用于Haproxy/Nginx中,提供简单稳定的高可用解决方案。现将其配置文件作如下说明(以Haproxy为前端调度器):

! Configuration File for keepalived


global_defs {

        notification_email {

admin@sina.com    #定义发生故障时的收件人

}

        notification_email_from root@sina.com    #定义发生故障时的发件人

        smtp_server 127.0.0.1    #定义邮件服务器IP

        smtp_connect_timeout 30

        router_id Haproxy_master    #设备标识,一般为主机名

}


vrrp_script chk_haproxy {    #定义对Haproxy服务进行检查,是否存活

        script "killall -0 haproxy"

        interval 2    #检查间隔(默认为秒)

        weight 2    #权重为2,即上线时为102,下线时为98(根据后面的优先级计算)

}


vrrp_instance VI_1 {    #定义VRRP实例

    state MASTER    #MASTER为主设备,从设备为BACKUP

    interface eth0    #可以绑定VRRP的网络接口,即承载VIP的网卡

    virtual_router_id 51    #定义虚拟路由的ID,同一组VRRP实例必须一致

    priority 100    #定义设备的优先级,高的作为主设备,从设备可设为99(高于主设备下线时的优先级)

    advert_int 1    #检查间隔(心跳频率),默认1秒

    authentication {    #主从设备的验证设置,同一组VRRP实例必须一致

        auth_type PASS    #验证方式

        auth_pass 1111    #验证密码

    }

    track_script {    #对VRRP实例中服务器Haproxy服务进行检查

        chk_haproxy

}

    virtual_ipaddress {    #定义虚拟IP

        192.168.154.200

    }

}