Keepalived :
keepalived 作用:防止单点故障 原理:keepalived是以VRRP协议为实现基础的,VRRP全称Virtual Router Redundancy Protocol,即虚拟路由冗余协议。 虚拟路由冗余协议,可以认为是实现路由器高可用的协议,即将N台提供相同功能的路由器组成一个路由器组,这个组里面有 一个master和多个backup,master上面有一个对外提供服务的vip(该路由器所在局域网内其他机器的默认路由为该vip), master会发组播,当backup收不到vrrp包时就认为master宕掉了,这时就需要根据VRRP的优先级来选举一个backup当master。 这样的话就可以保证路由器的高可用了。keepalived主要有三个模块,分别是core、check和vrrp。core模块为keepalived的核心, 负责主进程的启动、维护以及全局配置文件的加载和解析。check负责健康检查,包括常见的各种检查方式。vrrp模块是来实现VRRP协议的。 配置文件:(常用参数) global_defs { router_id NodeA #运行keepalived机器的一个标识 } vrrp_script chk_networking { script "/etc/keepalived/vrrp.sh RUN_CHECK" #检测脚本 interval 1 #时间间隔 weight -52 #权重 fall 2 #错误次数 rise 1 #成功次数 } vrrp_script chk_linking { script "/etc/keepalived/vrrp.sh LINK_CHECK" interval 5 weight -79 fall 2 rise 1 } vrrp_script chk_vrrp_status { script "/etc/keepalived/vrrp.sh VRRP_CHECK" interval 5 } vrrp_script chk_ignore_eth { script "/etc/keepalived/vrrp.sh IGNORE_CHECK" interval 3 weight 27 fall 2 rise 1 } vrrp_script chk_offline_eth { script "/etc/keepalived/vrrp.sh OFFLINE_CHECK" interval 2 weight -27 fall 2 rise 1 } vrrp_instance inner_work { state MASTER #指定那个为master,那个为backup,如果设置了nopreempt这个值不起作用,主备靠priority决定 interface eth4 #设置实例绑定的网卡 //lvs_sync_daemon_interface eth4 #绑定lvs syncd的网卡() virtual_router_id 51 #VPID标记 priority 100 #优先级,高优先级竞选为master advert_int 1 #检查间隔,默认1秒 mcast_src_ip #发送多播包的地址,如果不设置默认使用绑定网卡的primary ip authentication { #设置认证 auth_type PASS #认证方式 auth_pass test #认证密码 } virtual_ipaddress { #设置vip 192.168.1.1 } track_interface { #设置额外的监控,里面那个网卡出现问题都会切换 eth4 } track_script { #设置检测脚本 chk_networking chk_linking chk_vrrp_status chk_ignore_eth chk_offline_eth } notify_backup "/etc/keepalived/vrrp.sh BACKUP" #指定在转换到备状态期间执行的shell脚本 notify_master "/etc/keepalived/vrrp.sh MASTER" #指定在转换到主状态期间执行的shell脚本 notify_fault "/etc/keepalived/vrrp.sh FAULT" #指定在转换到故障状态期间执行的shell脚本 # notify_stop "/etc/keepalived/vrrp.sh FAULT" } 上面是只是keepalived简单的设置,其还有支持很多功能 参考链接:http://www.keepalived.org/doc/configuration_synopsis.html http://outofmemory.cn/wiki/keepalived-configuration