今までpy-supervisord-monitorを利用していたが、
・認証画面がないこと
・グループ化して管理できないこと
から変更した。ポイントのみ記載する。
cesiインストール
# aptitude install sqlite3 python python-flask # cd /usr/local/src/ # git clone https://github.com/Gamegos/cesi # cd cesi/ # cp -R cesi /etc/ # sqlite3 /etc/cesi/userinfo.db < userinfo.sql # vi /etc/cesi.conf ================================== [node:node1] username = username password = password host = x.x.x.x port = 9001 [environment:production] members = node1 [cesi] database = /etc/cesi/userinfo.db activity_log = /var/log/cesi-activity.log host = 127.0.0.1 ;port = 5000 ;name = what name mean? ================================== # cd /etc/cesi/ # python web.py
cesiの永続起動
supervisordに以下を追加する。
# vi /etc/supervisor/conf.d/cesi.conf ================================== [program:cesi] directory=/etc/cesi command=python web.py user=root group=root autostart=true autorestart=true redirect_stdout=true redirect_stderr=true stopasgroup=true stopsignal=QUIT stdout_logfile=/var/log/supervisor/%(program_name)s_%(process_num)s.log stdout_logfile_maxbytes=10MB stdout_logfile_backups=5 stderr_logfile=/var/log/supervisor/%(program_name)s_%(process_num)s_error.log process_name=%(process_num)s stderr_logfile_maxbytes=10MB stderr_logfile_backups=5 ==================================
cesiの80番ポート動作
nginxでリバースプロキシした。configは以下。
location / { try_files $uri @cesi; } ### cesi(supervisor) ### location @cesi { proxy_pass http://127.0.0.1:5000; include /etc/nginx/proxy_params; }
参考URL
GitHub:gamegos/cesi
consul-template & supervisorでプロセスの可視化
nginxでURLでリバースプロキシ先を振り分ける設定