需求描述
原来研发把Java程序都是用到其工作目录nohub java -jar xxx.jar方式启动,将Java程序配置为systemd启动停止的方式,更方便日常管理
原先的Java程序启动停止用法
// 停止JAVA程序的方法
root@server:~# kill -9 $(ps -ef|grep fetch-82935c6a252fb-1.0-SNAPSHOT.jar |grep -v grep|awk '{print $2}')
// 启动JAVA程序的方法
root@server:~# nohup java -Xms256m -Xmx4096m -jar fetch-82935c6a252fb-1.0-SNAPSHOT.jar >> /dev/null &
修改操作:
将如下的内容写入文件 /etc/systemd/system/fetch_data.service
其中fetch_data为自己定义的一个名字 不要占用原有服务的名称 且最好都是小写字母
[Unit]
Description=JAVA Service FetchData
After=network.target
[Service]
Type=simple
User=tmn
Restart=on-failure
RestartSec=5s
ExecStartPre=cd /opt/user/run/FetchDataWorkDir/
ExecStart=/app/jdk/jdk1.8.0_202/bin/java -Xms256m -Xmx4096m -jar /opt/user/run/FetchDataWorkDir/fetch-82935c6a252fb-1.0-SNAPSHOT.jar
[Install]
WantedBy=multi-user.target
# 重新加载修改后的service文件
root@server:~# systemctl daemon-reload
# 修改后的启动方式和停止方式
root@server:~# systemctl start fetch_data # 启动
root@server:~# systemctl restart fetch_data # 重启
root@server:~# systemctl stop fetch_data # 停止
root@server:~# systemctl status fetch_data # 查看状态
云乞讨