keepalived vrrp 模式

keepalived vrrp 模式

feat

  1. 维护 vip 的高可用,可以根据特定的条件来在多个主机之间切换 vip
  2. 节点之间运行 vrrp 协议
  3. vrrp 中的事件,可以在配置文件中指定脚本来执行相应的操作
    1. 比如 当前节点成为 master;当前节点降为master;当前节点状态为 FAULT 等
  4. keepalived 中 vrrp 可选让节点之间的 vrrp 报文通过单播传输,通过以下参数控制
    1. global.vrrp_strict
    2. vrrp_instance.strict_mode

单播模式

  1. 相关参数
    1. global_defs.vrrp_strict 要求使用严格的 vrrp 协议,使用单播模式时,不能设置该参数
    2. vrrp_instance.strict_mode 启用或者关闭 vrrp_strict;如果vrrp_strict未设置,则默认 strict_mode 为 off
    3. vrrp_instance.unicast_src_ip 指定 vrrp 报文的源地址
    4. vrrp_instance.unicast_peer 指定 vrrp 实例其他节点的目的地址,本节点将发送 vrrp 报文给这些节点
    5. vrrp_instance.unicast_ttl 本节点发送的 vrrp 报文的 TTL
  2. 单播模式下,vrrp_instance.virtual_router_id 可以配置任意1-255的值,因为其他 vrrp 实例之外的节点不会收到节点发出去的 vrrp 报文

多播模式

  1. 相关参数
    1. global_defs.vrrp_mcast_group4 设置 vrrp 实例之间通信的多播组
    2. global_defs.vrrp_mcast_group6 同上,ipv6版本的多播组
      1. 必须使用global_defs.vrrp_version=3
    3. vrrp_instance.interface 设置 vip 的默认网卡,如果不指定,则需要在 vrrp_instance.vitrual_ipaddress 中明确配置 vip 绑定的网卡
    4. vrr
  2. 多播模式下,vrrp_instance.virtual_router_id (取值1-255)必须在同一个二层网络中唯一,因为 vrrp 消息会发到同一个多播组,不同的 vrrp 实例是通过 virtual_router_id (即 vrrp_id)来区分的

参看

  1. https://www.keepalived.org/manpage.html
原文地址:https://www.cnblogs.com/zhedan/p/14247069.html