首页 > 技术文章 > keepalived介绍

yjiu1990 2019-03-11 09:31 原文

keepalived介绍

keepalived概念说明

keepalived软件起初是专门为LVS负载均衡软件设计的,用来管理和监控LVS集群系统各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能
keepalived软件主要通过VRRP协议实现高可用功能,VRRP是Virtual Router Redundancy Protocol(虚拟路由冗余协议)的英文缩写,VRRP出现的目的就是为了解决静态路由单点故障问题的,它能保证当个别节点宕机时,整个网络可以不间断的运行

keepalived的工作原理

1.keepalived利用VRRP协议进行主备通讯
2.利用vrrp协议进行主备竟选,通过优先级来竟选
3.主向备发送组播包(默认组播包地址是224.0.0.18),当备服务器收到主服务器发送的组播包时会一直当备用角色,一旦备收不到主发送的组播包时,备服务器会进行抢占,将主服务器的资源抢占过来
4.当主服务器重新上线时,主服务器会重新抢占备服务器资源

PS:VRRP不传输密文信息

keepalived软件的功能

1.管理LVS负载均衡软件
2.实现对LVS集群节点健康检查功能
3.作为系统网络服务的高可用功能

keepalived配置文件说明

[root@lb01 keepalived]# man keepalived.conf -配置文件说明信息
配置文件结构:
GLOBAL CONFIGURATION  --- 全局配置
VRRPD CONFIGURATION   --- vrrp配置
LVS CONFIGURATION     --- LVS服务相关配置

[root@lb01 keepalived]# cat keepalived.conf 
! Configuration File for keepalived      ---注释内容,说明此文件为keepalived配置文件

global_defs { ------全局配置
   notification_email { -------定义服务故障报警email地址信息,当服务发生切换或RS节点发生故障时,发送报警邮件
     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc  --定义报警邮件地址
   smtp_server 192.168.200.1  --- 定义发送报警邮箱服务器信息
   smtp_connect_timeout 30    --- 定义发送报警邮件连接服务器超时时间
   router_id LVS_DEVEL        --- 定义路由标识信息,相同局域网唯一
}

vrrp_instance VI_1 {  ---- 定义keepalived实例信息,主备节点实例标识相同
    state MASTER  ---- 定义实例中的主备状态角色(MASTER/BACKUP)
    interface eth0  --- 设置主备服务器虚IP地址放置网卡位置
    virtual_router_id 51 --- 虚拟路由ID标识,不同实例不同ID,主备相同
    priority 100       --- 设置抢占优先级,优先级高为主,优先级低为备
    advert_int 1       --- 主备间通讯间隔
    authentication {   --- 主备间通过认证建立连接
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress { --- 定义主备服务器之间的虚IP地址信息
        192.168.200.16
        192.168.200.17
        192.168.200.18
    }
}

推荐阅读