34fw 发表于 2015-1-14 08:50:44

keepalived 安装与配置

目录
keepalived安装与配置... 1
安装:... 1
基本的主备配置... 2
主服务器:... 2
备服务器:... 3
主备重启服务:... 4
查看虚拟IP:... 5
备注:vrrp_script和track_script. 5
备注:notify_6
备注: nopreempt. 6
验证测试:... 6
主服务器停止keepalived :... 6
备份服务器--虚拟IP切换:... 7
软件卸载... 7


版本历史
时间版本说明编写者
2015-1-91.1keepalived安装与配置csc














系统环境: centos-5.8 64bit
keepalived: keepalived-1.1.15.tar.gz
安装:tar -xvzfkeepalived-1.1.15.tar.gz
cd keepalived-1.1.15
./configuremakemake install

mkdir /etc/keepalivedcp /usr/local/etc/rc.d/init.d/keepalived/etc/rc.d/init.d/cp /usr/local/etc/sysconfig/keepalived/etc/sysconfig/cp /usr/local/etc/keepalived/keepalived.conf/etc/keepalived/cp /usr/local/sbin/keepalived/usr/sbin//etc/init.d/keepalivedstart
ps -ef|grep keepalived

基本的主备配置主服务器: more /etc/keepalived/keepalived.conf! ConfigurationFile for keepalived
#global_defs {#   notification_email {##   acassen@firewall.loc#   failover@firewall.loc#   sysadmin@firewall.loc#   }#   notification_email_fromAlexandre.Cassen@firewall.loc#   smtp_server 192.168.200.1#   smtp_connect_timeout 30#   router_id LVS_DEVEL#}



vrrp_instance VI_1 {    state MASTER    interface eth0    virtual_router_id 51#主备保持一致    priority 100   #优先级 主比备高    advert_int 1   #心跳广播时间间隔 秒    authentication {      auth_type PASS      auth_pass 1111    }    virtual_ipaddress {      10.8.10.130#虚拟IP,可以有多个                   #10.8.10.131    }}


备服务器:# more keepalived.conf! ConfigurationFile for keepalived
#global_defs {#   notification_email {#   acassen@firewall.loc#   failover@firewall.loc#   sysadmin@firewall.loc#   }#   notification_email_fromAlexandre.Cassen@firewall.loc#   smtp_server 192.168.200.1#   smtp_connect_timeout 30#   router_id LVS_DEVEL#}

vrrp_instance VI_1 {    state BACkUP    interface eth0    virtual_router_id 51   #主备保持一致    priority 90   #优先级 主比备高    advert_int 1   #心跳广播时间间隔 秒    authentication {      auth_type PASS      auth_pass 1111    }    virtual_ipaddress {      10.8.10.130   #虚拟IP,可以有多个                   #10.8.10.131
    }}
主备重启服务:/etc/init.d/keepalivedrestart
查看虚拟IP:
# ip a1: lo:<LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue    link/loopback 00:00:00:00:00:00 brd00:00:00:00:00:00    inet 127.0.0.1/8 scope host lo2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP>mtu 1500 qdisc pfifo_fast qlen 1000    link/ether 00:16:0a:08:0a:79 brdff:ff:ff:ff:ff:ff    inet 10.8.10.115/24 brd 10.8.10.255 scopeglobal eth0    inet 10.8.10.130/32 scope global eth0



备注:vrrp_script和track_script
vrrp_script代码块是用来定义监控脚本,脚本执行时间间隔以及脚本的执行结果导致优先级变更幅度的。vrrp_scriptchk_redis {
    script "/etc/keepalived/scripts/redis_check.sh"#指定执行脚本的路径
    interval 1                                     #指定脚本的执行时间间隔
    weight 10                                    #脚本结果导致的优先级变更:10表示优先级+10;-10则表示优先级-10
}定义好vrrp_script代码块之后,就可以在instance中使用了track_script{
    chk_redis
}注意:VRRP脚本(vrrp_script)和VRRP实例(vrrp_instance)属于同一个级别
备注:notify_notify_stop       keepalived停止运行前运行notify_stop指定的脚本。配合官方文档提到的以下三个参数一起使用,功能更强大:notify_master   keepalived切换到master时执行的脚本notify_backup   keepalived切换到backup时执行的脚本notify_fault         keepalived出现故障时执行的脚本
备注: nopreempt 当master down了,backup接管了,master再次起来,不能再成为master。否则master恢复了再接管的话,会造成业务来回切换,这时候就需要nopreempt参数了。nopreempt:设置不抢占,这里只能设置在state为backup的节点上,而且这个节点的优先级必须别另外的高。
以上备注 -参数联合使用方法,可以参考<<keepalive+redis主从自动切换V1.1.docx>>

验证测试:主服务器停止keepalived :/etc/init.d/keepalivedrestart
# ip a1: lo:<LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue    link/loopback 00:00:00:00:00:00 brd00:00:00:00:00:00    inet 127.0.0.1/8 scope host lo2: eth0:<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000    link/ether 00:16:0a:08:0a:79 brdff:ff:ff:ff:ff:ff    inet 10.8.10.115/24 brd 10.8.10.255 scopeglobal eth0
备份服务器--虚拟IP切换:# ip a1: lo:<LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue    link/loopback 00:00:00:00:00:00 brd00:00:00:00:00:00    inet 127.0.0.1/8 scope host lo2: eth0:<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000    link/ether 00:fe:c0:a8:0a:7f brdff:ff:ff:ff:ff:ff    inet 10.8.10.128/24 brd 10.8.10.255 scopeglobal eth0    inet 10.8.10.130/32 scope global eth0
当主服务器启动keepalived时候,虚拟IP 重新出现在主服务器


软件卸载 直接make uninstall,然后make clean
页: [1]
查看完整版本: keepalived 安装与配置