centos系统上Munin监控安装教程

I. 安装

在安装之前请确保已安装EPEL,如果没有,你可以参考centos安装EPEL来安装Munin

yum --enablerepo=epel install munin munin-common munin-node rrdtool
通过安装提示我们可以发现,munin主要依靠perl来工作。
安装完毕后系统会有如下改变:

/etc/munin/munin.conf : Munin master(服务器端) 配置文件.
/etc/cron.d/munin : Munin 设置crontab计划任务文件.
/etc/httpd/conf.d/munin.conf : Munin Apache 配置文件.
/var/log/munin : Munin log日志目录.
/var/www/html/munin : Munin 网站目录.
/etc/munin/munin-node.conf : Munin Node节点配置文件(指定监控哪些节点).
/etc/munin/plugins.conf : Munin plugins插件配置文件.
/etc/rc.d/init.d/munin-node : Munin启动脚本
/etc/munin/plugin-conf.d/munin-node munin-node插件配置.
II. 配置监控端

计划任务

系统已经为我们创建好了计划任务。

cat /etc/cron.d/munin

#
# cron-jobs for munin
#

MAILTO=root

*/5 * * * *     munin test -x /usr/bin/munin-cron && /usr/bin/munin-cron
配置监控选项

接下来我们要告诉程序我们需要监控那些主机,配置文件位于/etc/munin/munin.conf

vim /etc/munin/munin.conf

# 其中 localhost已经被我们配置好了
[localhost]
    address 127.0.0.1
    use_node_name yes
[new domai]
    address 45.62.xxx.2xx
    use_node_name yes

# use_node_name yes 的意思是使用[]内的名字作为当前IP的主机名
nginx服务

我们创建一个虚拟主机,绑定域名munin.phpgao.com,然后将根目绑定录到/var/www/html/munin/即可!

为了保证刚开始的正常服务,老高注释了auth段配置,后面会讲到如何使用。
server {
    server_name munin.phpgao.com;
    # Restrict access
    # auth_basic "Restricted";
    # auth_basic_user_file /var/www/html/munin/.htpasswd;
    location / {
        alias /var/www/html/munin/;   #路径地址为 munin.conf 配置 htmldir 的路径。
    }
}
文件

监控端每天会产生四个日志文件,历史文件会被压缩,在/var/log/munin目录下:

munin-graph.log
munin-html.log
munin-limits.log
munin-update.log
截图:

监控端文件

III. 配置被监控端

配置文件

被监控端只需要安装munin-node即可,用来产生日志供监控端使用。

监控端与被监控端可以是同一台主机,也可以不同。
我们先看看node的配置文件,文件比较长,截取部分讲解。

cat /etc/munin/munin-node.conf

log_file /var/log/munin-node/munin-node.log #产生日志的的目录

allow ^127\.0\.0\.1$    # IP白名单,如果不是监控本机,请修改为监控端的IP。
allow ^222\.222\.111\.111$ # 假设监控端的IP为222.222.111.111

port 4949 # 监听的端口,为监控端服务
运行

# 重启、启动服务
service munin-node restart

# 查看是否启用
netstat -lapn|grep 4949

# 运行 netstat -lapn|grep 4949 可以看到perl在监听此端口
# tcp   0      0 :::4949  :::*   LISTEN      22849/perl

## 加入开机启动脚本

chkconfig --level 35 munin-node on
IV. 等待数据

当以上的配置都搞定后,等待片刻,后台就会出现数据了!

munin后台

V. 高级设置

配置权限

还记得nginx配置的时候用到的验证功能吗? centos搭建awstats简单安装教程里面也用到了。

此功能使用了apache的htpasswd命令,如果遇到bash提示command not found,请使用yum install httpd安装。

再次我们建立一个用户名 phpgao,密码为 hello 的验证文件

htpasswd -c /var/www/html/munin/.htpasswd phpgao
# 再输入两遍 hello 即可保存成功
然后我们反注释掉刚才的nginx配置

server {
    server_name munin.phpgao.com;
    # Restrict access
    auth_basic "Restricted";
    auth_basic_user_file /var/www/html/munin/.htpasswd;
    location / {
        alias /var/www/html/munin/;   #路径地址为 munin.conf 配置 htmldir 的路径。
    }
}
最后重载nginx

nginx -t
service nginx reload
nginx重启

munin插件

以memcached插件为例,插件主页Memcached-Munin-Plugin。

下载插件
cd /tmp
git clone https://github.com/mhwest13/Memcached-Munin-Plugin.git
拷贝至插件目录
cd Memcached-Munin-Plugin
cp memcached_multi_ /usr/share/munin/plugins/memcached_multi_
下面这条命令可以检测插件是否正确安装成功。

munin-node-configure --suggest | grep memcached_multi_

编辑munin-node配置文件

vim /etc/munin/plugin-conf.d/munin-node
添加以下内容

[memcached_multi_*]
env.host 127.0.0.1
env.port 11211
env.timescale 3
env.cmds get set delete incr decr touch
env.leitime -1
创建软连接
ln -s '/usr/share/munin/plugins/memcached_multi_' '/etc/munin/plugins/memcached_multi_bytes'
ln -s '/usr/share/munin/plugins/memcached_multi_' '/etc/munin/plugins/memcached_multi_commands'
ln -s '/usr/share/munin/plugins/memcached_multi_' '/etc/munin/plugins/memcached_multi_conns'
ln -s '/usr/share/munin/plugins/memcached_multi_' '/etc/munin/plugins/memcached_multi_evictions'
ln -s '/usr/share/munin/plugins/memcached_multi_' '/etc/munin/plugins/memcached_multi_items'
ln -s '/usr/share/munin/plugins/memcached_multi_' '/etc/munin/plugins/memcached_multi_memory'
ln -s '/usr/share/munin/plugins/memcached_multi_' '/etc/munin/plugins/memcached_multi_unfetched'
重启服务
service munin-node restart
至此插件配置完成,稍等片刻会有数据了!

