电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Linux 進程管理工具之Supervisor安裝配置

瀏覽:23日期:2023-05-12 10:25:33
目錄
  • 前言
  • 安裝
  • 生成配置
  • 配置文件參數說明
  • 配置管理進程
  • 啟動服務
  • 控制進程
    • 交互終端
    • bash終端
  • 開機啟動服務

    前言

    Supervisor 是用 Python 開發的一個 client/server 服務,是Linux/Unix系統下的一個進程管理工具,不支持Windows系統。它可以很方便的監聽、啟動、停止、重啟一個或多個進程。用Supervisor管理的進程,當一個進程意外被殺死,supervisort監聽到進程死后,會自動將它重新拉起,很方便的做到進程自動恢復的功能,不再需要自己寫shell腳本來控制。

    因為Supervisor是 Python 開發的,安裝前先檢查一下系統否安裝了 Python2.4 以上版本。下面以 CentOS7,Python 3.9 版本環境下,介紹 Supervisor 的安裝與配置步聚。

    安裝

    pip3 install supervisor

    生成配置

    可以通過運行echo_supervisord_conf程序生成 supervisor 的初始化配置文件,如下所示

    mkdir /etc/supervisorecho_supervisord_conf > /etc/supervisor/supervisord.conf

    配置文件參數說明

    supervisor的配置參數較多,下面介紹一下常用的參數配置

    分號(;)開頭的配置表示注釋

    [unix_http_server]file=/tmp/supervisor.sock   ;UNIX socket 文件,supervisorctl 會使用;chmod=0700 ;socket文件的mode,默認是0700;chown=nobody:nogroup       ;socket文件的owner,格式:uid:gid;[inet_http_server] ;HTTP服務器,提供web管理界面;port=127.0.0.1:9001;Web管理后臺運行的IP和端口,如果開放到公網,需要注意安全性;username=user      ;登錄管理后臺的用戶名;password=123       ;登錄管理后臺的密碼[supervisord]logfile=/tmp/supervisord.log ;日志文件,默認是 $CWD/supervisord.loglogfile_maxbytes=50MB;日志文件大小,超出會rotate,默認 50MB,如果設成0,表示不限制大小logfile_backups=10   ;日志文件保留備份數量默認10,設為0表示不備份loglevel=info;日志級別,默認info,其它: debug,warn,tracepidfile=/tmp/supervisord.pid ;pid 文件nodaemon=false       ;是否在前臺啟動,默認是false,即以 daemon 的方式啟動minfds=1024  ;可以打開的文件描述符的最小值,默認 1024minprocs=200 ;可以打開的進程數的最小值,默認 200[supervisorctl]serverurl=unix:///tmp/supervisor.sock ;通過UNIX socket連接supervisord,路徑與unix_http_server部分的file一致;serverurl=http://127.0.0.1:9001 ; 通過HTTP的方式連接supervisord;[program:xx]是被管理的進程配置參數,xx是進程的名稱[program:xx]command=/opt/apache-tomcat-8.0.35/bin/catalina.sh run  ; 程序啟動命令autostart=true       ; 在supervisord啟動的時候也自動啟動startsecs=10 ; 啟動10秒后沒有異常退出,就表示進程正常啟動了,默認為1秒autorestart=true     ; 程序退出后自動重啟,可選值:[unexpected,true,false],默認為unexpected,表示進程意外殺死后才重啟startretries=3       ; 啟動失敗自動重試次數,默認是3user=tomcat  ; 用哪個用戶啟動進程,默認是rootpriority=999 ; 進程啟動優先級,默認999,值小的優先啟動redirect_stderr=true ; 把stderr重定向到stdout,默認falsestdout_logfile_maxbytes=20MB  ; stdout 日志文件大小,默認50MBstdout_logfile_backups = 20   ; stdout 日志文件備份數,默認是10; stdout 日志文件,需要注意當指定目錄不存在時無法正常啟動,所以需要手動創建目錄(supervisord 會自動創建日志文件)stdout_logfile=/opt/apache-tomcat-8.0.35/logs/catalina.outstopasgroup=false     ;默認為false,進程被殺死時,是否向這個進程組發送stop信號,包括子進程killasgroup=false     ;默認為false,向進程組發送kill信號,包括子進程;包含其它配置文件[include]files = relative/directory/*.ini    ;可以指定一個或多個以.ini結束的配置文件

    配置管理進程

    進程管理配置參數,不建議全都寫在supervisord.conf文件中,應該每個進程寫一個配置文件放在include指定的目錄下包含進supervisord.conf文件中。

    • 創建/etc/supervisor/config.d目錄,用于存放進程管理的配置文件
    • 修改/etc/supervisor/supervisord.conf中的include參數,將/etc/supervisor/conf.d目錄添加到include
    [include]files = /etc/supervisor/config.d/*.ini

    下面是一個 Python 的例子

    [program:wechat]command=/root/.virtualenvs/wechat-robot/bin/python /root/wechat-robot/server.pystdout_logfile=/root/wechat-robot/log/stdout.logautostart=trueautorestart=truestartsecs=5priority=1stopasgroup=truekillasgroup=true

    啟動服務

    supervisord -c /etc/supervisor/supervisord.conf

    控制進程

    交互終端

    supervisord啟動成功后,可以通過supervisorctl客戶端控制進程,啟動、停止、重啟。運行supervisorctl命令,不加參數,會進入supervisor客戶端的交互終端,并會列出當前所管理的所有進程。

    (wechat-robot) [root@VM-46-61-centos ~]# supervisorctl wechat   RUNNING   pid 29346, uptime 0:44:10supervisor> status wechatwechat   RUNNING   pid 29346, uptime 0:44:17supervisor> helpdefault commands (type help <topic>):=====================================add    exit      open  reload  restart   start   tail   avail  fgpid   remove  shutdown  status  update clear  maintail  quit  reread  signal    stop    versionsupervisor> help stopstop <name>     Stop a processstop <gname>:*  Stop all processes in a groupstop <name> <name>      Stop multiple processes or groupsstop allStop all processessupervisor> 

    bash終端

    supervisorctl statussupervisorctl stop tomcatsupervisorctl start tomcatsupervisorctl restart tomcatsupervisorctl rereadsupervisorctl update
    (wechat-robot) [root@VM-46-61-centos ~]# supervisorctl status wechatwechat &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RUNNING &nbsp; pid 29346, uptime 0:45:12

    開機啟動服務

    # vim /lib/systemd/system/supervisor.service[Unit]Description=supervisorAfter=network.target[Service]Type=forkingExecStart=/usr/local/bin/supervisord -c /etc/supervisor/supervisord.confExecStop=/usr/local/bin/supervisorctl $OPTIONS shutdownExecReload=/usr/local/bin/supervisorctl $OPTIONS reloadKillMode=processRestart=on-failureRestartSec=42s[Install]WantedBy=multi-user.target

    修改文件權限為766

    chmod 766 supervisor.service

    設置開機啟動

    systemctl enable supervisor.servicesystemctl daemon-reload

    以上就是Linux 進程管理工具之Supervisor安裝配置的詳細內容,更多關于Linux 進程管理的資料請關注其它相關文章!

    標簽: Linux
    主站蜘蛛池模板: 好杂志网-首页| 大鼠骨髓内皮祖细胞-小鼠神经元-无锡欣润生物科技有限公司 | LED太阳能中国结|发光红灯笼|灯杆造型灯|节日灯|太阳能灯笼|LED路灯杆装饰造型灯-北京中海轩光电 | 东莞动力锂电池保护板_BMS智能软件保护板_锂电池主动均衡保护板-东莞市倡芯电子科技有限公司 | 铆钉机|旋铆机|东莞旋铆机厂家|鸿佰专业生产气压/油压/自动铆钉机 | 飞扬动力官网-广告公司管理软件,广告公司管理系统,喷绘写真条幅制作管理软件,广告公司ERP系统 | 湿地保护| 济南品牌设计-济南品牌策划-即合品牌策划设计-山东即合官网 | 真空粉体取样阀,电动楔式闸阀,电动针型阀-耐苛尔(上海)自动化仪表有限公司 | 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 - 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 | 丁基胶边来料加工,医用活塞边角料加工,异戊二烯橡胶边来料加工-河北盛唐橡胶制品有限公司 | 英国公司注册-新加坡公司注册-香港公司开户-离岸公司账户-杭州商标注册-杭州优创企业 | 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 - 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 | C形臂_动态平板DR_动态平板胃肠机生产厂家制造商-普爱医疗 | 热处理炉-退火炉-回火炉设备厂家-丹阳市电炉厂有限公司 | 原子吸收设备-国产分光光度计-光谱分光光度计-上海光谱仪器有限公司 | 耐热钢-耐磨钢-山东聚金合金钢铸造有限公司 | 气弹簧定制-气动杆-可控气弹簧-不锈钢阻尼器-工业气弹簧-可调节气弹簧厂家-常州巨腾气弹簧供应商 | 包装设计公司,产品包装设计|包装制作,包装盒定制厂家-汇包装【官方网站】 | 正压送风机-多叶送风口-板式排烟口-德州志诺通风设备 | 反渗透水处理设备|工业零排放|水厂设备|软化水设备|海南净水设备--海南水处理设备厂家 | 深圳市八百通智能技术有限公司官方网站 | 消防设施操作员考试报名时间,报名入口,报考条件 | Safety light curtain|Belt Sway Switches|Pull Rope Switch|ultrasonic flaw detector-Shandong Zhuoxin Machinery Co., Ltd | 滚筒烘干机_转筒烘干机_滚筒干燥机_转筒干燥机_回转烘干机_回转干燥机-设备生产厂家 | 工业胀紧套_万向节联轴器_链条-规格齐全-型号选购-非标订做-厂家批发价格-上海乙谛精密机械有限公司 | 防堵吹扫装置-防堵风压测量装置-电动操作显示器-兴洲仪器 | 湖南教师资格网-湖南教师资格证考试网 | 上海公众号开发-公众号代运营公司-做公众号的公司企业服务商-咏熠软件 | 锂电混合机-新能源混合机-正极材料混料机-高镍,三元材料混料机-负极,包覆混合机-贝尔专业混合混料搅拌机械系统设备厂家 | 切铝机-数控切割机-型材切割机-铝型材切割机-【昆山邓氏精密机械有限公司】 | 电力测功机,电涡流测功机,磁粉制动器,南通远辰曳引机测试台 | 紧急切断阀_气动切断阀_不锈钢阀门_截止阀_球阀_蝶阀_闸阀-上海上兆阀门制造有限公司 | 防爆型气象站_农业气象站_校园气象站_农业四情监测系统「山东万象环境科技有限公司」 | 信阳网站建设专家-信阳时代网联-【信阳网站建设百度推广优质服务提供商】信阳网站建设|信阳网络公司|信阳网络营销推广 | 天津暖气片厂家_钢制散热器_天津铜铝复合暖气片_维尼罗散热器 | 医疗仪器模块 健康一体机 多参数监护仪 智慧医疗仪器方案定制 血氧监护 心电监护 -朗锐慧康 | 阻垢剂,反渗透阻垢剂,缓蚀阻垢剂-山东普尼奥水处理科技有限公司 真空粉体取样阀,电动楔式闸阀,电动针型阀-耐苛尔(上海)自动化仪表有限公司 | 长江船运_国内海运_内贸船运_大件海运|运输_船舶运输价格_钢材船运_内河运输_风电甲板船_游艇运输_航运货代电话_上海交航船运 | 电表箱-浙江迈峰电力设备有限公司-电表箱专业制造商 | 标准件-非标紧固件-不锈钢螺栓-非标不锈钢螺丝-非标螺母厂家-三角牙锁紧自攻-南京宝宇标准件有限公司 |