易陆发现互联网技术论坛

 找回密码
 开始注册
查看: 6052|回复: 1
收起左侧

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

[复制链接]
发表于 2016-8-22 11:53:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?开始注册

x

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

1. 内容

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

  • ; g+ Q# j. \  [* c6 A& ?, g2 f
    • munin mastermunin-node的安装;
    • web服务展示结果和动态查看结果;
    • 插件编写与配置(mysql插件与自定义插件)。
      : }' j5 ], d2 |4 _1 ?8 ^- T
    7 E1 S$ K& t' ]( E5 M* S

2. 架构示意图


' U7 ~- ~8 t2 q' t* q                               
登录/注册后可看大图

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


+ L0 B6 V* P4 z* l  @' t3 |( Q一、Ubuntu/Debian 下安装

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

1. Munin node(客户端)

# apt-get install munin-node

2. Munin master(服务端)

# apt-get install munin

4 W8 Z, O, w; |! n
二、Redhat下安装

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

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

) ?, H, _8 R, }% `4 O/ N

1. Munin node(客户端)

下载程序包:

Munin-node包:
/ c4 {' T$ S8 R' `% J5 t, [#yum install -y epel-release

#yum install -y munin-node& V, R5 d! y" [4 i% y. [5 w
6 p. Y. {" y2 Y& m
下载依赖包:

# wget ftp://bo.mirror.garr.it/1/slc/ce ... .5-7.el7.x86_64.rpm( s+ A* ~8 N2 E5 M, M( n: m/ S
# wget ftp://195.220.108.108/linux/cent ... 2-12.el5.x86_64.rpm
  }/ m. }1 H2 z0 ^# wget http://dag.wieers.com/rpm/packag ... 2.el5.rf.noarch.rpm& n2 @0 H, S. g. Y
# wget http://dag.wieers.com/rpm/packag ... 3.2.el5.rf.i386.rpm (perl-Net-SNMP依赖此包)4 E  l9 I; R5 @, i
# wget http://pkgs.repoforge.org/perl-S ... .el5.rfx.x86_64.rpm (perl-Net-SNMP依赖此包)' k6 D3 B# s" j: F
# wget http://pkgs.repoforge.org/perl-N ... 1.el5.rf.noarch.rpm
9 @: I7 P; k( d& `% D2 m* u8 W
2 z2 E, l: J" y6 S1 j9 K3 x可以使用以下顺序安装:
" e0 @) L" @$ U& e, M# rpm -Uvh sysstat-7.0.2-12.el5.x86_64.rpm! O4 l8 e3 J2 N4 B! m
# rpm -Uvh perl-Net-Server-0.99-1.el5.rf.noarch.rpm  D& s1 _: R( _1 B' u5 \+ F, w
# rpm -Uvh perl-Socket6-0.23-1.el5.rfx.x86_64.rpm
# }9 r) k$ h0 Z7 l/ p0 U( \' r) T# rpm -Uvh perl-Crypt-DES-2.05-3.2.el5.rf.i386.rpm
0 H: _3 l3 u* n8 r+ j$ {; c# rpm -Uvh perl-Net-SNMP-5.2.0-1.2.el5.rf.noarch.rpm$ M. |7 O2 Q- t2 U
# rpm -Uvh munin-node-1.2.5-1rhel4.noarch.rpm(最后安装Munin node)2 t& R: }  X. d1 }. n- w8 b3 e
5 D. e& B+ ~# ~* Z& k
即:
* x: r% [3 G# E+ i3 r1 m1:sysstat
) A! x% `) |# T) b% Z8 n2:perl-Socket6
9 g5 Q2 \& e+ U3:perl-Crypt-DES
+ T0 c9 J7 i1 L$ C4:perl-Net-SNMP& Y% T& \( C1 \5 x7 B  t" S
5:perl-Net-Server
1 @' e) i% C( N6 W6:munin-node) v% [! F: R! M
. m, I) r( ]: R* v# p6 R
如果遇到签名验证不通过的问题,可以加上[--force --nodeps] 参数强制安装:
- k' A" k2 O4 b' Q0 q2 X% P1 q$ b0 F# rpm -Uvh perl-Net-SNMP-5.2.0-1.2.el5.rf.noarch.rpm --force --nodeps