时间: 2024-09-11 18:20:07

centos系统上Munin监控安装教程的相关文章

在CentOS系统上查看用户登录记录的方法

  保留.维护和分析日志(如某个特定时期内发生过的,或正在发生的帐号事件),是Linux系统管理员最基础和最重要的任务之一.对于用户管理,检查用户的登入和登出日志(不管是失败的,还是成功的)可以让我们对任何潜在的安全隐患或未经授权使用系统的情况保持警惕.例如,工作时间之外或放假期间的来自未知IP地址或帐号的远程登录应当发出红色警报. 在CentOS系统上,用户登录历史存储在以下这些文件中: /var/run/utmp(用于记录当前打开的会话)被who和w工具用来记录当前有谁登录以及他们正在做什么

在CentOS系统上安装REMI仓库的方法

  REMI 仓库提供了CentOS和RHEL的核心包的更新版本,尤其是最新的PHP/MySQL系列(LCTT 译注:当你需要一个更新包,而 CentOS/RHEL 没有及时提供更新时, REMI 仓库可以帮助你). 安装REMI仓库要记住的一件事是不要在启用了REMI仓库时运行yum update.因为REMI仓库的包名与RHEL/CentOS中的相同,运行yum update可能会触发意外的更新.一个好办法是禁用REMI仓库,在你需要安装RMEI仓库中独有的包时再启用. 预备工作 安装REM

centos系统EPEL安装使用教程

EPEL全称Extra Packages for Enterprise Linux,官方翻译为 企业版 Linux 附加软件包.顾名思义,他可以扩充你的软件库,安装很多软件时能省去很多时间.比如最近很火的PHP的DoS漏洞,Bug 61461,在EPEL下面只需要一条命令就能将PHP升级为5.9,避免重新编. 老高推荐新安装的centos系统都先安装此附加软件包! 安装命令: yum install epel-release RHEL 5.x / CentOS 5.x 32 位 rpm -Uvh

CentOS系统上安装配置Oracle数据库的详细教程_oracle

一.基本配置   1.硬盘剩余空间:10G以上     虽然Oracle 10g的安装文件只有800多MB,但安装后的oracle+oraInventory目录会用差不多4G空间,再加上安装时Oracle生成的临时文件(/tmp目录需要至少400MB). 2.内存1.5G以上     官方文档说512M内存也可以安装.为了避免不必要的麻烦,请把内存加多一些. 3.Swap交换区2G 二.CenOS6 上安装Oracle 10g 1.准备安装在安装Oracle之前执行以下命令: yum insta

在CentOS系统上安装网络监控软件ntopng

  ntopng是什么 Ntopng是一个基于网页的高速通信分析器和流量收集器.Ntopng基于ntop,它运行于所有Unix平台.MacOS X和Windows. 特性 从ntopng网站上,我们可以看到他们说它有众多的特性.这里列出了其中一些: 按各种协议对网络通信排序 显示网络通信和IPv4/v6的激活主机 持续不断以RRD格式存储定位主机的通信数据到磁盘 通过nDPI,ntop的DPI框架,发现应用协议 显示各种协议间的IP通信分布 分析IP通信,并根据源/目的地址进行排序 显示IP通信

怎么在CentOS系统上安装Docker

  Docker 是一个开源工具,它可以让创建和管理 Linux 容器变得简单.容器就像是轻量级的虚拟机,并且可以以毫秒级的速度来启动或停止.Docker 帮助系统管理员和程序员在容器中开发应用程序,并且可以扩展到成千上万的节点. 容器和 VM(虚拟机)的主要区别是,容器提供了基于进程的隔离,而虚拟机提供了资源的完全隔离.虚拟机可能需要一分钟来启动,而容器只需要一秒钟或更短.容器使用宿主操作系统的内核,而虚拟机使用独立的内核. Docker 的局限性之一是,它只能用在 64 位的操作系统上. 在

centOS系统上安装crontab服务的安装使用

输入下面的命令查看是否安装crontab服务. which crontab 如果已安装会显示路径,没有的话,安装也十分的简单,用yum安装crontab: yum install vixie-cron yum install crontabs vixie-cron软件包是cron的主程序:crontabs软件包是用来安装.卸装.或列举用来驱动 cron 守护进程的表格的程序. 下面两条简单的命令帮你查看并启动crond服务: 查看crontab服务状态:service crond status

在CentOS系统上安装Java的openjdk的方法_java

CentOS 6.X 和 5.X 自带有OpenJDK runtime environment  (openjdk).它是一个在linux上实现开源的java 平台.CentOS  yum 命令 安装 Java SDK openjdk centos linux JAVA(openjdk)软件包名 1.java-1.7.0-openjdk - OpenJDK Runtime Environment 2.java-1.7.0-openjdk-devel - OpenJDK Development E

CentOS系统MongoDB 编译安装教程详解

CentOS5编译安装mongodb mongodb有已经编译好的二进制包,解压到对应目录就可以使用. 下面介绍一下,怎么从源码进行编辑安装. 安装前: 安装scons wget http://prdownloads.sourceforge.net/scons/scons-2.3.4.tar.gz python setup.py install 下载mongodb源码&安装: wget https://github.com/mongodb/mongo/archive/r2.2.7-rc0.tar