1.
yum源安装命令:(root用户下运行)
curl -sL http://10.202.235.199/tools/repos/set_yum.sh | bash
2.
yum install -y supervisor
3.
#测试是否安装成功
echo_supervisord_conf
4.
#创建配置文件
echo_supervisord_conf > /etc/supervisord.conf
5.
配置/etc/supervisord.conf
例:
[program:kvmmgr_dashboard]
command=/bin/python /app/main.py
directory=/app/
;process_name=%(program_name)s_%(process_num)02d
;numprocs=2
autostart=true
autorestart=true
user=root
6.
进入进入目录 /usr/lib/systemd/system/,增加文件 supervisord.service,来使得机器启动的时候启动supervisor
文件内容
# supervisord service for systemd (CentOS 7.0+)
# by ET-CS (https://github.com/ET-CS)
[Unit]
Description=Supervisor daemon
[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisord.conf
ExecStop=/usr/bin/supervisorctl $OPTIONS shutdown
ExecReload=/usr/bin/supervisorctl $OPTIONS reload
KillMode=process
Restart=on-failure
RestartSec=42s
[Install]
WantedBy=multi-user.target
7
激活开机启动命令
systemctl enable supervisord.service
启动supervisor进程
systemctl start supervisord.service
关闭supervisor进程
systemctl stop supervisord.service
如果修改了supervisor.service文件,可以通过reload命令来重新加载配置文件
systemctl reload supervisord.service
问题1:
Unlinking stale socket /tmp/supervisor.sock
或者:
Error: Another program is already listening on a port that one of our HTTP servers is configured to use. Shut this program down first before starting supervisord.
解决办法:
sudo unlink /tmp/supervisor.sock
or
sudo unlink /var/run/supervisor.sock
or
sudo unlink /run/supervisor.sock(貌似没用)
问题2 使用systemctl start supervisord.service 启动
https://www.jianshu.com/p/e1c3e6fbae80
问题3
sudo sudo: no tty present and no askpass program specified 解决方法
https://blog.csdn.net/gezehao/article/details/47317103
### 4台控制节点修改/etc/sudoers配置文件
vim /etc/sudoers
文件最后新增如下配置
sfkvm ALL=(ALL) NOPASSWD: /bin/python /app/kvmmgr_dashboard/kvmmgr_dashboard/bin/main.py api_web_prd2 start