$ \9 @9 E8 o5 F/ y' l- D; o

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

: q# C7 _0 v5 t) R' e

2. Munin master(服务端)

下载Munin包:

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


5 k( ?+ ?2 b0 y; G: J7 M( T* Q1 w" T

下载依赖包:

# 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也用到)


2 _. Y; ]# a7 Q, K4 ^1 y) j/ [9 k8 z) \/ S

安装顺序:

1:perl-HTML-Template

2:rrdtool

3:perl-rrdtool

4:perl-Net-SNMP

5:perl-Net-Server

6:munin

' v( {$ Q  o) N$ \! r

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


' D/ J. B$ M5 m; P( J; _( H& {2 k三、配置和启动

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


- [: j2 ]) F% t/ R2 j

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$, D% j# Y0 I0 g8 `0 w

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

$ l2 Z8 j9 b6 f0 k

1.2 启动、停止和重启

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

# service munin-node start        #启动# service munin-node stop        #停止# service munin-node restart     #重启1 w% m% p. I  \! [4 i2 v
systemctl start munin-node# G" r  Z( B0 ^4 Q

6 z% b9 X9 Y$ D* [8 Y) r- `# B- e

1.3 测试

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

[url=]
% t8 n  x- M+ a7 B. _
                               
登录/注册后可看大图
[/url]
; G, z7 B$ ?! l& z* t- J
$ 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=]
! b$ _; z* N! L5 o* \: B3 ~
                               
登录/注册后可看大图
[/url]

1 m# H) r6 A; l6 q, p

4 {, N- q; `/ I/ Q
) V4 w2 T6 ~& M) T7 |4 f* w

2. munin.conf

2.1 配置

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

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

[url=]

0 M  r) f9 K( D  M% ]& q                               
登录/注册后可看大图
[/url]
" ?! T: i. L0 C6 p6 H3 t% g+ O- }
dbdir   /var/lib/muninhtmldir /var/cache/munin/wwwlogdir /var/log/muninrundir  /var/run/munintmpldir /etc/munin/templates[url=]

, q: f' x1 a/ s' \0 e                               
登录/注册后可看大图
[/url]
) P- V1 X! \( Q& p8 ?) V+ \6 [
+ k: z  k+ @$ |" K4 ?

+ }9 D( T- }( j  L5 \4 U

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

[url=]
  h1 e# s/ q* L5 u9 s# t6 r; q5 W
                               
登录/注册后可看大图
[/url]
# j! S. V+ P* W. |$ L, ~
# 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=]
+ u5 V2 h7 v  Z6 j# Z: |- I
                               
登录/注册后可看大图
[/url]
' F2 Y: w4 V6 B1 X1 D- ^, j) y# J3 t
" z$ ~( Y0 I  x
- ?5 r: v0 Q* x9 w

2.2 启动

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


$ S0 V% _* q" k$ G* x

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

# su munin -c /etc/init.d/munin-cron
* s3 _6 F5 x9 }

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


4 r* L# i# E8 {& F% y5 G  e7 ]" \: c2 T

3 测试

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

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

6 p7 ?4 J% x/ z) T  |! Z: _/ k" Z
                               
登录/注册后可看大图


- ^4 s* a4 V1 P0 E8 p4 f1 Z( O% B# U5 H& z# C/ ~3 ]! W5 h
 楼主| 发表于 2016-8-22 16:38:46 | 显示全部楼层
contos7 服务器启动时 systemctl start munin-node  启动munin
' v2 o- y) Y# I$ m8 Q# w$ x0 Bsystemctl restart munin-node
2 k6 q; |/ L9 C) u; g
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

北京云银创陇科技有限公司以云计算运维,代码开发

QQ|返回首页|Archiver|小黑屋|易陆发现技术论坛 点击这里给我发消息

GMT+8, 2026-4-8 12:04 , Processed in 0.048327 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

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