准备两台机器:192.168.1.10,192.168.1.11

分别安装keepalived

$ yum install keepalived

在192.168.1.10上执行

$ vim /etc/keepalived/keepalived.conf

vrrp_script chk_haproxy {
    script "pidof haproxy"
    interval 2
}
vrrp_instance VI_1 {
    interface eth0 #本机网卡名称,使用ifconfig命令查看
    state MASTER #本机实例状态,MASTER/BACKUP,备机配置文件中请写BACKUP
    priority 200 #本机初始权重,备机请填写小于主机的值
    virtual_router_id 10 #虚拟路由编号,主备机保持一致
    unicast_src_ip 192.168.1.10
    unicast_peer {
        192.168.1.11
    }
    authentication {
        auth_type PASS
        auth_pass password
    }
    virtual_ipaddress {
        192.168.1.100 #虚地址IP,主备机保持一致
    }
    track_script {
        chk_haproxy #对应的健康检查配置
    }
    notify_master /loadbtify_master.sh
}

 

在192.168.1.11上执行

$ vim /etc/keepalived/keepalived.conf

vrrp_script chk_haproxy {
    script "pidof haproxy"
    interval 2
}
vrrp_instance VI_1 {
    interface eth0
    state BACKUP
    priority 100
    virtual_router_id 10
    unicast_src_ip 192.168.1.11
    unicast_peer {
        192.168.1.10
    }
    authentication {
        auth_type PASS
        auth_pass password
    }
    virtual_ipaddress {
        192.168.1.100
    }
    track_script {
        chk_haproxy
    }
    notify_master /loadbtify_master.sh
}

两台机器分别启动

$ service keepalived start


检测服务情况:

$ telnet 192.168.1.100 80