最近在服务器上启动了Jenkins服务,但是发现每隔一段时间看,这个服务就挂了,希望能有办法在服务挂的时候自动重启。
shell脚本
首先需要写一段shell脚本,监控你的程序是否在运行,如果没运行则启动这个程序,以Jenkins为例
while :
do
ulimit -n 819200
stillRunning=$(ps -ef |grep "jenkins.war" |grep -v "grep")
if [ "$stillRunning" ] ; then
sleep 1
else
echo "starting jenkins process ...."
java -jar /usr/share/java/jenkins.war --httpPort=8081 #启动应用,修改成自己的启动应用脚本或命令
sleep 2
fi
done
然后将这个脚本后台挂起执行
nohup sh jenkins.sh &
然后就会发现,即使kill -9,这个程序还会重新运行