日度归档:2021年1月14日

将JAVA程序配置到systemd的启动方式 2021-1-14

需求描述
原来研发把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    # 查看状态
Donate
云乞讨