vim datastadard_alive.sh
#!/bin/bash
PORT=18086 # 替换为你想要检查的端口号
dt=$(date +%Y-%m-%d)
# 使用netstat检查端口是否存在
if netstat -tuln | grep -q ":$PORT"; then
echo "$dt Port $PORT is in use" > /opt/datastadard/logs/alive.log
# 如果存在,执行相关操作
# 例如:启动另一个程序或者记录日志等
else
echo "$dt Port $PORT is not in use" > /opt/datastadard/logs/alive.log
sh /opt/datastadard/bin/startup.sh
# 如果不存在,执行相关操作
# 例如:启动服务监听该端口等
fi
nginx存活脚本:
cat nginx_alive.sh
#!/bin/sh
tomcat=`netstat -an | grep ":18080" | awk '$1 == "tcp" && $NF == "LISTEN" {print $0}' | wc -l`
if [ $tomcat -eq 0 ];then
#如果端口没有占用的话要怎么怎么样
sh /opt/nginx/sbin/nginx
fi
cat /opt/ddm/ddm_alive.sh
#!/bin/bash
PORT=8081 # 替换为你想要检查的端口号
dt=$(date +%Y-%m-%d)
# 使用netstat检查端口是否存在
if netstat -tuln | grep -q ":$PORT"; then
echo "$dt Port $PORT is in use" > /opt/ddm/logs/alive.log
# 如果存在,执行相关操作
# 例如:启动另一个程序或者记录日志等
else
echo "$dt Port $PORT is not in use" > /opt/ddm/logs/alive.log
sh /opt/ddm/bin/startup.sh
# 如果不存在,执行相关操作
# 例如:启动服务监听该端口等
fi
redis
cat redis_alive.sh
#!/bin/bash
PORT=6379 # 替换为你想要检查的端口号
dt=$(date +%Y-%m-%d)
# 使用netstat检查端口是否存在
if netstat -tuln | grep -q ":$PORT"; then
echo "$dt Port $PORT is in use" > /opt/redis/logs/alive.log
# 如果存在,执行相关操作
# 例如:启动另一个程序或者记录日志等
else
echo "$dt Port $PORT is not in use" > /opt/redis/logs/alive.log
bash -c "sudo /opt/redis/bin/redis-server /opt/redis/bin/redis.conf"
# 如果不存在,执行相关操作
# 例如:启动服务监听该端口等
fi
zookeeper
cat zookeeper_alive.sh
#!/bin/bash
PORT=8080 # 替换为你想要检查的端口号
dt=$(date +%Y-%m-%d)
# 使用netstat检查端口是否存在
if netstat -tuln | grep -q ":$PORT"; then
echo "$dt Port $PORT is in use" > /opt/zookeeper/logs/alive.log
# 如果存在,执行相关操作
# 例如:启动另一个程序或者记录日志等
else
echo "$dt Port $PORT is not in use" > /opt/zookeeper/logs/alive.log
sh /opt/zookeeper/bin/zkServer.sh start
# 如果不存在,执行相关操作
# 例如:启动服务监听该端口等
fi
kafka
cat kafka_alive.sh
#!/bin/bash
PORT=9999 # 替换为你想要检查的端口号
dt=$(date +%Y-%m-%d)
# 使用netstat检查端口是否存在
if netstat -tuln | grep -q ":$PORT"; then
echo "$dt Port $PORT is in use" > /opt/kafka/logs/alive.log
# 如果存在,执行相关操作
# 例如:启动另一个程序或者记录日志等
else
echo "$dt Port $PORT is not in use" > /opt/kafka/logs/alive.log
sh /opt/kafka/del_meta.sh
sh /opt/kafka/bin/kafka-server-start.sh -daemon /opt/kafka/config/server.properties
# 如果不存在,执行相关操作
# 例如:启动服务监听该端口等
fi
添加到定时任务中
crontab -l
#*/10 * * * * root /usr/sbin/ntpdate 10.1.1.37
0,15,30,45 * * * * sh /opt/nginx/nginx_alive.sh >> /opt/nginx/logs/alive.log