写一个 shell 脚本 守候rocketmq 进程不当掉

时间:2022-10-17 18:26:29

1.写一个脚本

a) 用touch命令创建一个文件:touch my_rocketmq

b) 用vim编辑器打开my_rocketmq文件:vi m_rocketmq

c) 用vim编辑器编辑my_rocketmq文件,内容如下:

#!/bin/bash                     告诉shell使用什么程序解释脚本

#My first shell

ls -l .*


2.允许Shell执行它

chmod 755 my_script  赋执行权限


3.执行my_rocketmq脚本

./my_rocketmq  &   //后台执行


4.编写shell 监控rocketmq 是否当机,当机重新MQ

#!/bin/sh
while true;do
        count=`ps -ef|grep alibaba-rocketmq|grep -v grep`
        if [ "$?" != "0" ];then
echo    ">>>>no rocket,run it"
nohup sh /usr/share/alibaba-rocketmq/bin/mqnamesrv &
nohup sh /usr/share/alibaba-rocketmq/bin/mqbroker -n "192.168.2.254:9876" &
else
echo ">>>>rocketmq is runing..."  >>  /usr/share/log/1.log
fi
sleep 5
done