supervisord离线安装

简介:

supervisor是一个用python语言编写的进程管理工具,它可以很方便的监听、启动、停止、重启一个或多个进程。当一个进程意外被杀死,supervisor监听到进程死后,可以很方便的让进程自动恢复,不再需要程序员或系统管理员自己编写代码来控制。

supervisor的三个重要的命令:

  • supervisord : 服务端, 运行supervisor时会启动一个进程supervisord,它负责启动所管理的进程,并将所管理的进程作为自己的子进程来启动,而且可以在所管理的进程出现崩溃时自动重启
  • supervisorctl : 客户端, supervisorctl是命令行管理工具,可以用下面命令来进行子进程的管理 , supervisorctl start|status|stop|restartm 子进程名字
  • echo_supervisord_conf : 用来生成默认的配置文件,一般生成默认文件为 supervisor.conf

supervisor是用python写的运行在linux下的进程管理工具,安装supervisor的时候依赖 python的一些包,它依赖:python、setuptools、meld3

1、将安装包上传到机器上:

rz supervisor-3.3.4.tar.gz
rz  meld3-1.0.2.tar.gz       //依赖包
rz setuptools-45.0.0.zip     //依赖包

2、安装setuptools:

unzip  setuptools-45.0.0.zip  
cd  setuptools-45.0.0
python setup.py install

3、安装meld

tar xf meld3-1.0.2.tar.gz
cd meld3-1.0.2
python setup.py install

4、安装supervisor

tar xf supervisor-3.3.4.tar.gz
cd supervisor-3.3.4
python setup.py install

5、创建必要目录和文件:

mkdir -p /etc/supervisor
echo_supervisord_conf  > /etc/supervisor/supervisord.conf  //生成配置文件

6、可更改的路径位置:

#注意:如果前面有用分号";"注释,需要先去掉分号才可以
[unix_http_server]
file=/tmp/supervisor.sock    //自定义路径,也可默认
[supervisord]
logfile=/tmp/supervisord.log
pidfile=/tmp/supervisord.pid
[include]
files = /etc/supervisor/conf.d/*.ini    //可自定义

7、编写服务启动文件:

vim /lib/systemd/system/supervisord.service

[Unit] 
Description=Supervisor daemon 
[Service] 
Type=forking 
ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf 
ExecStop=/usr/bin/supervisorctl shutdown 
ExecReload=/usr/bin/supervisorctl reload 
KillMode=process 
Restart=on-failure 
RestartSec=42s 
[Install] 
WantedBy=multi-user.target

8、执行命令启动supervisord:

systemctl start supervisord

标签