摘要:前言是一個客戶端服務器系統,允許其用戶在類操作系統上控制許多進程。這將打印一個示例的配置文件到您的終端。不會自動生成配置文件。具體可見官方文檔后臺提供的后臺管理比較簡單大致功能有重啟啟動停止進程,打印日志,清除日志等。
前言
Supervisor是一個客戶端/服務器系統,允許其用戶在類UNIX操作系統上控制許多進程。(官方解釋)
簡單點來講,就是一個監控腳本運行的工具,不過他可以統一化管理,laravel的隊列文檔上也有相關使用方式方法,例如
定時腳本的啟動、重啟、關閉和日志監控
swoole的啟動、重啟、關閉和日志監控 (眾所周知,swoole大部分的特性都只能在cli中運行)
redis的啟動、重啟、關閉和日志監控 (redis自身未提供類似phpmyadmin的后臺可視化工具)
laravel中的隊列、一些自動化的腳本、workman等等的腳本
一般都使用 &test.sh 讓其來保證在后臺運行,但在很多情況下,無法對腳本個人化的監控。這時你可能就需要 Supervisor 來幫助你。你大可把它當作你的unix系統的可視化管理后臺。下面來讓我們見證它的強大之處。
安裝Supervisor 有多種安裝方式,我推薦其中最簡單也是最容易安裝的一種
apt-get -y install python-setuptools easy_install supervisor
正如你所見,兩條命令即完成安裝
配置Supervisor安裝完成后,運行 echo_supervisord_conf。這將打印一個示例的Supervisor配置文件到您的終端。只要你能看到打印的配置文件內容。
Supervisor 不會自動生成配置文件。
請使用命令 echo_supervisord_conf > /etc/supervisord.conf 來生成配置文件。
部分配置文件信息表名稱 | 注釋 | 栗子 |
---|---|---|
inet_http_server[port] | 內置管理后臺 | *:8888 |
inet_http_server[username] | 管理后臺用戶名 | admin |
inet_http_server[password] | 管理后臺密碼 | admin |
include[files] | 設置進程配置文件格式 | /etc/supervisor/supervisor.d/*.ini |
Supervisor 啟動需加載配置文件
supervisord -c /etc/supervisor/supervisord.conf
停止命令是
supervisorctl shutdown
重新加載配置文件
supervisorctl reload
Supervisor 以 [program:[your_cli_name]] 以每段進程配置文件的開頭,your_cli_name 則是你的進程名稱,名稱會顯示在Supervisor后臺管理工具和Supervisor cli命令輸出上。我們以運行php-fpm為例
[program:php7] command=php-fpm
哦呦,就是醬紫簡單。沒有過多的廢話。或者運行一段shell。
[program:echo] command=sh echo.sh -------------------------------- echo.sh your_name="my name zhangsan" echo $your_name
當然laravel隊列也是依舊簡單
[program:laravel-worker] command=php /home/forge/app.com/artisan queue:work sqs --sleep=3 --tries=3
當然這里只是簡單的演示,讓你可以快速上手,配置腳本內不僅僅只有command命令。
具體可見官方文檔 http://www.supervisord.org/co...
Supervisor提供的后臺管理比較簡單
大致功能有 重啟、啟動、停止進程,打印日志,清除日志等。基本上就這么幾個簡單的功能,當然也沒有宕機報警,日志報警什么的。不過強大的Supervisor為我們提供了接口
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/30890.html
摘要:如果有服務器需要維護重啟時,也會重啟,此時端口會發生變化,仍然會隨機拿一個沒有使用的端口號來和號端口做端口映射。除非該刪掉后,端口號會被分配給其他使用。 Dockerfile Docker是軟件工業上的集裝箱技術。 通過以下文件制作Docker鏡像 [root@Optimus docker-training]# cd centos7/ [root@Optimus centos7]# l...
摘要:背景手里有一個項目,代碼按照前端代碼庫后端代碼庫分別在上,分散帶來的結果是,不容易持續集成,比如你可能需要很多的去保證一個項目的正常運作,但是這個項目也不是特別大,所以嘗試將代碼融合,于此同時將代碼化,用于持續部署。 背景 手里有一個web項目,代碼按照前端代碼庫、后端代碼庫分別在GitHub上,分散帶來的結果是,不容易持續集成,比如你可能需要很多的job去保證一個項目的正常運作,但是...
閱讀 1829·2021-09-22 15:55
閱讀 3521·2021-09-07 10:26
閱讀 628·2019-08-30 15:54
閱讀 684·2019-08-29 16:34
閱讀 839·2019-08-26 14:04
閱讀 3258·2019-08-26 11:47
閱讀 2134·2019-08-26 11:33
閱讀 2294·2019-08-23 15:17