systemd下supervisord服务开机自启动以及注意事项

systemd 下supervisord服务开机自启动

centos7 开机自启动脚本:

#vim /lib/systemd/system/supervisord.service

# supervisord service for sysstemd (CentOS 7.0+)
# by ET-CS (https://github.com/ET-CS)

[Unit]
Description=Supervisor daemon

[Service]
ExecStart=/usr/bin/supervisord
ExecStop=/usr/bin/supervisorctl $OPTIONS shutdown
ExecReload=/usr/bin/supervisorctl $OPTIONS reload
KillMode=process
Restart=on-failure
RestartSec=42s

[Install]
WantedBy=multi-user.target

这个自启动脚本需要修改/etc/supervisord.conf配置文件:

????#vim /etc/supervisrod.conf
????????nodaemon=false????改成true

或者:#vim /lib/systemd/system/supervisord.service

[Unit]
Description=Process Monitoring and Control Daemon
After=rc-local.service

[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisord.conf
SysVStartPriority=99

[Install]
WantedBy=multi-user.target

无需修改/etc/supervisord.conf配置文件

两个自启动脚本都能够添加到systemctl自启动服务

#systemctl enable supervisord.service
#systemctl start/restart/stop supervisor.service

systemd 下supervisor服务自启动服务管理有变量的服务

但是当superviosr被管理的服务有环境变量,是会有问题(比如启动elasticserch服务,有JAVA_HOME和limit.conf的依赖),原因:/etc/profile或者/etc/security/limit.conf 这些文件中配置的环境变量仅对通过pam登录的用户生效,
而systemd是不读这些配置的,所以这就造成登录到终端时查看环境变量和手动启动应用都一切正常,但是systemd无法正常启动应用

获取可以通过添加环境变量来解决(未测试,因为supervisor服务自启动的需要不是很强烈):
[Service]
environment=PYTHONPATH=/opt/mypypath:%(ENV_PYTHONPATH)s,PATH=/opt/mypath:%(ENV_PATH)s

参考:https://github.com/Supervisor/initscripts
参考:https://blog.csdn.net/binggoogle/article/details/53203991
参考:https://www.cnblogs.com/mhc-fly/p/8512491.html
参考:http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html

原文地址:http://blog.51cto.com/395469372/2288327

时间: 2024-10-31 09:06:07

systemd下supervisord服务开机自启动以及注意事项的相关文章

Windows下安装的XAMPP如何设置Apache和MySQL等服务开机自启动

在Windows上安装完Xampp,每次都要到Xampp控制台启动和关闭Apache和MySQL等服务,但可以通过设置让Apache等服务安装为系统服务,从而实现服务开机自启动.1.在Xampp安装目录下找到xampp-control.exe,鼠标右键,选择"以管理员身份运行":2.打开控制面板后,我们点击其中一个服务前面红色的叉(确保该服务时停止状态,运行状态下无法完成操作),例如MySQL,会弹出一个对话框,如下图所示:3.回到Xampp的控制面板,发现红色的叉已经变成绿色的勾,如

Centos6.8下设置gitlab服务开机自启动,关闭防火墙开机自启动

一. 本地虚拟机的缺点 本地虚拟机虽然也可以模拟服务器用,但电脑不能保证24小时都是开机的,一旦关机,服务就失去了连接,你将看到我们之前搭建的gitlab服务出现如下画面: 本地电脑7*24小时不关机是不现实的,但是可以保证,一旦虚拟机启动,服务也响应启动,而不是服务启动了,发现防火墙开机自启了,本地去访问gitlab时被拦截了,当关闭防火墙,又发现gitlab服务不是开机自动启动的,还需要手动敲一遍命令: gitlab-ctl start 这显然是不合理的,下面我们谈谈如何开闭防火墙开机自启动

mysql_windows_安装版添加到服务开机自启动

不解释 ,cmd下直接运行 sc create mysql binPath= "C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe" start= auto mysql_windows_安装版添加到服务开机自启动,布布扣,bubuko.com

oracle服务开机自启动

1.修改oracle系统配置文件::/etc/oratab vi /etc/oratab orcl:/opt/oracle/product/10.2.0/db_1:Y 2.在 /etc/init.d/ 下创建文件oracle启动脚本,内容如下: #!/bin/sh # chkconfig: 35 80 10 # description: Oracle auto start-stop script. # # Set ORA_HOME to be equivalent to the $ORACLE_

如何把一个c语言程序做成windows服务开机自启动

原文:如何把一个c语言程序做成windows服务开机自启动 目前写的程序是一个用c语言实现socket侦听的,那么如何把这个程序做成开机自启动呢? 我们是通过vs6.0,编译后生成了.exe文件,然后对这个exe文件进行开机自启动设置.具体设置步骤如下: 第一,注册服务名称. (1)下载Instsrv.exe和srvany.exe两个文件.并将其拷贝到C:\WINDOWS文件夹下. (2)执行命令.C:\WINDOWS>instsrv hope c:\WINDOWS\srvany.exe 这里,

linux下数据库实例开机自启动设置

linux下数据库实例开机自启动设置 1.修改/oratab [[email protected] ~]# vi/etc/oratab     --把N改为Y,如下提示 # This file is used by ORACLEutilities.  It is created by root.sh # and updated by the Database ConfigurationAssistant when creating # a database. # A colon, ':', is

linux下配置tomcat开机自启动

Linux下配置tomcat开机自启动 1.写一个tomcat脚本,内容如下,设置其权限为755,放在/etc/init.d/目录下 #!/bin/bash## /etc/init.d/tomcat# init script for tomcat precesses## processname: tomcat# chkconfig: 2345 86 16# description: Start up the Tomcat servlet engine. if [ -f /etc/init.d/f

Systemd 添加自定义服务(开机自启动)

Systemd 简介:https://fedoraproject.org/wiki/Systemd/zh-cn 一.常用命令,以 mysql 服务为例 # 开机启动 systemctl enable mysqld # 关闭开机启动 systemctl disable mysqld # 启动服务 systemctl start mysqld # 停止服务 systemctl stop mysqld # 重启服务 systemctl restart mysqld # 查看服务状态 systemctl

Linux服务开机自启动使用示例

本文以redis服务为例,介绍了两种服务自启动的方法service,systemctl使用示例 1.修改redis.conf,允许后台运行 daemonize no 改为 daemonize yes 2.使用service命令 1)编写启动shell脚本,命名为redis redis文件代码如下: #!/bin/sh #Configurations injected by install_server below.... EXEC=/home/shijingjing/redis-4.0.2/sr