munin 监控 mongodb/redis/php-fpm/nginx/mysql

munin 监控 mongodb

1,下载munin的mongodb插件

https://github.com/erh/mongo-munin

2,安装munin mongodb的依赖

    # yum install pymongo 

这个插件是python写的,如果不装的话,会报以下错误:
# munin-run mongo_mem
Traceback (most recent call last):
File "/etc/munin/plugins/mongo_mem", line 8, in <module>
import pymongo
ImportError: No module named pymongo

3,安装配置munin mongodb插件

    # tar zxvf comerford-mongo-munin-8980f32.tar.gz 
    # cd comerford-mongo-munin-8980f32 
    # ln -sf /路径/mongo_* /etc/munin/plugins/ 
    # chmod +x /路径/mongo_* 
    # ./build.sh 
     
    # vim /etc/munin/plugin-conf.d/mongodb  //创建文件 
    [mongo_*] 
    user root     //要用root,不然会报错 

Can't exec "/etc/munin/plugins/pmongo_mem": Permission denied

4,测试并重启

    # munin-run mongo_btree 
    missRatio.value 0 
    resets.value 0 
    hits.value 2 
    misses.value 0 
    accesses.value 2 
     
    # munin-run mongo_conn 
    connections.value 2 
     
    # munin-run mongo_docs 
    deleted.value 0 
    updated.value 0 
    inserted.value 3 
    returned.value 0 
     
    # munin-run mongo_lock 
    locked.value 0 
     
    # munin-run mongo_mem 
    resident.value 39845888 
    virtual.value 623902720 
    mapped.value 167772160 
     
    # munin-run mongo_ops 
    getmore.value 0 
    insert.value 3 
    update.value 0 
    command.value 43194 
    query.value 3978 
    delete.value 0 

如果上面都有数据的话,就说明插件安装成功

    # /etc/init.d/munin-node restart

munin 监控 redis

1,下载munin redis插件

https://github.com/bpineau/redis-munin

2,加载redis插件

    # ln -sf /路径/redis_ /etc/munin/plugins/ 

3,创建munin的redis配置文件

    # vim /etc/munin/plugin-conf.d/redis //新增文件 
    [redis_*] 
    user root     //在这里要root用户 
    env.host 127.0.0.1 
    env.port 6379 

Can't exec "/etc/munin/plugins/redis_": 权限不够 at /usr/share/perl5/vendor_perl/Munin/Node/Service.pm line 263.

出现这样的错误,基本上权限问题,如文件及文件夹权限,用户没用对等

4,测试munin redis插件是不是ok了

    [root@node1 plugins]# munin-run redis_ 
    multigraph redis_clients 
    clients.value 2 
    multigraph redis_blocked_clients 
    blocked.value 0 
    multigraph redis_memory 
    memory.value 735040 
    multigraph redis_fragmentation 
    frag.value 9.79 
    multigraph redis_changes_since_last_save 
    changes.value 0 
    multigraph redis_total_connections 
    connections.value 154 
    multigraph redis_expired_keys 
    expired.value 2 
    multigraph redis_evicted_keys 
    evicted.value 0 
    multigraph redis_pubsub_channels 
    channels.value 0 
    multigraph redis_commands 
    commands.value 157 
    hits.value 0 
    misses.value 2 
    multigraph redis_dbs 
    db0keys.value 4 
    db0expires.value 0 

5,重启munin-node,就可以看到图片了

    # /etc/init.d/munin-node restart

munin 监控 php-fpm

php5.3以前php-fpm和php-cgi是分开的,php-fpm做为php-cgi,第三方的管理工具包存在的,php5.3以后,php吸收了php-fpm,当你查看进程时,在也看不到php-cgi了,取尔代之的是php-fpm进程。了解php-fpm进程的相关情况就很有必要了。

1,修改php-fpm配置

    # vim /etc/php-fpm.d/www.conf 
     
    pm.status_path = /status     //把前面注释去掉 
     
    # /etc/init.d/php-fpm restart   //重启 

