运维监控 — 快速搭建一个服务器性能监控系统

本文主要介绍通过 Telegraf 和 Pandora TSDB 来收集 phpfpm 的 metric 数据.

监控内容

服务器基础性能信息:

  • accepted connections
  • active processes
  • idle processes
  • total processes
  • max active processes
  • listen queue
  • listen queue length
  • max listen queue
  • slow requests
  • max children reached

效果图

最终能看到的效果

快速开始

第一步:确保编译的 php-fpm 已经包含

找到 php-fpm 的配置文件

  1. ;pm.status_path = /status

去掉注释,改为

  1. pm.status_path = /status

第二步:修改 nginx 配置

新增加一个 nginx location

  1. location ~ ^/(status|ping)$ {
  2. access_log off;
  3. allow 127.0.0.1;
  4. deny all;
  5. include fastcgi_params;
  6. fastcgi_pass 127.0.0.1:9000;
  7. }

allow 127.0.0.1;: 改为你的 ip 地址(如果是和 telegraf 同一台机器,则不用修改)
fastcgi_pass 127.0.0.1:9000;: 此处为 php-fpm 暴露的端口

第三步:修改 telegraf 配置

将下列的配置信息复制到telegraf.conf文件的最顶端,然后保存telegraf.conf文件;

  1. # # Read metrics of phpfpm, via HTTP status page or socket
  2. [[inputs.phpfpm]]
  3. urls = ["http://localhost/status"]

第四步:启动&发送数据

用上述生成的配置文件启动 Telegraf,输入以下命令:

  1. ./telegraf -config telegraf.conf

第五步: 配置 Grafana 数据源

在七牛应用市场打开 Grafana 应用,然后按照下图所示的配置:

配置 Grafana 数据源

注意事项:

php-fpm性能监控 - 图3

第六步: 导入 Grafana dashboard 配置文件

下载 Grafana dashboard 配置文件

  1. wget http://orzfblcum.bkt.clouddn.com/phpfpm.json

完成!