找回密码
 注册
查看: 6213|回复: 1

[Linux实用工具]Linux监控工具munin的安装和配置

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2016-8-22 11:53:09 | 显示全部楼层 |阅读模式

munin是用于Linux系统(也可以监控windows系统)的监控软件。munin除了可以监控系统的各项数值之外,最大的好处是可以自己编写插件自定义监控需要的数值。整个系统的架构简单明了,操作方便。如果是使用Debian或者Ubuntu安装,安装过程也非常简单。munin除了可以监控结果,也可以设置报警。对于我个人对性能测试的工作来说,是个非常好的工具。

1. 内容

munin整个使用下来,篇幅会有点大,包括展示、自定义插件。这边分成三个部分来说明。本次只讲安装和配置。


  • + d$ U9 A2 V; [. N6 l  X7 p' |
    • munin mastermunin-node的安装;
    • web服务展示结果和动态查看结果;
    • 插件编写与配置(mysql插件与自定义插件)。, O  S$ g0 [! t! b/ V
    ) ]1 ?: S, |5 C: \4 e& m. `: }; u

2. 架构示意图

munin的架构非常简单。包含一个服务端munin和一个客户端munin-node。munin-node可以部署在多台机器上面,munin用于定时向一台或者多台机器收集监控的信息。munin收集到数据后会生成静态的html文件。为了展示监控的结果,需要一个web服务器。有了web也可以随时随地访问监控结果。


7 @% X$ C/ D* x5 I5 \7 ]& p一、Ubuntu/Debian 下安装

在Ubuntu/Debian下安装非常简单。使用apt-get就可以直接安装好了。安装完了之后,Munin和Munin-node会顺便启动的。

1. Munin node(客户端)

# apt-get install munin-node

2. Munin master(服务端)

# apt-get install munin

2 E# e( i9 Y& Y; j1 W7 Z' Z* `
二、Redhat下安装

在红帽下安装就略显麻烦了。首先要把rpm的软件包下载下来。但是除了Munin和Munin-node的软件包,另外还涉及到perl的一些库。

另外,Redhat下安装,不同版本的系统包,使用的软件包还不一样。我们使用的是RHEL5版本的,所以下面例子以RHEL5为准(官方给的资料在RHEL5下安装与RHEL4下安装的过程是一样的。只是每个可能软件包根据系统而不一样而已。这个直接替换掉最后的rpm为最新的版本号就好了)。


' l, V" q3 X5 H" R, ~5 i

1. Munin node(客户端)

下载程序包:

