👁

Supervisor 配置生成器

生成 Supervisor 进程管理配置文件

快速开始模板

基础配置

程序名称
执行命令
工作目录
运行用户
进程数量
设置 > 1 以创建进程池

启动行为

自动启动
自动重启
意外退出时
意外退出后自动重启程序
启动重试次数
停止信号
TERM
停止等待时间

日志管理

标准输出日志
标准错误日志
日志文件最大大小
日志备份数量

高级设置

优先级
数字越小优先级越高(0-999)
环境变量每行一个变量,格式:KEY="value"

生成的配置

将此文件保存到 /etc/supervisor/conf.d/ 并运行:supervisorctl reread && supervisorctl update

什么是 Supervisor

Supervisor 是用于类 Unix 操作系统的进程控制系统,允许用户监控和控制多个进程。它提供了一种简单的方式来管理长时间运行的进程、自动重启崩溃的程序以及管理进程组。Supervisor 特别适用于需要持续运行的 Web 应用程序、后台任务和守护进程。

功能特点

⚙️

完整程序配置

通过可视化界面配置所有 Supervisor 程序设置,包括命令、目录、用户、进程数量,无需记忆 INI 语法
🔄

自动重启策略

灵活的重启策略:意外退出时重启、总是重启或从不重启。配置重试次数和停止信号,实现健壮的进程管理
📝

全面日志管理

配置标准输出和错误日志文件,支持日志轮转设置、最大文件大小和备份数量,高效管理磁盘空间
🎯

高级进程控制

设置进程优先级、环境变量和多进程实例,实现可扩展的守护进程管理,提供生产就绪的配置

📋使用指南

1️⃣
基础设置
输入程序名称、执行命令、工作目录和运行用户
2️⃣
启动选项
配置开机自启、重启策略和重试次数
3️⃣
日志配置
设置日志文件路径、最大文件大小和备份轮转次数
4️⃣
部署
下载配置文件到 /etc/supervisor/conf.d/ 并重新加载 Supervisor

📚技术介绍

🔧Supervisor 架构

Supervisor 使用客户端-服务器模型,supervisord 守护进程监控进程,supervisorctl CLI 进行控制。它从 /etc/supervisor/conf.d/ 目录读取配置文件。每个程序在 INI 格式的配置文件中定义,如 [program:name] 区段。Supervisor 监控进程 PID 并根据配置的策略重启程序。

🔄进程生命周期管理

Supervisor 管理完整的进程生命周期:启动、监控、停止和重启。autorestart 选项决定重启行为:'unexpected' 仅在意外退出时重启(非零退出码)、'true' 总是重启、'false' 从不重启。startretries 定义放弃前尝试启动失败进程的次数。

📊日志轮转和管理

Supervisor 提供内建日志轮转,使用 stdout_logfile_maxbytes 和 stdout_logfile_backups 设置。当日志文件达到最大大小时,它会被轮转,旧文件根据备份数量保留。这防止磁盘空间问题。可使用 'supervisorctl tail -f programname' 命令实时监控日志。

🎯优先级和进程组

优先级值(0-999)决定启动和关闭顺序,数字越小越先启动。numprocs 创建进程池,同一程序的多个实例。可使用 KEY="value" 格式为每个程序设置环境变量。process_name 模板变量如 %(program_name)s 和 %(process_num)02d 启用动态命名。

常见问题

Supervisor 配置生成器是做什么用的?

Supervisor 配置生成器用于创建 Supervisor 进程管理的配置文件。Supervisor 是一个进程控制系统,用于在 Linux/Unix 系统上管理长时间运行的进程。本工具通过可视化界面帮助您配置程序设置、自动启动/重启策略、日志管理、进程优先级和环境变量,自动生成符合规范的 supervisor.conf 配置文件。
💬

如何使用这个配置生成工具?

使用步骤:1) 输入程序名称和执行命令;2) 设置工作目录和运行用户;3) 配置自动启动和重启策略;4) 设置日志文件路径和轮转规则;5) 配置进程优先级和环境变量;6) 点击下载按钮获取配置文件;7) 将文件保存到 /etc/supervisor/conf.d/ 目录;8) 运行 supervisorctl reread && supervisorctl update 使配置生效。
🔍

autorestart 的三个选项有什么区别?

autorestart 控制进程退出后的重启行为:1) unexpected(意外退出时):仅当进程返回非零退出码时重启,这是最常用的选项;2) true(总是):无论进程如何退出都会重启,适用于必须持续运行的服务;3) false(从不):进程退出后不会自动重启,适用于一次性任务。建议大多数服务使用 unexpected 选项。
💡

这个工具免费吗?

是的,这个 Supervisor 配置生成工具完全免费。无需注册账号,无需付费,无使用次数限制。所有功能都可以直接使用,包括完整的程序配置、日志管理设置、环境变量配置、配置文件下载等。工具在浏览器本地运行,不收集任何用户数据。
📚

生成的配置文件如何部署?

部署步骤:1) 下载生成的配置文件;2) 将文件上传到服务器的 /etc/supervisor/conf.d/ 目录;3) 确保文件名以 .conf 结尾;4) 运行 supervisorctl reread 重新读取配置;5) 运行 supervisorctl update 应用新配置;6) 使用 supervisorctl status 检查程序状态。配置文件修改后也需要执行 reread 和 update 命令。

🔗相关文档

📖Supervisor 官方文档-Supervisor 配置和使用的完整指南
🔧Supervisor 程序配置-[program:x] 区段设置的详细参考
📚Supervisorctl 命令-管理进程的命令行接口参考
🚀Supervisor 最佳实践-生产部署的提示和最佳实践
🔍Supervisor 事件和通知-进程状态变更的事件监听器系统

User Comments

0 / 2000
Loading...