Supervisor 、Supervisord-Monitor 的web统一管理安装、配置、使用

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Supervisor 安装、配置、使用、web管理,linux下进程管理系统、监听、重启、停止进程。

Supervisor: A Process Control System

说明:[http://supervisord.org/]Supervisor is a client/server system that allows its users to monitor and control a number of processes on UNIX-like operating systems.

Supervisor使用python开发的一个c/s服务,linux下进程管理系统、监听、重启、停止进程。Server supervisord,supervisorctl作为客户端管理进程。


一、 安装

1、yum 安装: yum install supervisor

2、easy_install 安装:wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py -O |python && easy_install supervisor

3、salt stack安装:


init.sls

{% if grains['osmajorrelease'] == "6" %}

supervisor_install:

cmd.run:

- name: yum install python python-meld3 -y && rpm -Uvh http://****/supervisor-3.0-1.gf.el6.noarch.rpm

{% elif grains['osmajorrelease'] == "7" %}

supervisor:

pkg:

- installed

{% endif %}

/etc/supervisord.d/:

file.directory:

- makedirs: True

- mode: 755

/etc/supervisord.conf:

file.managed:

- source: salt://supervisord/files/supervisord.conf

- backup: minion

- template: jinja

/etc/supervisord.d/templet.ini:

file.managed:

- source: salt://supervisord/files/templet.ini

supervisord:

service.running:

- watch:

- file: /etc/supervisord.conf

- reload: True

- enable: True


salt安装:salt “*” state.sls supervisord

supervisor安装完成后,会生成supervisord(supervisor守护进程)、supervisorctl(客户端)、echo_supervisord_conf(生成配置文件),


二、 配置文件

cat /etc/supervisord.conf

[unix_http_server]

file=/var/tmp/supervisor.sock ;socket 文件,supervisorctl 会使用

[inet_http_server]

port=ip:9001 ;Web管理后台运行的IP和端口,建议监听内网ip

[supervisord]

logfile=/var/log/supervisor/supervisord.log

logfile_maxbytes=50MB ;日志文件大小,超出会rotate,默认 50MB,如果设成0,表示不限制大小

logfile_backups=10 ;日志文件保留备份数量默认10,设为0表示不备份

loglevel=info

pidfile=/var/run/supervisord.pid

nodaemon=false

minfds=1024

minprocs=200

[rpcinterface:supervisor]

supervisor.rpcinterface_factory

[supervisorctl]

serverurl=http://ip:9001

[include]

files = supervisord.d/*.ini

cat /etc/supervisord.d/templet.ini (进程模版,来自saltstack)

;[program:templet]

;command=/www/webcode/templet/bin/catalina.sh run

;user=appuser

;autostart=true

;autorestart=true

;startretries=3

;stopsignal=QUIT

;stopasgroup=true

;killasgroup=true

;stdout_logfile=/www/webcode/templet/logs/catalina.out

;redirect_stderr=true

;environment=JAVA_HOME=/opt/java

;stdout_capture_maxbytes=1024MB

;stdout_events_enabled=true

具体见:http://supervisord.org/configuration.html


三、 启动supervisor:

supervisord -c /etc/supervisord.conf

systemctl start supervisord

/etc/init.d/supervisord start

四、 supervisorctl使用

通过supervisorctl对进程进行管理:

supervisorctl help


五、 Web管理:地址见配置文件

可以进行进程的重启,日志查看等操作


六、 多主机统一管理:

官方推荐:http://supervisord.org/plugins.html

cesiWeb-based dashboard written in Python.

Django-DashvisorWeb-based dashboard written in Python. Requires Django 1.3 or 1.4.

NodervisorWeb-based dashboard written in Node.js.

Supervisord-MonitorWeb-based dashboard written in PHP.

SupervisorUIAnother Web-based dashboard written in PHP.

supervisorclusterctlCommand line tool for controlling multiple Supervisor instances using Ansible.

suponoffWeb-based dashboard written in Python 3. Requires Django 1.7 or later.

SupvisorsDesigned for distributed applications, written in Python 2.7. Includes an extended XML-RPC API and a Web-based dashboard.

目前我们自己使用Supervisord-Monitor,可以通过dash来管理不同服务器上Supervisord程,重启、停止、日志看等。具体截如下:


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
1月前
|
Java API 数据库
构建RESTful API已经成为现代Web开发的标准做法之一。Spring Boot框架因其简洁的配置、快速的启动特性及丰富的功能集而备受开发者青睐。
【10月更文挑战第11天】本文介绍如何使用Spring Boot构建在线图书管理系统的RESTful API。通过创建Spring Boot项目,定义`Book`实体类、`BookRepository`接口和`BookService`服务类,最后实现`BookController`控制器来处理HTTP请求,展示了从基础环境搭建到API测试的完整过程。
46 4
|
3月前
|
Java 关系型数据库 MySQL
"解锁Java Web传奇之旅:从JDK1.8到Tomcat,再到MariaDB,一场跨越数据库的冒险安装盛宴,挑战你的技术极限!"
【8月更文挑战第19天】在Linux上搭建Java Web应用环境,需安装JDK 1.8、Tomcat及MariaDB。本指南详述了使用apt-get安装OpenJDK 1.8的方法,并验证其版本。接着下载与解压Tomcat至`/usr/local/`目录,并启动服务。最后,通过apt-get安装MariaDB,设置基本安全配置。完成这些步骤后,即可验证各组件的状态,为部署Java Web应用打下基础。
58 1
|
3月前
【Azure 应用服务】Web App Service 中的 应用程序配置(Application Setting) 怎么获取key vault中的值
【Azure 应用服务】Web App Service 中的 应用程序配置(Application Setting) 怎么获取key vault中的值
|
17天前
|
JavaScript 前端开发 开发工具
web项目规范配置(husky、eslint、lint-staged、commit)
通过上述配置,可以确保在Web项目开发过程中自动进行代码质量检查和规范化提交。Husky、ESLint、lint-staged和Commitlint共同作用,使得每次提交代码之前都会自动检查代码风格和语法问题,防止不符合规范的代码进入代码库。这不仅提高了代码质量,还保证了团队协作中的一致性。希望这些配置指南能帮助你建立高效的开发流程。
33 5
|
2月前
|
小程序 前端开发 中间件
ThinkPHP 配置跨域请求,使用TP的内置跨域类配置,小程序和web网页跨域请求的区别及格式说明
本文介绍了如何在ThinkPHP框架中配置跨域请求,使用了TP内置的跨域类`\think\middleware\AllowCrossDomain::class`。文章还讨论了小程序和web网页在跨域请求格式上的区别,并提供了解决方案,包括修改跨域中间件源码以支持`Origin`和`token`。此外,还介绍了微信小程序跨域请求的示例和web网页前端发送Axios跨域请求的请求拦截器配置。
ThinkPHP 配置跨域请求,使用TP的内置跨域类配置,小程序和web网页跨域请求的区别及格式说明
|
2月前
|
监控 Apache
HAProxy的高级配置选项-Web服务器状态监测
这篇文章介绍了HAProxy的高级配置选项,特别是如何进行Web服务器状态监测,包括基于四层传输端口监测、基于指定URI监测和基于指定URI的request请求头部内容监测三种方式,并通过实战案例展示了配置过程和效果。
90 8
HAProxy的高级配置选项-Web服务器状态监测
|
1月前
|
Web App开发 Java 测试技术
一、自动化:web自动化。Selenium 入门指南:从安装到实践
一、自动化:web自动化。Selenium 入门指南:从安装到实践
42 0
|
1月前
|
监控 Java Maven
springboot学习二:springboot 初创建 web 项目、修改banner、热部署插件、切换运行环境、springboot参数配置,打包项目并测试成功
这篇文章介绍了如何快速创建Spring Boot项目,包括项目的初始化、结构、打包部署、修改启动Banner、热部署、环境切换和参数配置等基础操作。
136 0
|
1月前
|
NoSQL Java 数据库连接
springBoot:整合其他框架&condition&切换web配置 (五)
本文档介绍了如何在Spring Boot项目中整合JUnit、Redis和MyBatis等框架,并提供了相应的依赖配置示例。同时,还展示了如何通过条件注解实现Bean的条件创建,以及如何切换Web服务器配置,从默认的Tomcat切换到Jetty。
|
2月前
|
监控 前端开发 数据库连接
Zabbix 5.0 LTS的web界面安装及修改zabbix web管理员的默认密码
这篇文章是关于如何安装Zabbix 5.0 LTS的web界面以及如何修改Zabbix web管理员默认密码的教程。
175 1

热门文章

最新文章

下一篇
无影云桌面