PHP-FPM Exporter 使用教程
1. 项目介绍
php-fpm_exporter
是一个用于 Prometheus 的 PHP-FPM 指标导出器。它能够直接连接到 PHP-FPM 并将其指标通过 HTTP 导出,无需依赖 NGINX 或 Apache 等 Web 服务器。该项目的主要功能包括:
- 支持单个或多个 PHP-FPM 池的导出。
- 支持通过 TCP 或 Unix 套接字连接到 PHP-FPM。
- 支持将环境变量映射到命令行选项。
- 提供了修复 PHP-FPM 指标异常的选项。
- 提供了适用于 Kubernetes 的 Grafana 仪表盘。
2. 项目快速启动
2.1 安装
你可以通过以下方式安装 php-fpm_exporter
:
2.1.1 使用 Docker
docker pull hipages/php-fpm_exporter
2.1.2 使用二进制文件
从 GitHub Releases 页面下载适合你操作系统的二进制文件。
2.2 启动
2.2.1 使用 Docker 启动
docker run -it --rm -e PHP_FPM_SCRAPE_URI="tcp://127.0.0.1:9000/status" hipages/php-fpm_exporter
2.2.2 使用二进制文件启动
php-fpm_exporter server --phpfpm.scrape-uri="tcp://127.0.0.1:9000/status"
2.3 访问指标
启动后,你可以通过浏览器访问 http://localhost:9253/metrics
来查看导出的指标。
3. 应用案例和最佳实践
3.1 监控多个 PHP-FPM 池
如果你有多个 PHP-FPM 池,可以通过以下方式同时监控它们:
php-fpm_exporter server --phpfpm.scrape-uri="tcp://127.0.0.1:9000/status tcp://127.0.0.1:9001/status"
3.2 使用环境变量配置
你可以通过环境变量来配置 php-fpm_exporter
,例如:
export PHP_FPM_SCRAPE_URI="tcp://127.0.0.1:9000/status"
php-fpm_exporter server
3.3 修复 PHP-FPM 指标异常
PHP-FPM 有时会报告不准确的进程数,你可以通过以下方式启用修复:
php-fpm_exporter server --phpfpm.fix-process-count
4. 典型生态项目
4.1 Prometheus
php-fpm_exporter
是 Prometheus 生态系统的一部分,用于收集和导出 PHP-FPM 的指标。你可以将这些指标集成到 Prometheus 中进行监控和报警。
4.2 Grafana
php-fpm_exporter
提供了适用于 Kubernetes 的 Grafana 仪表盘,你可以通过 Grafana 可视化 PHP-FPM 的指标,进行更直观的监控和分析。
4.3 Kubernetes
在 Kubernetes 环境中,你可以将 php-fpm_exporter
部署为 Sidecar 容器,与 PHP-FPM 容器一起运行,从而实现对 PHP-FPM 的实时监控。
通过以上步骤,你可以快速上手并使用 php-fpm_exporter
来监控你的 PHP-FPM 服务。