2,修改nginx配置

    # vim /etc/nginx/conf.d/munin.conf   //添加以下内容 
     
    location ~ ^/(status|ping)$ { 
     include fastcgi_params; 
     fastcgi_pass 127.0.0.1:9000; 
     fastcgi_param SCRIPT_FILENAME $fastcgi_script_name; 
     allow 127.0.0.1; 
     #allow 192.168.1.101; 
     #allow munin.51yip.com; 
     deny all; 
    } 
     
    # /etc/init.d/nginx restart  //重启 

访问http://xxxxx.com/status,如果出现以下内容,说明nginx和php-fpm配置对了

pool:                 www
process manager:      dynamic
start time:           14/Jan/2015:09:26:23 +0800
start since:          28796
accepted conn:        261
listen queue:         0
max listen queue:     0
listen queue len:     128
idle processes:       6
active processes:     1
total processes:      7
max active processes: 4
max children reached: 0

3,下载munin的php-fpm插件

https://github.com/tjstein/php5-fpm-munin-plugins

4,配置munin php-fpm插件

    # unzip php5-fpm-munin-plugins-master.zip 
    # cd php5-fpm-munin-plugins-master 
    # chmod +x phpfpm_* 
    # ln -s /路径/phpfpm_* /etc/munin/plugins/ 
     
    # vim /etc/munin/plugin-conf.d/php-fpm //创建新文件 
    [phpfpm*] 
    user tank 
    env.url http://munin.com/status 
    env.ports 80 
    env.phpbin php-fpm 
    env.phppool www 
     
    # /etc/init.d/munin-node restart  //重启 

这里要注意[phpfpm*]可不是随便写的,根这个正则去找插件的,如果不匹配的话,在运行munin-run phpfpm_status 的时候,会报以下错误

Can't exec "/etc/munin/plugins/phpfpm_status": Permission denied

5,查看php-fpm插件是不是安装好了

    [root@node1 plugins]# munin-run phpfpm_memory 
    ram.value 277811200 
     
    [root@node1 plugins]# munin-run phpfpm_status 
    idle.value 6 
    active.value 1 
    total.value 7 
     
    [root@node1 plugins]# munin-run phpfpm_processes 
    php_processes.value 7 
     
    [root@node1 plugins]# munin-run phpfpm_connections 
    accepted.value 406

munin 监控 nginx

1,加载插件

    # ln -s /usr/share/munin/plugins/nginx* /etc/munin/plugins 

munin自带的nginx功能就二个,如果下了第三方的插件,可以一并放到/etc/munin/plugins,这样监控的会多些

2,配置nginx的munin

    # vim /etc/nginx/conf.d/munin.conf  //添加以下内容 
     
    location /nginx_status { 
     stub_status on; 
     access_log off; 
     allow 127.0.0.1; 
     deny all; 
    } 
     
    # /etc/init.d/nginx restart //重启nginx 

然后看一下http://xxxx.com/nginx_status是否能访问,如果配置正确,会出现以下内容

Active connections: 2
server accepts handled requests
374 374 1726
Reading: 0 Writing: 1 Waiting: 1

3,配置munin的nginx

    # vim /etc/munin/plugin-conf.d/nginx  //创建文件 
     
    [nginx*] 
    env.url http://xxxx.com/nginx_status 
    env.port 80 
     
    [nginx_error]        //查看nginx错误信息的,默认没有这个插件 
    user tank 
    env.logpath    /var/log/nginx 
     
    # /etc/init.d/munin-node restart  //重启munin 

4,检查munin是否配置正确

    [root@node1 plugins]# munin-node-configure |grep nginx //检查nginx是否激活 
    nginx_request | yes | 
    nginx_status | yes |  
     
    [root@node1 plugins]# munin-node-configure --suggest 2>&1 | grep nginx //检查nginx是否配置正确 
    nginx_request | yes | yes 
    nginx_status | yes | yes 

如果上面二步都是yes的话,说明已安装配置成功了。