Munin-node包:
8 M5 p9 G1 O; L( |7 X#yum install -y epel-release

#yum install -y munin-node
3 v+ j2 `' `7 o6 G
' ?6 ^- I! h9 S3 M8 _0 B, w下载依赖包:

# wget ftp://bo.mirror.garr.it/1/slc/ce ... .5-7.el7.x86_64.rpm
9 ]9 X$ @: `3 C8 W" Q1 q" [" x# wget ftp://195.220.108.108/linux/cent ... 2-12.el5.x86_64.rpm
/ r, ~0 p+ Q* j* M# wget http://dag.wieers.com/rpm/packag ... 2.el5.rf.noarch.rpm. f+ k' H2 A2 Q" g7 }) G
# wget http://dag.wieers.com/rpm/packag ... 3.2.el5.rf.i386.rpm (perl-Net-SNMP依赖此包)3 s. x1 L2 K2 i1 L8 _
# wget http://pkgs.repoforge.org/perl-S ... .el5.rfx.x86_64.rpm (perl-Net-SNMP依赖此包)9 r3 e/ R8 q- E/ p) n' f0 y/ Q6 S4 I
# wget http://pkgs.repoforge.org/perl-N ... 1.el5.rf.noarch.rpm
; R. Y) X3 F* U* k0 [- R! b; H, s; k1 W& E/ b' O2 t$ c/ \7 @
可以使用以下顺序安装:
5 O) k. n+ v2 q; y# t% ?3 N# rpm -Uvh sysstat-7.0.2-12.el5.x86_64.rpm
3 G# D- p6 l" f  B# rpm -Uvh perl-Net-Server-0.99-1.el5.rf.noarch.rpm
/ w1 M5 z7 T% g  |& t  `6 |% u4 L# rpm -Uvh perl-Socket6-0.23-1.el5.rfx.x86_64.rpm9 D- i1 d* N/ l) x  ]
# rpm -Uvh perl-Crypt-DES-2.05-3.2.el5.rf.i386.rpm* p6 ~' K  R. O# n
# rpm -Uvh perl-Net-SNMP-5.2.0-1.2.el5.rf.noarch.rpm
2 T# i3 z/ R0 b/ B/ U& f1 a/ N# F# rpm -Uvh munin-node-1.2.5-1rhel4.noarch.rpm(最后安装Munin node)
4 F9 l. _( d4 `( x) ~
" j1 F' c( q: y& J1 w2 o' M即:
( \/ P0 G; b3 [5 u2 S8 {9 q0 B1:sysstat' x; \$ @1 f$ B8 D6 D! x1 @% e3 M
2:perl-Socket6. k+ F, n( `$ i0 N+ i+ }3 E
3:perl-Crypt-DES, o+ y- j! ^, L0 }
4:perl-Net-SNMP
* Y- v3 d  A0 H2 P% G5:perl-Net-Server
/ [* ?3 ~0 p9 V7 q% v/ ~. Z: _5 A6:munin-node
$ d3 a/ d. e5 N; Z5 u+ r4 X2 \% z+ u
如果遇到签名验证不通过的问题,可以加上[--force --nodeps] 参数强制安装:: V5 T$ ^& ^. S2 q& S
# rpm -Uvh perl-Net-SNMP-5.2.0-1.2.el5.rf.noarch.rpm --force --nodeps

; l% \) v/ u7 E' ^

以上顺利的话,munin-node就安装好了。安装完毕后,系统会自动启动munin-node。


: Q* V7 C# U# C; O* W

2. Munin master(服务端)

下载Munin包:

# wget http://dl.fedoraproject.org/pub/ ... 20-1.el5.noarch.rpm


' I7 i6 ]- [- M3 w' b. Q

下载依赖包:

# wget http://dag.wieers.com/rpm/packag ... 2.el5.rf.noarch.rpm

# wget http://pkgs.repoforge.org/rrdtoo ... .el6.rfx.x86_64.rpm

# wget http://pkgs.repoforge.org/rrdtoo ... 1.el5.rf.x86_64.rpm

# wget http://dag.wieers.com/rpm/packag ... 2.el5.rf.noarch.rpm(munin node也用到)

# wget http://dag.wieers.com/rpm/packag ... 1.el5.rf.noarch.rpm(munin node也用到)


& j; r7 s% c$ _3 t

安装顺序:

1:perl-HTML-Template

2:rrdtool

3:perl-rrdtool

4:perl-Net-SNMP

5:perl-Net-Server

6:munin

