You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

92 lines
3.7 KiB

#!/bin/bash
#set -x
set -e
echoPrefix="\033[36m+"
echoSuffix="\033[0m"
WORK_DIR=/home/server/rocketmq
LOGS_DIR=/root/logs/rocketmqlogs
export JAVA_HOME=/home/server/jdk1.8.0_202
export ROCKETMQ_HOME=/home/server/rocketmq/rocketmq-all-5.3.3-bin-release
echo "ROCKETMQ_HOME: $ROCKETMQ_HOME"
echo ""
start() {
# NameServer
pid=`ps -ef | grep "$JAVA_HOME.* org.apache.rocketmq.namesrv.NamesrvStartup" | grep -v 'grep' | awk '{print $2}'`
if [ -z $pid ];then
echo -e "$echoPrefix nohup sh $ROCKETMQ_HOME/bin/mqnamesrv -c $WORK_DIR/namesrv.conf >> /dev/null 2>&1 & $echoSuffix"
nohup sh $ROCKETMQ_HOME/bin/mqnamesrv -c $WORK_DIR/namesrv.conf >> /dev/null 2>&1 &
sleep 8
else
echo "pid=$pid | NameServer 正在运行..."
fi
echo "NameServer 查看日志: tail -F $LOGS_DIR/namesrv.log -n 100"
echo ""
# Broker+Proxy
pid=`ps -ef | grep "$JAVA_HOME.* org.apache.rocketmq.proxy.ProxyStartup" | grep -v 'grep' | awk '{print $2}'`
if [ -z $pid ];then
echo -e "$echoPrefix nohup sh $ROCKETMQ_HOME/bin/mqbroker -n 127.0.0.1:9876 -c $WORK_DIR/broker.conf --enable-proxy >> /dev/null 2>&1 & $echoSuffix"
nohup sh $ROCKETMQ_HOME/bin/mqbroker -n 127.0.0.1:9876 -c $WORK_DIR/broker.conf --enable-proxy >> /dev/null 2>&1 &
sleep 8
else
echo "pid=$pid | Broker+Proxy 正在运行..."
fi
echo "BrokerServer 查看日志: tail -F $LOGS_DIR/broker.log -n 100"
echo "ProxyServer 查看日志: tail -F $LOGS_DIR/proxy.log -n 100"
echo ""
# Dashboard
pid=`ps -ef | grep 'rocketmq-dashboard-2.0.0.jar' | grep -v 'grep' | awk '{print $2}'`
if [ -z $pid ];then
echo -e "$echoPrefix nohup java -server -Xmx1g -Xms1g -jar rocketmq-dashboard-2.0.0.jar --spring.config.location=file:$WORK_DIR/application-dashboard.yml >>/dev/null 2>&1 & $echoSuffix"
nohup java -server -Xmx1g -Xms1g -jar rocketmq-dashboard-2.0.0.jar --spring.config.location=file:$WORK_DIR/application-dashboard.yml >>/dev/null 2>&1 &
sleep 8
else
echo "pid=$pid | Dashboard 正在运行..."
fi
echo "Dashboard 查看日志: tail -F $LOGS_DIR/../dashboardlogs/rocketmq-dashboard.log -n 100"
}
stop() {
# Dashboard
pid=`ps -ef | grep 'rocketmq-dashboard-2.0.0.jar' | grep -v 'grep' | awk '{print $2}'`
if [ -z $pid ];then
echo "Dashboard 未运行"
else
echo -e "$echoPrefix ps -ef | grep 'rocketmq-dashboard-2.0.0.jar' | grep -v 'grep' | awk '{print $2}' | xargs kill $echoSuffix"
ps -ef | grep 'rocketmq-dashboard-2.0.0.jar' | grep -v 'grep' | awk '{print $2}' | xargs kill
echo "Dashboard 已停止!"
sleep 8
fi
# Broker+Proxy
pid=`ps -ef | grep "$JAVA_HOME.* org.apache.rocketmq.proxy.ProxyStartup" | grep -v 'grep' | awk '{print $2}'`
if [ -z $pid ];then
echo "Broker+Proxy 未运行"
else
echo -e "$echoPrefix ps -ef | grep '$JAVA_HOME.* org.apache.rocketmq.proxy.ProxyStartup' | grep -v 'grep' | awk '{print $2}' | xargs kill $echoSuffix"
ps -ef | grep "$JAVA_HOME.* org.apache.rocketmq.proxy.ProxyStartup" | grep -v 'grep' | awk '{print $2}' | xargs kill
echo "Broker+Proxy 已停止!"
sleep 8
fi
echo ""
# NameServer
pid=`ps -ef | grep "$JAVA_HOME.* org.apache.rocketmq.namesrv.NamesrvStartup" | grep -v 'grep' | awk '{print $2}'`
if [ -z $pid ];then
echo "NameServer 未运行"
else
echo -e "$echoPrefix ps -ef | grep '$JAVA_HOME.* org.apache.rocketmq.namesrv.NamesrvStartup' | grep -v 'grep' | awk '{print $2}' | xargs kill $echoSuffix"
ps -ef | grep "$JAVA_HOME.* org.apache.rocketmq.namesrv.NamesrvStartup" | grep -v 'grep' | awk '{print $2}' | xargs kill
echo "NameServer 已停止!"
sleep 8
fi
}
cmd=$1
if [ "$cmd" == "start" ];then
start
elif [ "$cmd" == "stop" ] || [ "$cmd" == "kill" ];then
stop
else
echo "输入操作参数: start stop"
fi