前言:此文本人主要是用supervisor维持一个消费kafka,将数据写入db的py程序
一、环境
python3.10
二、安装
1、安装supervisor
pip3.10 install supervisor
2、pip安装的supervisor的位置需要找一下,后面的命令执行替换目录即可
find / -name "supervisorctl"
例如:这是我电脑上supervisorctl的位置
3、supervisor安装后会有三个文件
cd /usr/local/bin
ls -l *super*
三个文件的作用:(这里是AI生成的解释)
1.echo_supervisord_conf:这是一个命令行工具,用于生成 Supervisor 的配置文件模板。你可以运行 echo_supervisord_conf > /etc/supervisord.conf 来生成一个默认的配置文件。这个配置文件可以包含多个 [program:x] 部分来定义你想要管理的程序。
2.supervisorctl:这是一个命令行工具,用于与 Supervisor 交互。你可以使用它来启动、停止和重启由 Supervisor 管理的程序,也可以查看程序的状态。例如,你可以运行 supervisorctl status 来查看所有程序的状态,或者运行 supervisorctl start program_name 来启动一个程序。
3.supervisord:这是 Supervisor 的守护进程。它读取配置文件,启动和管理你定义的程序。你可以运行 supervisord 命令来启动守护进程。Supervisord 会在后台运行,并持续监控你的程序。如果某个程序崩溃,Supervisord 会自动尝试重启它。
4、配置命令
由于不同的python环境安装的supervisor的位置不同,为了方便后续命令操作,需要在家目录下的.bashrc中配置一下
cd ~
vi .bashrc
# 然后文件最后另外起一行,输入:
alias supervisorctl=/usr/local/bin/supervisorctl
alias supervisord=/usr/local/bin/supervisord
# 然后 esc -> :wq 保存
source .bashrc
验证: 输入sup然后按tab键能自动补全就好了
三、配置 Supervisor
1、创建一个文件夹,用于存储相关配置文件
mkdir /etc/supervisor
2、使用命令,生成一个【Supervisor】的原始配置文件。
# 符号(>)右侧的是配置文件的路径
/usr/local/bin/echo_supervisord_conf > /etc/supervisor/supervisord.conf
3、找到 supervisord.conf 文件,修改里面的配置参数(这个配置文件里面分号为注释符号)
# 原配置
[unix_http_server]
file=/tmp/supervisor.sock ; the path to the socket file
;chmod=0700 ; socket file mode (default 0700)
;chown=nobody:nogroup ; socket file uid:gid owner
;