supervisor集群方式-supervisor-monitor

Posted 龙叔运维

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了supervisor集群方式-supervisor-monitor相关的知识,希望对你有一定的参考价值。

        我的另一篇文章有介绍linux的进程管理工具supervisorlinux进程管理工具:supervisor_龙叔运维的博客-CSDN博客1、安装yum installsupervisor或者apt-get install supervisor2、配置supervisor有两类配置文件:2.1、主配置文件 默认路径:/etc/supervisord.conf 这个目录一般不用动,需要管理进程的话,给进程单独创建一个配置文件就好。2.2、进程单独配置文件 默认路径:/etc/supervisord.d/*.ini (默认是ini后缀,可以在主配置文件中修改) 每个进程的管...https://blog.csdn.net/github_30641423/article/details/120403773?spm=1001.2014.3001.5501        

        文章中也讲解了supervisor是可以开启一个http服务,用来在页面对supervisor管理的进程进行管理操作。

        但是如果你有很多个服务器都使用supervisor去管理进程,每个服务器的supervisor都有单独一个管理页面,那在管理上其实是没有那么方便的,要记住所有IP,还要一个个登录上去操作,多少有些麻烦,如果多个supervisor能够形成集群,能够集群管理就好了。

        对于这一点,是有一些工具可以支持supervisor的集群方案的,例如下面五个工具:

                ·Django-Dashvisor
                ·Nodervisor
                ·SupervisorUI
                ·cesi
                ·Supervisord-Monitor

        而本文要将的就是作者认为最简单方便,好用的一个工具:supervisor-monitor

        

1、supervisor自带管理页面

        /etc/supervisord.conf中配置如下,重启supervisor,然后访问 http:IP:9001  就可以了

        这里配置的账号密码  在后面的supervisor-monitor中也会用到

[inet_http_server] 
port=0.0.0.0:9001 
username=admin
password=admin

 2、安装supervisor-monitor

安装包下载地址:GitHub - mlazarov/supervisord-monitor: Supervisord Monitoring Tool

2.1、环境安装

因为supervisor-monitor是php语言开发的,所以要安装PHP环境,以及nginx

PHP安装

        yum -y install php-fpm
        yum install php-xml.x86_64

nginx安装

        nginx安装 我的另外文章中有  这里就不重复了        https://wangxiaolong.blog.csdn.net/article/details/108923592https://wangxiaolong.blog.csdn.net/article/details/108923592 

2.2、搭建配置

        修改php-fpm配置文件中的用户,保持和nginx用户一致(我这里是www)

        vim /etc/php-fpm.d/www.conf

user = www
group = www

        启动php-fpm

        systemctl start php-fpm.service

        将supervisor-monitor的安装包解压(我这里的目录是/data/supervisor/

        进入/data/supervisor/supervisord-monitor/application/config目录下,复制配置文件

        cp supervisor.php.example supervisor.php

        修改supervisor.php配置文件(添加集群实例)

        账号密码就是对应supervisor节点上的http服务中配置的账号密码

        修改nginx配置文件,user配置为www(没有用户就 useradd www新增一下)

        并且我们这里给supervisor配置一个单独的子配置文件conf.d/supervisor.conf

        并且主配置文件nginx.conf中一定要有 include conf.d/*.conf;

        conf.d/supervisor.conf内容如下(根据自己的路径进行调整)

        [root@cnabdabvdc09-193-45 conf.d]# cat supervisor.conf

server {
    listen       80 default_server;
    server_name  172.xx.xx.223;(改成你的)
    root         /data/supervisor/supervisord-monitor-master/public_html;(改成你的)

    location / {
        index  index.php index.html;
        auth_basic "Basic Auth";
        auth_basic_user_file "/data/nginx/conf/conf.d/.htpasswd";
     }
    location /control/ {
        index  index.php;
        rewrite  /(.*)$  /index.php?$1  last;
    }
    location ~ .php$ {
        try_files $uri =404;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        fastcgi_param  SCHEME $scheme;
        include        fastcgi_params;
    }
}
 

        然后重启nginx  (nginx -s reload)

        访问  http://172.xx.xx.223 (改成你的地址)  

         这样supervisor即实现了集群管理了   一个页面就可以管理多个服务器上supervisor管理的所有进程

欢迎关注我的公众号:龙叔运维

持续分享运维经验

以上是关于supervisor集群方式-supervisor-monitor的主要内容,如果未能解决你的问题,请参考以下文章

supervisor集群方式-supervisor-monitor

supervisor 和集群方案

supervisor管理集群(多个tomcat)#yyds干货盘点#

Supervisor初体验

Supervisor简介

ubuntu安装supervisor