keepalived介绍与使用

Posted ღ᭄小艾ヅ࿐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了keepalived介绍与使用相关的知识,希望对你有一定的参考价值。

一.keepalived介绍:

keepalived软件起初是专为lvs负载均衡软件设计的,用于管理并监控lvs集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能.因此,keepalived除了能够管理lvs软件外,还可以作为其他服务(例如:nginx,mysql,Haproxy等等)的高可用解决方案软件

二.keepalived组成和原理:

keepalived软件主要是通过VRRP协议实现高可用功能的

VRRP(虚拟路由冗余协议),它的出现就是为了解决静态路由单点故障问题的,它能够保证当个别节点宕机时,整个网络可以不间断的运行

虚拟路由冗余协议可以认为是实现路由器高可用的协议,即使将N台提供相同功能的路由器组成一个路由器组,这个组里面有一个master和多个backup,master上面有一个对外提供服务的vip(该路由器所在局域网内其他机器的默认路由为该vip),master会发组播,当backup收不到vrrp包时就会认为master宕掉了,这时就需要根据vrrp的优先级来选举一个backup当master.这样的话就保证了路由器的高可用.(基于osi体系结构的前三层,物理层,数据链路层,网络层)

keepalived的功能体系结构,大致分为两层:用户空间和内核空间

  • 内核空间:主要包括ipvs(ip虚拟服务器,用于实现网络服务的负载均衡)和netlink(提供高级路由机器相关相关的网络功能)
  • 用户空间:
    • WatchDog:负责监控
    • VRRP Stack:负载均衡服务器之间的失败切换failover,如果只有一个负载均衡服务器,则vrrp不是必须的
    • checkers:负责真实服务器的健康检查,是keepalived的最主要的功能
    • ipvs warapper:用户发送设定的规则到内核ipvs代码
    • netlink reflector:用来设定vrrp的vip地址等等

keepalived主要有三个模块:分别是core、check和vrrp

  • core模块为keepalived的核心,负责主进程的启动、维护以及全局配置文件的加载和解析。
  • check负责健康检查,包括常见的各种检查方式。
  • vrrp模块是来实现VRRP协议的

三.安装配置启动keepalived:

  • 主备服务器都需要安装
    yum install keepalived

keepalived需要使用的目录和文件:

/etc/keepalived/keepalived.conf生效的配置文件
/etc/init.d/keepalived服务器管理脚本
/var.log/messages日志信息

只做高可用只配置VRRP部分(此处忘记修改了,主服务器的优先级要高于备服务器)

  • 主服务器:

  • 备服务器

1.检测服务不可用实现vip的切换:

创建一个脚本,用于监控nginx服务器的健康状况
touch nginx_check.sh

然后把它加进定时任务中去,让它定期去检测(此处是每分钟检测一次)

然后就可以实现简易的主备切换了
不过配置定时任务检测nginx服务器的健康状况这样时间太长了,一分钟容易影响业务,可以在keepalived配置文件中进行配置,让它几秒钟就检测一次!

四.keepalived配置补充:

  • 脑裂:vip出现在多台机器上.网络不畅通,禁用了数据包,主备服务器没办法通信,造成备服务器认为主服务器不可用,绑定vip,主服务器的vip不会释放
    • 解决方案:
      1.双备或多备模式,通过priority权重来区分谁的优先级高
      2.单播(定向广播)的方式(一些特定情况禁用组播)
      3.时间不同步,服务器时间校对

1.非抢占模式:

  • 方法一:在主备服务器中添加nopreempt
  • 方法二:设置state工作模式为backup
    两个keepalived节点都启动后,默认都是backup状态,双方在发送组播信号后,会根据优先级来选举一个master出来,由于都配置了nopreempt,所以master从故障中恢复后,不会抢占vip,可以避免vip切换可能造成的服务延迟

2.抢占模式:

默认为抢占模式

3.单播模式:

主备服务器都设配置

以上是关于keepalived介绍与使用的主要内容,如果未能解决你的问题,请参考以下文章

keepalived介绍与使用

keepalived介绍与使用

高可用群集HA介绍与LVS+keepalived高可用群集

初识keepalived——keepalived介绍与安装

高并发与负载均衡-keepalived-概念介绍

keepalived介绍与简单入门