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

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

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2018-6-22 21:11:29 | 显示全部楼层 |阅读模式
1.DBI的安装
- s, `2 B9 M7 f: I8 l4 H4 D1 k% v# wget http://www.cpan.org/modules/by-module/DBI/DBI-1.625.tar.gz
+ m3 ]4 g/ b1 a8 C# tar zxvf DBI-1.625.tar.gz7 x1 j6 K8 Y1 e; ^& b; \( X2 B
# cd DBI-1.625  k  e  r" ^8 m; k% ^" Z4 k
# perl Makefile.PL
2 T! j7 E/ r% ]6 d0 v: x8 Y# make. Q9 e3 a& q6 d
# make test
/ \" R9 d6 p& H# make install! |6 {" G3 j, P/ w1 h
( v& I, |9 X$ b# L, K
2.DBD的安装
( N4 y% N7 \# l5 \1 d* h  \3 H; w# wget http://www.cpan.org/modules/by-module/DBD/DBD-mysql-4.023.tar.gz
# j: v6 [% J) C& Q' L# tar -zxvf DBD-mysql-4.023.tar.gz' U1 I; V" x! ^4 s/ r" X5 r
# cd DBD-mysql-4.0239 h/ r( V9 y; L9 ~- N" b9 I
# perl Makefile.PL --mysql_config=/usr/local/mysql/bin/mysql_config --libs=-L/usr/local/mysql/lib-static -lmysqlclient
( y9 g8 }. k8 x) s6 z# make
" ^) {" q3 p; }# make install
- \3 M3 ?) r6 w7 f& D0 ^/ c' H! T! O
3.编译安装NDOUtils
' L* g, l: L! _# v. i- h/ r# tar zxf ndoutils-1.5.2.tar.gz
) K2 i4 x2 H' p" D# cd ndoutils-1.5.23 m. |- H1 B. D' [/ A' Y0 ~+ k5 o
# ./configure --prefix=/usr/local/nagios --enable-mysql --disable-pgsql9 w0 A, ?1 a) t$ r$ n) u
# cp ./src/ndomod-3x.o /usr/local/nagios/bin
. R  r& Y6 E* B5 w# cp ./src/ndo2db-3x /usr/local/nagios/bin
2 q; @! o8 L7 M% x; z# cp ./src/log2ndo /usr/local/nagios/bin. ~/ F. T. q1 e" `
# cp ./src/file2sock /usr/local/nagios/bin9 b3 `, x5 g: R
# chown nagios:nagios /usr/local/nagios/bin/*2 T# S3 g5 P7 R" M" Q( W5 W4 t
# cp ./config/ndo* /usr/local/nagios/etc/
' j1 _, @  ?( W) e  {7 q# chown nagios:nagios /usr/local/nagios/etc/*$ \" N/ f, F) i; n+ X
. C* S( O" B1 `) _2 v% G
4.为NDOUtils创建数据库
5 X, [& f  L: M6 S' c2 X" A* f# mysql -uroot -p
, v% R6 O8 z2 b, t* [' mmysql> create database nagios;
8 d6 I3 B# z$ Umysql> GRANT SELECT,INSERT,UPDATE,DELETE ON nagios.* TO nagios@localhost IDENTIFIED BY '123456';
; y; B( a% W5 s8 i0 R' Q. k, {' K/ mmysql> flush privileges;5 A2 G  J, n% D1 [: V6 K6 t
mysql> \q# I) `& Z& \6 E: P" B( I! o$ E9 z$ n
生成ndoutils所需要的数据库0 f; {, f1 [2 I
# cd db
* L8 {" j. |/ U5 m0 d. f8 b) s6 K# ./installdb -u n root -p 123456 -h localhost -d nagios& G' V  {* @* o) j1 H; ]8 u
也可这样:# /opt/mysql/bin/mysql -u root -p -D nagios -h localhost < ./db/mysql.sql
9 f6 B, |4 t; g0 T
. [* ]0 M4 A$ k$ B2 J4 A# s- E5.编辑配置文件
% V+ H+ ^) m! n1 ~: [. ]6 C& H% P# vi /usr/local/nagios/etc/ndo2db.cfg1 V/ [2 l9 l. ~, {* A7 F8 b6 X8 f
db_user=nagios
0 |$ ?$ r, W. y+ l6 H6 ldb_pass=123456
; D7 J( d' z) M% n8 B! T; R# vi /usr/local/nagios/etc/nagios.cfg) k' o/ o# {2 Y% P
# 复制下面内容粘贴到#broker_module=...下面。
* [, d3 k7 A4 i/ }2 w3 ?9 bbroker_module=/usr/local/nagios/bin/ndomod-3x.o config_file=/usr/local/nagios/etc/ndomod.cfg% R. ~5 q& G# R% m0 Y
此外,请确保您的/usr/local/nagios/etc/nagios.cfg中有如下行出现,否则,请自行添加:2 r8 @% A- ~8 G) q: a: G/ d
event_broker_options=-1 //为Nagios开启event broker5 G& q7 L$ k- S" j4 W: o! g

# S; @$ L, K9 u0 W+ C6.启动ndo2db- j6 e, a3 m; a4 W' c
# /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg
3 b0 [' x4 {6 F; u( L2 U# echo '/usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg' >> /etc/rc.local7 |# k7 ^3 k3 {- i# W

: y% `; I8 B) h: _1 L4 y% K2 b7.重启动nagios4 P7 `1 z- `" G/ C1 y7 \
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg9 k! B* D5 ]/ Q9 G7 e
# service nagios restart, c. Z( V  E  g, e; P7 Y

1 M. A& A0 R+ t7 t2 G检查安装
5 I* F, f7 x4 d
( h4 ~" ]1 O* r' m( A* a- x1 x3 l# tail -20 /usr/local/nagios/var/nagios.log; v! ?5 Q, Z# J& q/ v  m% [
) n; G( l$ Y2 p( y. L9 e( _
8、遇到问题:
. d) C% K  g# b" x& m1.执行 # /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg
4 Q4 R5 E' k( W* Y, v) o提示错误:Could not bind socket: Address already in use% b' R+ |. v. ?; m
解决:ps aux|grep ndo2db #没有2 S; M7 ]- ~4 w0 D9 J
查看套接字文件是否存在,删除之
3 n; a1 ]5 P* X6 I0 G
* A8 {8 l/ T7 q% t7 p+ d7 C. {. bll /usr/local/nagios/var/ndo.sock
* Q& A0 ?0 D1 Y) _5 X0 @rm /usr/local/nagios/var/ndo.sock! J, r  M& e6 U8 i- }: m

' t6 t- w5 {) o4 D9 F# Q2.#ndo2db数据不能导入到数据库
) e: A2 ~; t# t* J6 i- r原因:编译时没有LDFLAGS=-L/opt/mysql/lib
% L1 ]+ ]# w. A% R9 v/ n; d解决:重新编译ndoutils并加上 LDFLAGS=-L/opt/mysql/lib
1 v2 T, `+ b; f+ z& _9 ?/ A3 P% v4 W, p
# ./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/mysql
3 \2 Y" d$ Z% o3 t% I0 r+ l# make1 g9 e. Z0 U7 z2 l% w# r
#再执行一下安装过程后,通过
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-12 04:21 , Processed in 0.020575 second(s), 22 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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