munin 监控 mysql 2种方法

munin自带的有mysql监控功能,但是没有启用。试了二种方法,都可以监控mysql。

一,安装munin mysql的perl扩展

    # yum install perl-Cache-Cache perl-IPC-ShareLite perl-DBD-MySQL 

二,为监控创建mysql用户

    mysql> CREATE USER munin@localhost IDENTIFIED BY '123456'; 
    mysql> GRANT SUPER,PROCESS ON *.* TO munin@localhost; 
    mysql> FLUSH PRIVILEGES; 

二,munin自带的mysql

1,建立munin mysql插件软连接

    # ln -sf /usr/share/munin/plugins/mysql_* /etc/munin/plugins 

2,创建配置文件

    # vim /etc/munin/plugin-conf.d/mysql.conf //添加以下内容 
     
    env.mysqlconnection DBI:mysql:mytest;host=localhost;port=3306 
    env.mysqladmin /usr/bin/mysqladmin 
    env.mysqluser munin 
    env.mysqlpassword 123456 

3,查看munin是不是支持mysql

    # munin-node-configure |grep mysql 
    mysql_ | yes | 
    mysql_bytes | yes | 
    mysql_innodb | yes | 
    mysql_isam_space_ | yes | 
    mysql_queries | yes | 
    mysql_slowqueries | yes | 
    mysql_threads | yes | 

