在 /etc/init.d/ 目录下创建脚本就可以通过 service 命令启动,如:
vi /etc/init.d/logstash
#!/bin/bash
export JAVA_HOME=/usr/lib/jdk/jdk1.8.0_144
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:$HOME/.local/bin:$HOME/bin:$JAVA_HOME/bin:$MYSQL_HOME/bin
export SINCEDB_DIR=/root
ls_path=/home/elk/logstash-6.2.3
case "$1" in
start)
cd $ls_path
nohup ./bin/logstash -f ./bin/config/log4j.cfg &
echo "logstash startup"
;;
stop)
ls_pid=`ps aux|grep logstash | grep -v 'grep logstash' | awk '{print $2}'`
for pid in $ls_pid
do
if [ $$ != $pid ] ;then
kill -9 $pid
fi
done
echo "logstash stopped"
;;
restart)
ls_pid=`ps aux|grep logstash | grep -v 'grep logstash' | awk '{print $2}'`
for pid in $ls_pid
do
if [ $$ != $pid ] ;then
kill -9 $pid
fi
done
echo "logstash stopped"
cd $ls_path
nohup ./bin/logstash -f ./bin/config/log4j.cfg &
echo "logstash startup"
;;
*)
echo "start|stop|restart"
;;
esac
exit $?
|
启动logstash
service logstash start