转载自:https://blog.csdn.net/weixin_43424356/article/details/106558710
将 Elastic Search 的启动命令写成一个服务文件 /etc/init.d/elasticsearch
即可。
#!/bin/sh
### BEGIN INIT INFO
# Provides: elasticsearch
# Required-Start: $all
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: The Elasticsearch starter.
### END INIT INFO
case "$1" in
start)
su es<<!
cd /home/es/elasticsearch
./bin/elasticsearch -d
!
echo "elasticsearch startup"
;;
stop)
es_pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'`
kill -9 $es_pid
echo "elasticsearch stopped"
;;
restart)
es_pid=`ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'`
kill -9 $es_pid
echo "elasticsearch stopped"
su es<<!
cd /home/es/elasticsearch
./bin/elasticsearch -d
!
echo "elasticsearch startup"
;;
*)
echo "start|stop|restart"
;;
esac
exit $?
给予执行权限:
sudo chmod +x /etc/init.d/elasticsearch
将 ElasticSearch 设置开机启动:
chkconfig --add elasticsearch
Ubuntu 下:
sudo update-rc.d elasticsearch defaults # Adding
systemctl enable elasticsearch.service
sudo update-rc.d -f elasticsearch remove # Removing
手动干预:
/etc/init.d/elasticsearch start
/etc/init.d/elasticsearch stop
/etc/init.d/elasticsearch restart
查看服务状态:
systemctl status elasticsearch.service