4,查看munin mysql配置是不是正确

    [root@node1 plugin-conf.d]# munin-node-configure --suggest 2>&1 | grep mysql 
    mysql_ | yes | yes (+bin_relay_log +commands +connections +files_tables + 

如果缺少perl模块就会是no|no

然后重启munin就配置好了。在这里要注意一点就是,munin自带的mysql,监控的东西不多,并且有部分功能不出图片。

三,用第三方的munin mysql插件(推荐)

1,下载地址:https://github.com/kjellm/munin-mysql

2,解压,配置,并安装

    # unzip munin-mysql-master.zip 
    # cd munin-mysql-master 
    # vim Makefile //修改安装文件 
    PLUGIN_DIR:=/usr/share/munin/plugins //改为自己的munin plugins路径 
     
    # vim mysql.conf //原来的删除掉,添加以下内容 
    env.mysqlconnection DBI:mysql:mytest;host=localhost;port=3306 
    env.mysqladmin /usr/bin/mysqladmin 
    env.mysqluser munin 
    env.mysqlpassword 123456 
     
    # chmod +x Makefile //加可执行 
    # make install //安装命令 

安装结束后,并会自动重启munin。用第三方的munin mysql插件,监控的功能多,并且都可以生成图片。如下图:

时间: 2024-10-24 16:03:36

munin 监控 mongodb/redis/php-fpm/nginx/mysql的相关文章

linux中munin监控redis教程介绍

1,下载munin redis插件 https://github.com/bpineau/redis-munin 2,加载redis插件 # ln -sf /路径/redis_ /etc/munin/plugins/  3,创建munin的redis配置文件 # vim /etc/munin/plugin-conf.d/redis //新增文件  [redis_*]  user root     //在这里要root用户  env.host 127.0.0.1  env.port 6379  C

Debian编译安装Nginx+MySQL+PHP-FPM环境详解

Linux环境:Debian 6 Stable 程序版本选择: Nginx:Tengine 1.2.4 淘宝出品,基于Nginx并引进了一些新特性 MySQL:5.1.66 5.1系列最新版.不用5.5的原因是5.5开始编译使用CMake,而资料比较少.(事实上wangyan的脚本使用的是5.5,但是当时我还没看到--) PHP:5.4.9 前几天刚出的Current Stable,自带FPM,与Nginx配合良好. 参考资料: 主要参考军哥的lnmp脚本和wangyan的lanmp脚本.军哥的

LEMP环境搭配配置教程(Ubuntu16.04+Nginx+MySQL+PHP)

前言 拿到一台新装的Linux服务器,该如何配置成一台可以解析动态网页脚本的Web服务器呢? 相信这是很多人都会有的问题.本文将一步一步带你从头开始搭建给予LEMP技术栈的Web服务器,并使其可以正常运行PHP.Nodejs等语言. 所谓的LEMP技术栈,顾名思义其实就是Linux, Nginx, MySQL, PHP的组合.当然,如果喜欢,你也可以不用Nginx,而去选择Apache,这就是所谓的LAMP技术栈了. 本文使用Linux版本为Ubuntu 16.04 64位版本. TL;DR.

MAC通过MacPorts配置 PHP54+PHP FPM+NGINX+MYSQL5.5

使用MacPorts配置PHP开发环境(PHP54+PHP FPM+NGINX+MYSQL55),首先需要安装port,访问:http://www.macports.org/install.php,直接下载源代码: https://distfiles.macports.org/MacPorts/MacPorts-2.1.3.tar.gz. 安装port: 1. tar xzvf MacPorts-2.1.3.tar.gz  解压 2. cd MacPorts-2.1.3 3. ./configu

Linux+Nginx+MySql+Php既LNMP源码安装

我们都知道Apache作为一款出色的web服务器占据了市场大半个江山,他的地位目前还无人能取代,但是除了Apache,,在web服务器软件行列,Nginx以其性能稳定.功能丰富.运维简单.处理静静态文件速度快且消耗系统资源极少的优势,也同样赢得了许多人的青睐. 下面让我们能来了解一下linux下Nginx+mysql+php的源码安装方法. 准备工具: mysql-5.5.15-linux2.6-i686.tar.gz nginx-1.0.11.tar.gz pcre-devel-6.6-2.e

centos下 nginx+mysql+bugfree+php安装

  bugfree是一个bug管理工具.由淘宝开发的并且是开源的工具.淘宝官方有提供安装方法:http://testing.etao.com/node/120.通过XAMPP来安装非常方便.但是XMAPP会一次性把mysql/php/apache/bugfree全部安装.但是我当前的机子上已经安装了nginx/mysql/所以思考之后还是决定自己手动安装.于是噩梦来了.我整整花了两天半的时间搞这个. 软件: mysql5.5.28 php-5.2.13.tar.gz php-5.2.13-fpm

阿里云一键部署LNMP(Linux+Nginx+MySQL+PHP)栈

LNMP代表Linux+Nginx+MySQL+PHP网站服务器架构.本文主要目的是为大家提供一种非常简单的方法,在阿里云上部署LNMP栈. 通过<阿里云ROS资源编排服务>,将VPC.NAT Gateway.ECS创建,LNMP栈部署过程自动化,使大家能够非常方便地部署一个LNMP栈. 急速部署LNMP栈 一键部署LNMP栈>> 注意: 必须确保可以正确下载nginx-.rpm安装包,我们可以选择类似如下的URL: http://nginx.org/packages/centos

OneinStack一键安装JAVA/Tomcat/Nginx/MySQL网站环境

对于大部分使用VPS主机的用户可能稍许有些门槛,毕竟大部分都是用来建站需求的,从虚拟主机过度到VPS主机.服务器技术上稍微有一点点问题.基本上我们会在VPS中安装WEB面板或者不错的一键包,在国内用途较多的一键包中军哥的LNMP使用还是比较多的,其次就是最近一段时间很多用户有在使用的OneinStack一键包.   OneinStack一键包是网友@yeho原来是发布在自己的博客中的,现在单独用域名提供出来,老左之前也有安装过,相对军哥的LNMP功能更加多一些,可以自由选择配置组合,比如我们常用

LNMP(linux+nginx+mysql+php)服务器环境配置

原文:LNMP(linux+nginx+mysql+php)服务器环境配置 一.简介 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为 "engine X", 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Nginx是由俄罗斯人 Igor Sysoev为俄罗斯访问量第二的 Rambler.ru站点开发的,它已经在该站点运行超过三年了.Igor Sysoev在建立的项目时,使用基于BSD许可. 在高并发连接的情况