找回密码
 注册
查看: 4386|回复: 0

安装NDOUtils保存Nagios数据到mysql数据库

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2018-6-22 21:11:29 | 显示全部楼层 |阅读模式
1.DBI的安装3 _8 c& Z- L1 {# F
# wget http://www.cpan.org/modules/by-module/DBI/DBI-1.625.tar.gz0 k3 I5 z5 y8 c4 y! b
# tar zxvf DBI-1.625.tar.gz
6 m6 o5 ]) E" E2 d% C# cd DBI-1.625# [  s4 i& d3 S& U3 i  ~% }9 v
# perl Makefile.PL
9 [5 J1 E7 X: M# make9 P: m3 s- ^5 @
# make test
. k4 E' m" s! L5 x% y, s, T! D# make install
( ]# z9 |  V) P" x" v3 s8 y/ b6 {% w: ?, x+ ^6 ~+ U; k" f" k) T
2.DBD的安装/ c8 p+ A  k( I
# wget http://www.cpan.org/modules/by-module/DBD/DBD-mysql-4.023.tar.gz$ X& ^, U5 @# ^  }0 S
# tar -zxvf DBD-mysql-4.023.tar.gz
0 p. v) o, q& l3 U# cd DBD-mysql-4.023  I% a0 a( B0 s( N
# perl Makefile.PL --mysql_config=/usr/local/mysql/bin/mysql_config --libs=-L/usr/local/mysql/lib-static -lmysqlclient' m8 V$ F- V: y* p7 N1 t7 K3 n
# make
: P0 r! b, X. S! h7 b+ }3 W) X# make install1 h( D5 y6 ?. e  `
; n4 q0 E' ?% H, ~1 f* n& k/ U
3.编译安装NDOUtils
5 w* D* }6 G' \+ c# p# tar zxf ndoutils-1.5.2.tar.gz6 s0 d# d: b7 k; O& k
# cd ndoutils-1.5.2
5 C3 w& X# d0 U) U$ Q0 t# ./configure --prefix=/usr/local/nagios --enable-mysql --disable-pgsql
2 j  t0 l& B. E2 C; e9 P$ P# cp ./src/ndomod-3x.o /usr/local/nagios/bin: B9 n% K  t* R1 ~
# cp ./src/ndo2db-3x /usr/local/nagios/bin; p# c* H* z; X  Z. K, z- R
# cp ./src/log2ndo /usr/local/nagios/bin
$ r- h( D' n* I# @1 t# cp ./src/file2sock /usr/local/nagios/bin
3 M  n% K8 ?6 J( a4 G2 |# chown nagios:nagios /usr/local/nagios/bin/*
% z: `: t4 Q: d4 B1 I9 t; L# cp ./config/ndo* /usr/local/nagios/etc/
; T1 R. S7 C4 C7 W! ]4 O1 y6 I3 R# chown nagios:nagios /usr/local/nagios/etc/*1 m( R8 r" x3 p4 R& {2 S6 ]! J
* S7 _+ ^/ D/ R0 e# f: `
4.为NDOUtils创建数据库2 R, e5 f4 D6 J
# mysql -uroot -p5 N, |" k( i2 u/ w  d
mysql> create database nagios;2 z4 W! y( H$ ]  J
mysql> GRANT SELECT,INSERT,UPDATE,DELETE ON nagios.* TO nagios@localhost IDENTIFIED BY '123456';- o' {9 t% l- V' C9 M  U4 d- w
mysql> flush privileges;
$ B; e+ |8 ~: Q( E1 B' E# Qmysql> \q8 W1 N+ r2 a8 N! M  o
生成ndoutils所需要的数据库
) R6 [9 [+ |8 p9 F. z8 Z9 E# cd db
0 L& n0 }' J' d, |4 b3 S9 C# ./installdb -u n root -p 123456 -h localhost -d nagios
: E8 a" A1 |& }0 H也可这样:# /opt/mysql/bin/mysql -u root -p -D nagios -h localhost < ./db/mysql.sql
. I$ t& I1 v0 x/ @0 I
  L4 h4 K9 l2 ~. N" J5.编辑配置文件
- V  R: G+ ?" f( `( R$ z, S9 p( j: ]# vi /usr/local/nagios/etc/ndo2db.cfg
2 m4 g7 O1 I8 w1 n6 tdb_user=nagios
* x. ?3 D$ c: |, O6 q; q' @; z9 Tdb_pass=123456
+ Z5 _5 i8 ^+ S. t2 J  o# vi /usr/local/nagios/etc/nagios.cfg5 b9 l$ ]. H$ ]1 z% }+ y( d
# 复制下面内容粘贴到#broker_module=...下面。
6 q) v1 L: P1 @$ Fbroker_module=/usr/local/nagios/bin/ndomod-3x.o config_file=/usr/local/nagios/etc/ndomod.cfg
& h$ o6 D% P6 b7 g; {2 Q, l- N此外,请确保您的/usr/local/nagios/etc/nagios.cfg中有如下行出现,否则,请自行添加:
3 D" P1 |' E3 G: B, c% z6 ~event_broker_options=-1 //为Nagios开启event broker
$ C; Z, G% e: h2 _/ O2 w2 a+ x, f  m  j
6.启动ndo2db; @- i5 d* M( S2 O  s1 X
# /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg- S6 G& A! b5 X# y( E: o  P
# echo '/usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg' >> /etc/rc.local
0 m4 n( m1 ~9 d' s( _$ L
8 L# N; ^6 R9 N# L$ M7.重启动nagios
% c* n3 S6 ^) e3 b6 R! g# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
  q  Z; M% {# p* J  `4 W# service nagios restart
" R7 U+ x  \+ t2 j0 S# E9 u$ Y  q( e5 S' p7 D8 b- ^
检查安装
9 N5 [% l3 z. Z
; X4 G* _2 t9 J3 Q# tail -20 /usr/local/nagios/var/nagios.log
; o5 N5 i3 X2 V" Q
2 j6 x4 L) E4 _& {/ G, D8、遇到问题:9 T/ F: @8 g" K$ M
1.执行 # /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg
1 w/ }, g- K7 ]+ H% y) \提示错误:Could not bind socket: Address already in use" W& d+ _5 C( @0 q( c1 [7 Y
解决:ps aux|grep ndo2db #没有
' F# i7 K/ E+ \3 y' Y查看套接字文件是否存在,删除之9 C4 ]3 [% l1 E% ~( d

) T- `  _, Y. g) ^% P( Dll /usr/local/nagios/var/ndo.sock6 W8 ~$ v1 u, R9 }; k
rm /usr/local/nagios/var/ndo.sock1 i5 u/ |* m+ J7 t6 l7 W! V; T$ [

, o' T; S! x( I7 e& B2 X2.#ndo2db数据不能导入到数据库
  c/ G+ S. j2 l8 t" Y* ~原因:编译时没有LDFLAGS=-L/opt/mysql/lib
/ {% k6 B5 O; A3 L0 v解决:重新编译ndoutils并加上 LDFLAGS=-L/opt/mysql/lib- R5 W2 _) ]! j* u! k5 |
; b9 C" u  h8 H- q; Y' X
# ./configure --prefix=/usr/local/nagios --enable-mysql --disable-pgsql LDFLAGS=-L/usr/local/mysql/lib --with-mysql-inc=/usr/local/mysql/include/mysql --with-mysql-lib=/usr/local/mysql/lib/mysql0 a0 E5 M, b0 @3 l& @
# make7 k; J+ T9 [( _/ J
#再执行一下安装过程后,通过
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-12 02:05 , Processed in 0.015773 second(s), 22 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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