標籤:admin for 啟動 pac rest sudo 完成 initial href
安裝
安裝python
brew install python
安裝pip
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
安裝supervisor
pip install supervisor
設定檔
產生預設的設定檔
echo_supervisord_conf > /etc/supervisord.conf
編輯設定檔 參考地址
附我的設定檔 在預設的設定檔後面添加
[supervisord]nodaemon=true[program:redis]command=/usr/local/bin/redis-server /usr/local/etc/redis.confautostart=trueautorestart=truestartsecs=3[program:mongod]command=/usr/local/bin/mongod --dbpath /Users/weixuan/Database/mongodbdataautostart=truestartsecs=3autorestart=true
基本使用
Supervisord
安裝完成後有兩個可用的命令列supervisor
和supervisorctl
常見的命令如下:
命令 |
說明 |
supervisord |
初始啟動Supervisord,啟動、管理配置中設定的進程 |
supervisorctl stop programxxx |
停止某一個進程(programxxx),programxxx為[program:chatdemon]裡配置的值,這個樣本就是chatdemon |
supervisorctl start programxxx |
啟動某個進程 |
supervisorctl restart programxxx |
重啟某個進程 |
supervisorctl stop groupworker |
重啟所有屬於名為groupworker這個分組的進程(start,restart同理) |
supervisorctl stop all |
停止全部進程,註:start、restart、stop都不會載入最新的設定檔 |
supervisorctl reload |
載入最新的設定檔,停止原有進程並按新的配置啟動、管理所有進程 |
supervisorctl update |
根據最新的設定檔,啟動新配置或有改動的進程,配置沒有改動的進程不會受影響而重啟。注意:顯示用stop停止掉的進程,用reload或者update都不會自動重啟 |
常見命令
supervisorctl tail programname
查看programname的日誌
supervisorctl tail redis
查看日誌
錯誤碼
ERROR (abnormal termination)
解決辦法:
supervisorctl tail programname
查看programname的具體日誌資訊
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
gave up: redis entered FATAL state, too many start retries too quickly
解決辦法:
修改redis.conf的daemonize為no
brew安裝的redis,設定檔在 /usr/local/etc/redis.conf
小技巧:vim尋找
# 要自當前游標位置向上搜尋/pattern#pattern 表示要搜尋的特定字元序列# 要自當前游標位置向下搜尋 ?pattern# 精確尋找# 要尋找單個的 place,請鍵入該單詞,並在其前後各加一個空格 / place
其它
終止mongodb
正常:
use admindb.shutdownServer()
強制:
kill -9 pid
supervisor 監控redis & mongodb