/ |, r8 e% n2 b( p: h$ k

以上,munin的客户端和服务端都安装好了。如果安装期间遇到版本不对的地方,请根据自己的系统版本,自行替换为相应的依赖包。


; Z/ A. k: l1 J' d. F三、配置和启动

无论是Debian下安装,还是RedHat下安装,munin-node和munin master(即munin)都默认安装在路径/etc/munin下。配置文件与插件都是在这里配置的。


* b( R. n# ~; E3 X" B& V: M. m# _. i

1. munin-node.conf(客户端配置)

1.1 配置文件

munin-node.conf是客户端(即munin-node)的配置文件。这边的配置比较简单,只需要配置服务器的IP地址就可以了。在allow新增一个服务器的IP配置。默认是配置了本机了,如果你的munin-node与munin master是在同一台机器上面,默认就可以了。这个配置是用来限制那些IP可以访问的。

allow ^127\.0\.0\.1$allow ^::1$allow ^192\.168\.1\.2$% F, J0 X; M8 p: D% W; \! o5 P

另外还可以修改端口、绑定IP地址等。都比较简单,就不多说了。

8 x7 ^( b: B. v- L

1.2 启动、停止和重启

启动程序是/etc/init.d/下的munin-node可执行文件。也可以直接以服务的形式启动。

# service munin-node start        #启动# service munin-node stop        #停止# service munin-node restart     #重启
! B9 j& @$ C! r% b5 q$ R0 hsystemctl start munin-node
4 u: ^8 S* @. k8 |# Y% D0 ?4 J/ Z' h% O6 t: k( e: e" Y  A

1.3 测试

直接telnet就可以。端口默认是配置为4949的,那么telnet连接,输入help可以查看监控命令。

[url=][/url]
0 ?* e) y& r! {9 D% ]6 P$ telnet 127.0.0.1 4949Trying 127.0.0.1...Connected to 127.0.0.1.Escape character is ''.# munin node at machinenamehelp# Unknown command. Try cap, list, nodes, config, fetch, version or quit[url=][/url], i" E" M+ M' w. F3 |" j
2 \  R/ i" ]- o# E+ O' m; _+ q+ M' n

) C9 y/ R( h6 l5 \; c* t

2. munin.conf

2.1 配置

munin.conf是服务端(即munin master)的配置文件。

首先去掉一下路径配置的注释。除了tmpldir,其它可自行配置。但是tmpldir要配置到munin的HTML模板上,默认是在/etc/munin/templates 下。基本上都有说明,还是比较容易看得懂的。

[url=][/url]
$ W- S, o; T4 j* {% p3 ]dbdir   /var/lib/muninhtmldir /var/cache/munin/wwwlogdir /var/log/muninrundir  /var/run/munintmpldir /etc/munin/templates[url=][/url]+ ~- p1 K7 \( f/ q

# {3 Z/ n, {9 Q( A, }7 x" Z8 Y- H" ~
, G8 O6 t- ?9 K1 `4 m0 j* W+ ]

然后找到localhost.localdomain节点。这个是用于配置需要监控的目标机器的。默认会配置本机127.0.0.1。根据需要,可新增需要监控的机器。可以增加多台机器,只要目标机器安装了munin-node就可以。如:

[url=][/url], y9 v6 x' H4 h- }" K6 v
# a simple host tree[local.127-0-0-1]    address 127.0.0.1    use_node_name yes[mytest.192-168-1-3]    address 192.168.1.3    use_node_name yes[mysql.192-168-1-4]    address 192.168.1.4    use_node_name yes[url=][/url]
+ g+ A8 p" a3 h2 P: y" O
& m5 ^, E) [4 t. g" ]' j

! U, C. s  O+ r

2.2 启动

munin master安装成功后。会给系统增加一个munin用户。启动服务端(munin master)是无法用root权限启动的,只能使用munin用户启动。当然安装的时候,会默认自己启动的。并且会每隔5分钟,会定时执行munin-cron定时任务。基本上,修改完配置表后可以完全不用理会,等待服务端自己去更新即可。

( K/ F, e' K5 d- I, Y/ t

当然如果你一定要马上更新,可以切换到munin用户,执行munin-cron命令。

# su munin -c /etc/init.d/munin-cron9 E* E  G$ Q) x4 C4 s

执行无报错的话,是没有打印信息的。


: B6 y& u( R4 |4 v5 M+ i; P; p7 U

3 测试

在munin.conf 配置文件里面指定了生成的监控的html监控结果“htmldir /var/cache/munin/www”。只需要配置一个web服务器,可访问到目标路径“/var/cache/munin/www”即可。可以使用nginx、apache、resin等主流web服务器。html都是静态文件,所以任何web服务器都是可以的。

访问web服务器,就可以查看结果了。

' s5 w" g0 Z5 ]# a! ^0 w; X4 \+ a4 U

/ |  k  N: |- @

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2016-8-22 16:38:46 | 显示全部楼层
contos7 服务器启动时 systemctl start munin-node  启动munin
; s/ w1 a2 C1 B3 v% o$ ssystemctl restart munin-node' C4 y$ J8 B$ V/ x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-11 23:32 , Processed in 0.029418 second(s), 25 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表