29.2.4. keepalived 多播
OpenShift Container Platform 的 IP 故障转移内部使用 keepalived。
确保在上方标记的节点上启用了 多播,它可以接受 224.0.0.18(VRRP VRRP 多播 IP 地址)的网络流量。
在启动 keepalived 守护进程前,启动脚本会验证允许多播流量流的 iptables
规则。如果没有这样的规则,启动脚本会创建一个新的规则,并将其添加到 IP 表配置中。其中此新规则添加到 IP 表配置取决于 --iptables-chain=
选项。如果指定了 --iptables-chain=
选项,规则会添加到 选项中指定的链中。否则,该规则将添加到 INPUT
链中。
每当节点上运行一个或多个 keepalived 守护进程时,iptables
规则都必须存在。
可以在最后一个 keepalived 守护进程终止后删除 iptables
规则。该规则不会自动删除。
您可以手动管理每个节点上的 iptables
规则。它仅在不存在时创建(只要 ipfailover 没有使用 -iptable-chain="" 选项创建
)。
您必须确保系统重启后手动添加规则会保留。
请注意,因为每个 keepalived 守护进程都使用 VRRP 协议在多播 224.0.0.18 间与对等点进行协商。每个 VIP 都必须有不同的 VRRP-id(范围 0..255))。
$ for node in openshift-node-{5,6,7,8,9}; do ssh $node <<EOF export interface=${interface:-"eth0"} echo "Check multicast enabled ... "; ip addr show $interface | grep -i MULTICAST echo "Check multicast groups ... " ip maddr show $interface | grep 224.0.0 EOF done;