linux shell脚本监控服务运行状态并自动重启

#!/bin/bash 
HTTP_CODE=$(curl -o /dev/null --connect-timeout 3 -s -w "%{http_code}" http://xxxx:18818/nacos/#/login)
    if [ $HTTP_CODE -ne 200 ]; then
        echo "网站异常,正在重启。。。 "
        #杀掉进程
        ps -ef | grep nacos | grep -v grep | awk '{print $2}' | xargs kill -9
        #启动服务
        sh /usr/cwzy/nacos/bin/startup.sh  -m standalone
        echo "重启完毕。。。"
    else
        echo "网站正常"
    fi

GETWAY_HTTP_CODE=$(curl -o /dev/null --connect-timeout 3 -s -w "%{http_code}" http://xxxxx)
    if [ $GETWAY_HTTP_CODE -ne 200 ]; then
      echo "gateway异常,正在重启。。。 "
      ps -ef | grep blade-gateway | grep -v grep | awk '{print $2}' | xargs kill -9
     sh /usr/cwzy/start-linux/1-gateway-10080.sh
      echo "gateway重启完毕。。。"
    else
        echo "gateway正常"
    fi

  echo "............................................ "

MQ_HTTP_CODE=$(curl -o /dev/null --connect-timeout 3 -s -w "%{http_code}" http://xxxx:15672/)
    if [ $MQ_HTTP_CODE -ne 200 ]; then
      echo "rabbitmq异常,正在重启。。。 "
     ps -ef | grep rabbitmq | grep -v grep | awk '{print $2}' | xargs kill -9
       sh /usr/local/rabbitMQ/rabbitmq-start.sh      
      echo "rabbitmq重启完毕。。。"
    else
        echo "rabbitmq正常"
    fi

执行脚本:
rabbitmq-start.sh

#!/bin/bash
export PATH=$PATH:/usr/local/erlang/bin
export HOME=/usr/local/rabbitMQ/rabbitmq/
/usr/local/rabbitMQ/rabbitmq/sbin/./rabbitmq-server -detached

1-gateway-10080.sh

#!/bin/bash
JAVA_HOME=/usr/local/SDK/Java/jdk1.8.0_221 # 如果你要使用,记得替换为你自己实际的 JDK 安装路径
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
title=gateway-10080
cd /usr/cwzy/admin
nohup java -Dfile.encoding=utf-8  -jar -Xms800m -Xmx1024m blade-gateway.jar --server.port=10080 --spring.profiles.active=dev >/dev/null 2>&1 &

猜你喜欢

转载自blog.csdn.net/qq_37741426/article/details/128412837