在安装文件中有范例说明
/usr/share/doc/keepalived-1.2.13/samples/
Keepalived:它的诞生最初是为ipvs(一些服务,内核中的一些规则)提供高可用性的,最初最主要目的是能够自主调用ipvsadm来生成规则,并且能够自动实现将用户访问的地址转移到其他节点上进行实现的。
Keepalived:核心包含两个ckeckers和VRRP协议。
ckeckers:检查服务检查reserved的健康状况的,基于脚本也可检查服务本身的健康状况。这里是实现ipvs后端健康状况的检测的。
VRRP:是一种容错协议,它保证当主机的下一跳路由器出现故障时,由另一台路由器来代替出现故障的路由器进行工作,从而保持网络通信的连续性和可靠性。VRRP中每个节点之间都有优先级的一般为0-255(0,255有特殊用法)数字越大优先级越高
实现的功能:VRRP动态IP地址转移,可以通过检测脚本空值权重实现
LVS的前端代理,DR的调度器
1.安装keepalived
yum -y install keepalived
2.配置文件
! Configuration File for keepalived global_defs { notification_email { acassen@firewall.loc //报警通知邮箱 failover@firewall.loc sysadmin@firewall.loc } notification_email_from Alexandre.Cassen@firewall.loc smtp_server 192.168.200.1 //邮件服务器IP地址 smtp_connect_timeout 30 //连接超时时间 router_id LVS_DEVEL //路由器标识,可以随意修改 } vrrp_instance VI_1 { state MASTER //初始化状态,MASTER/BACKUP interface eth0 //监听接口 virtual_router_id 51 //VID两端必须一致,表示是同一个组 priority 100 //优先级,Master的值必须大于Backup的值 advert_int 1 //监测间隔,两端必须一直 authentication { auth_type PASS //采用密码认证 auth_pass 1111 } virtual_ipaddress { 192.168.89.100 //VIP地址,可以加上/24子网掩码 192.168.89.101 } } virtual_server 192.168.89.100 80 { //实现的是LVS中的DR部分,调度器,是IPVS的自动化规则添加 delay_loop 6 lb_algo rr //轮训方式 lb_kind DR //DR模型,DR,NAT nat_mask 255.255.255.0 persistence_timeout 50 protocol TCP //协议 real_server 192.168.89.83 80 { weight 1 //权重 HTTP_GET { //健康状态检查,如果失败,则从ipvs路由中删除 url { path /index.html status_code 200 //如果返回200状态码,说明后端主机存活 } connect_timeout 3 //连接超时时间 nb_get_retry 3 //重试次数 delay_before_retry 3 //重试间隔时间 } } real_server 192.168.89.84 80 { weight 1 HTTP_GET { url { path /index.html status_code 200 } connect_timeout 3 nb_get_retry 3 delay_before_retry 3 } } }