SElinux 导致 Keepalived 检测脚本无法执行
哈喽大家好,我是咸鱼今天我们来看一个关于 Keepalived 检测脚本无法执行的问题
一位粉丝后台私信我,说他部署的 keepalived 集群 vrrp_script 模块中的脚本执行失败了,但是手动执行这个脚本却没有任何问题
这个问题也是咸鱼第一次遇到,为了能让更多的小伙伴以后不会踩这个坑,便有了今天这篇文章
前言
在正式开始之前,我们先来简单复习一下 Keepalived 中的资源检测功能
vrrp_script 模块
在 Keepalived 中,vrrp_script 模块是用于定义和配置虚拟路由冗余协议(VRRP)的自定义脚本检查,这个模块专门用于对集群中的服务资源进行监控
与 vrrp_script 模块搭配使用的是 track_script 模块,这个模块中可以引入监控脚本、命令组合、Shell 语句来实现对服务资源的监控
track_script 通过调用 vrrp_script,可以灵活地定义需要监测的服务或资源,例如网络连接、服务状态、系统资源等
当监测到故障时,Keepalived 可以触发状态转移,将主节点切换到备用节点,以确保服务的高可用性
[*]通过 killall -l 命令监测
killall 命令会发送一个信号给进程,以信号 0 为例,如果发现进程关闭或者异常,将返回状态码 1,反之进程运行正常,状态码返回0
vrrp_script nginx_check {
script "killall -0 nginx"
interval 2
}
track_script {
nginx_check
}
[*]通过端口监测
检测端口的运行状态也是较常见的监控方式
vrrp_script nginx_check { script "
页:
[1]