IT漫步

技术生活札记©Yaohui

Notify script is not working on Keepalived v1.3.5

在公司内网通过Keepalived的VIP机制及诊断脚本提供一些高可用服务及智能选择服务,但由于内网网络设备及环境复杂,导致在上面组建的Overlay网络内的ARP广播不通畅,在Keepalived主备切换切换后当前有效节点的MAC地址通知不到客户端,从而导致客户端不能连接到正确的服务节点,因此就想使用Keepalived的notify scripts, 在Keepalived状态转变后在所有客户端执行一个脚本更新MAC地址。 脚本也简单,定义客户端列表直接shell上去设置MAC地址(节点间通过ssh key 配置了自动登录): #!/bin/sh declare -a nodes=( "192.168.126.8" "192.168.126.9" "192.168.126.10" "192.168.126.11" "192.168.126.12" "192.168.126.13" "192.168.126.14" "192.168.126.15" ) ip addr show eth0 | grep 192.168.126.99 foundVip=$? for ip in "${nodes[@]}"; do if [ $foundVip -eq 0 ]; then MAC=`ip addr show eth0 | grep ff:ff:ff:ff:ff:ff | awk '{print $2}'` ssh root@$ip arp --set 192.168.126.99 $MAC fi …


CentOS 7配置LVS-集群

LVS有三种工作模式:NAT, TUN, DR.  DR是三种工作模式中性能最高的,TUN次之。 本文记录LVS/TUN和LVS/DR工作模式的配置过程。 环境: 三台CentOS 7 x64 虚拟机: CentOS Linux release 7.4.1708 (Core) IP 地址分别为192.168.1.11/24, 192.168.1.12/24, 192.168.1.13/24 虚拟IP为192.168.1.99, 网络结构为: 1. LVS/TUN – 隧道模式: Director(192.168.1.11)上的配置: 为tunl0设备配置VIP: # ifconfig tunl0 192.168.1.99 broadcast 192.168.1.99 netmask 255.255.255.255 up 安装ipvsadm工具: # yum install ipvsadm   用ipvsadm配置LVS转发器: 清除配置表 添加一个访问地址为192.168.1.99:80的TCP服务,并设置调度算法为轮叫(rr) 为服务添加两个Real Server 192.168.1.12 和 192.168.1.13, -i参数标识工作模式为TUN模式 最后清除iptables,重新生成 # ipvsadm -C …

Proudly powered by WordPress