keepalived踩坑记录

环境

操作系统: CentOS7.9

keepalived: 1.35

master配置

bash 复制代码
cat > /etc/keepalived/keepalived.conf<<'EOF'
global_defs {
    router_id Nginx1
}
vrrp_script chk_nginx {
    script "/etc/keepalived/check_nginx.sh"
    interval 3
    weight -3
}
vrrp_instance VI_1 {
    state MASTER
    interface enp0s8 
    virtual_router_id 101
    priority 120
    advert_int 2
    nopreempt
    authentication {
        auth_type PASS
        auth_pass 12333
    }
    virtual_ipaddress {
        192.168.240.6
    }
    track_script {
      chk_nginx 
    }
}

EOF
bash 复制代码
cat > /etc/keepalived/check_nginx.sh<<'EOF'
B=$(pgrep nginx | wc -l)
if [[ $B -eq 0 ]]; then
    /usr/bin/systemctl stop keepalived
    exit 1
fi
exit 0

EOF

backup配置

bash 复制代码
cat > /etc/keepalived/keepalived.conf<<'EOF'
global_defs {
    router_id Nginx2
}
vrrp_script chk_nginx {
    script "/etc/keepalived/check_nginx.sh"
    interval 3
    weight -3
}
vrrp_instance VI_1 {
    state BACKUP
    interface enp0s8 
    virtual_router_id 101
    priority 119
    advert_int 2
    nopreempt
    authentication {
        auth_type PASS
        auth_pass 12333
    }
    virtual_ipaddress {
        192.168.240.6
    }
    track_script {
      chk_nginx
    }
}

EOF
bash 复制代码
cat > /etc/keepalived/check_nginx.sh<<'EOF'
B=$(pgrep nginx | wc -l)
if [[ $B -eq 0 ]]; then
    /usr/bin/systemctl stop keepalived
    exit 1
fi
exit 0

EOF

说明

坑点

  1. 检测脚本/etc/keepalived/check_nginx.sh第一行一定不要写#!/bin/bash
  2. 检测脚本/etc/keepalived/check_nginx.sh的退出状态码不起作用,所以只能/usr/bin/systemctl stop keepalived

排错参考文档

【Linux】详解shell中source、sh、bash、./执行脚本的区别

相关推荐
爱内卷的学霸一枚2 分钟前
现代DevOps实践:从CI/CD到GitOps的深度技术解析
运维·ci/cd·devops
松涛和鸣4 分钟前
69、Linux字符设备驱动实战
linux·服务器·网络·arm开发·数据库·驱动开发
新缸中之脑6 分钟前
在Docker中运行OpenClaw
运维·docker·容器
TangDuoduo00057 分钟前
【Linux下LED基础设备驱动】
linux·驱动开发
cyber_两只龙宝16 分钟前
haproxy--使用socat工具实现对haproxy权重配置的热更新
linux·运维·负载均衡·haproxy·socat
٩( 'ω' )و26019 分钟前
linux网络--基础概念
linux·网络
zhang61839919 分钟前
Linux中不同服务器之间迁移python 虚拟环境-conda-pack
linux·运维·python
深圳市恒讯科技22 分钟前
2026新加坡服务器硬件防火墙配置推荐
运维·服务器·云计算
小江||小廖23 分钟前
服务器如何设置共享文件夹,让其他内网电脑可以访问
运维·服务器
HIT_Weston24 分钟前
121、【Ubuntu】【Hugo】首页板块配置:list 模板(一)
linux·ubuntu·list