zoukankan      html  css  js  c++  java
  • zabbix-php-fpm

    我叫张贺,贪财好色。一名合格的LINUX运维工程师,专注于LINUX的学习和研究,曾负责某中型企业的网站运维工作,爱好佛学和跑步。
    个人博客:传送阵
    笔者微信:zhanghe15069028807,非诚勿扰。

    zabbix-php-fpm

    我们监控php这个应用,同时的首先要要把他的状态页面显示出来,然后我们才能去取当中的值做成键值。

    第一步:安装并启动php-fpm

    [root@nginx ~]# yum -y install php-fpm php-cli
    [root@nginx ~]# systemctl start php-fpm
    [root@nginx ~]# systemctl enable php-fpm
    /usr/lib/systemd/system/php-fpm.service.
    [root@nginx ~]# systemctl status php-fpm  #默认侦听在9000端口
    [root@nginx ~]# php -v
    PHP 5.4.16 (cli) (built: Nov  1 2019 16:04:20) 
    Copyright (c) 1997-2013 The PHP Group
    Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
    

    第二步:启用php的状态显示页面

    [root@nginx ~]# rpm -qc php-fpm
    /etc/logrotate.d/php-fpm
    /etc/php-fpm.conf
    /etc/php-fpm.d/www.conf
    /etc/sysconfig/php-fpm
    [root@nginx ~]# vim /etc/php-fpm.d/www.conf 
    121 pm.status_path = /php_status
    [root@nginx ~]# systemctl restart php-fpm
    

    第三步:在nginx当中开启php的访问

    [root@nginx ~]# vim /etc/nginx/nginx.conf
    location ~ ^/(php_status|ping)$ {
                    root /usr/share/nginx/html;
                    fastcgi_pass 127.0.0.1:9000;
                    fastcgi_index index.php;
                    fastcgi_param SCRIPT_FILENAME documentrootfastcgi_script_name;
                    include fastcgi_params;
                    }
    [root@nginx ~]# systemctl restart nginx
    [root@nginx ~]# curl http://127.0.0.1/php_status
    pool:                 www
    process manager:      dynamic
    start time:           02/Jan/2020:19:39:24 +0800
    start since:          126
    accepted conn:        16
    listen queue:         0
    max listen queue:     0
    listen queue len:     128
    idle processes:       4
    active processes:     1
    total processes:      5
    max active processes: 1
    max children reached: 0
    slow requests:        0
    

    pool php-fpm pool(资源池)的名称,大多数情况下为www

    process manager 进程管理方式,现今大多都为dynamic,不要使用static

    start time 上次启动的时间

    start since 已运行了多少秒

    accepted conn pool 接收到的请求数

    listen queue 处于等待状态中的连接数,如果不为0,需要增加php-fpm进程数

    max listen queue 从php-fpm启动到现在处于等待连接的最大数量

    listen queue len 处于等待连接队列的套接字大小

    idle processes 处于空闲状态的进程数

    active processes 处于活动状态的进程数

    total processess 进程总数

    max active process 从php-fpm启动到现在最多有几个进程处于活动状态

    max children reached 当php-fpm试图启动更多的children进程时,却达到了进程数的限制,达到一次记录一次,如果不为0,需要增加php-fpm pool进程的最大数

    slow requests 当启用了php-fpm slow-log功能时,如果出现php-fpm慢请求这个计数器会增加,一般不当的Mysql查询会触发这个值

    第四步:去github上下载一个别人早就定义好的模板

    [root@nginx ~]#git clone https://github.com/maxvgi/zabbix-templates.git
    [root@nginx ~]# ls
    zabbix-templates
    [root@nginx ~]# cd zabbix-templates/
    [root@nginx zabbix-templates]# ls
    aerospike      iostat         mysql    nginx             php-fpm                 README.md  ssl-checks
    check_backups  linux-sockets  netstat  nginx-background  php-fpm-multiple-pools  redis
    [root@nginx zabbix-templates]# cd php-fpm
    [root@nginx php-fpm]# ls   #配置文件、脚本、模板
    fpm.conf  fpm.sh  fpm.xml
    

    第五步:将fpm.xml导入,并修改宏

    第六步:将配置文件移动到/etc/zabbix/zabbix_agentd.d

    [root@nginx zabbix_agentd.d]# pwd
    /etc/zabbix/zabbix_agentd.d
    [root@nginx zabbix_agentd.d]# cat fpm.conf 
    UserParameter=php-fpm[*],/etc/zabbix/scripts/fpm.sh "$1" "$2"
    

    第七步:根据配置文件当中的指示,把脚本放置到相应的目录

    [root@nginx scripts]# pwd
    /etc/zabbix/scripts
    
    //别忘记加执行权限
    [root@nginx scripts]# ls
    fpm.sh
    

    第八步:重启zabbix-agent

    [root@nginx ~]# systemctl restart zabbix-agent
    
  • 相关阅读:
    阿里云SSL证书到期(续期)图文教程
    nginx: [error] open() "/var/run/nginx.pid" failed (2: No such file or directory)
    Mysql读写分离,主从同步实现
    MySQL Waiting for table metadata lock的解决方法
    MYSQL 版本5.7.24 sql_mode=only_full_group_by问题
    CentOS7下PHP7.2安装redis扩展
    每天写点python
    vim 编辑器的光标操作
    【linux使用】bash shell命令行常用快捷键 (转载)
    centos7 cannot find a valid baseurl for repo base (转载)
  • 原文地址:https://www.cnblogs.com/yizhangheka/p/12141753.html
Copyright © 2011-2022 走看看