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

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

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2018-6-22 21:11:29 | 显示全部楼层 |阅读模式
1.DBI的安装: o' ^( e9 b0 k: J# Y1 d, ?  h
# wget http://www.cpan.org/modules/by-module/DBI/DBI-1.625.tar.gz9 _2 m3 E* P: m# i& J
# tar zxvf DBI-1.625.tar.gz
8 r, k; a& A1 I# o+ u' M# v# cd DBI-1.6250 I- B4 i4 L8 K+ d
# perl Makefile.PL
1 p  u2 u$ j4 ~" T0 S# make/ u, t5 x" A" V, e, p! l6 n
# make test7 ^& e0 h" u2 o
# make install% Q$ A! O) l3 @1 d

# l9 W; v: G8 _9 Y4 v) K2.DBD的安装
. x, {# ^) @& F# wget http://www.cpan.org/modules/by-module/DBD/DBD-mysql-4.023.tar.gz6 R: |8 A/ R, A) B" Q2 q3 b
# tar -zxvf DBD-mysql-4.023.tar.gz
1 w7 g- [( k! @7 B2 {# cd DBD-mysql-4.0239 Q8 \6 i/ k0 q- R4 F$ ^5 r
# perl Makefile.PL --mysql_config=/usr/local/mysql/bin/mysql_config --libs=-L/usr/local/mysql/lib-static -lmysqlclient
  l0 C! t! T5 ~. s! w# make0 n  ]0 ]' z5 P0 H- B+ J6 A
# make install0 `2 @; [  z* C: C& H) b% k4 a5 P

& l1 t6 s% Y, _1 s6 R7 o3.编译安装NDOUtils. O& d/ `, e% H
# tar zxf ndoutils-1.5.2.tar.gz- i5 V$ J' ~* L7 [  c6 H) W' X% \
# cd ndoutils-1.5.2
) |4 E5 v" M8 [# ./configure --prefix=/usr/local/nagios --enable-mysql --disable-pgsql
1 T  I8 g' l* k) {2 B1 y9 @# cp ./src/ndomod-3x.o /usr/local/nagios/bin
3 }% H2 |* q$ R* t9 ^" v  o$ l" x# cp ./src/ndo2db-3x /usr/local/nagios/bin* N' h" J( `# v9 L& e( r
# cp ./src/log2ndo /usr/local/nagios/bin, C" P9 r; b& t/ t9 R  k8 E
# cp ./src/file2sock /usr/local/nagios/bin
9 ]. |/ R3 j3 {* u0 r4 f- s# chown nagios:nagios /usr/local/nagios/bin/*/ o# O( ?9 W0 N- H( Q6 Q! U& _
# cp ./config/ndo* /usr/local/nagios/etc/
- S4 L( ]7 Q! k1 S4 j# e* a# chown nagios:nagios /usr/local/nagios/etc/*
& g) |0 N- ?3 z9 K/ ^# P9 {8 Z3 W
) a9 _& U$ H0 M, R' D4.为NDOUtils创建数据库
9 |5 }7 q& A4 u( F& z# mysql -uroot -p, d$ {9 v% L) G# I- P& b: a, i
mysql> create database nagios;
  i/ ^7 S" T, a: ~3 xmysql> GRANT SELECT,INSERT,UPDATE,DELETE ON nagios.* TO nagios@localhost IDENTIFIED BY '123456';
2 |/ h$ V/ Y% n3 d% D5 Mmysql> flush privileges;
: [- h+ m7 R& Amysql> \q2 p1 @5 Q2 L; n7 N1 O
生成ndoutils所需要的数据库! ~2 Y- ^. n  p- ^/ x
# cd db
% B% M7 f3 ?2 g8 J7 D, H. e# ./installdb -u n root -p 123456 -h localhost -d nagios
; `" f) A, U" I0 r. ]$ F! ]也可这样:# /opt/mysql/bin/mysql -u root -p -D nagios -h localhost < ./db/mysql.sql& u# F" E5 E+ Y7 d- e
2 e9 K: A5 E3 ~. [8 z$ L, I
5.编辑配置文件
/ j/ A/ y0 E+ W8 k$ n# vi /usr/local/nagios/etc/ndo2db.cfg1 F4 V! Q+ F7 U5 V3 @
db_user=nagios3 Q) D% s& e, m/ a& z% t. A
db_pass=1234568 y9 ^& p& c) a7 c
# vi /usr/local/nagios/etc/nagios.cfg. r0 v  R/ V- A4 }# K6 W
# 复制下面内容粘贴到#broker_module=...下面。
% j: C* B$ S$ i0 ~' e9 \1 wbroker_module=/usr/local/nagios/bin/ndomod-3x.o config_file=/usr/local/nagios/etc/ndomod.cfg
9 v' d" f- l, x7 d8 U5 q# f此外,请确保您的/usr/local/nagios/etc/nagios.cfg中有如下行出现,否则,请自行添加:
" O1 P0 e$ O" K& ]+ zevent_broker_options=-1 //为Nagios开启event broker" e) x6 v2 y: W5 Y- U: f4 ?$ E2 t

* M8 q, b; @! Q- C4 L, Q9 j6.启动ndo2db: M4 G! W# A( `6 M  K1 m
# /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg# T, J6 H9 K# }
# echo '/usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg' >> /etc/rc.local
8 m) R/ A# F9 R1 {/ E. \0 N: G1 R6 n- @$ K, J" e
7.重启动nagios) \- ~) S. i5 d/ l: e. s( N) ?. |
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg" ?% V0 I) i5 @1 S4 _. i
# service nagios restart
% H& [$ E! h5 ^. t! T
& B1 X: U( c8 S: q! v/ y4 [检查安装
# z6 U. ?/ _8 {& K; t. g: ~/ V0 o  z$ u. h8 e5 x
# tail -20 /usr/local/nagios/var/nagios.log
+ A- [. g+ t+ U! [  m; g9 l5 h/ v- i0 {$ c$ u
8、遇到问题:3 Q  h+ B4 R6 K8 N3 `( k8 I* W; D
1.执行 # /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg4 b# s  a. k0 f# D0 K) G
提示错误:Could not bind socket: Address already in use
5 R; k8 I: Z1 t$ [解决:ps aux|grep ndo2db #没有* }# `2 K  @) v* J
查看套接字文件是否存在,删除之
( B% z( ^0 W' w' G4 y5 ~% J3 N# s
4 `0 \& u! }! Q  g5 p! vll /usr/local/nagios/var/ndo.sock
9 [, g$ G  ]1 p* e9 q( e  nrm /usr/local/nagios/var/ndo.sock
1 h: g/ }1 a  |1 p# o! h9 p% n# U& R6 L: m( V) u9 O
2.#ndo2db数据不能导入到数据库4 n+ U3 [5 s% a8 C+ R
原因:编译时没有LDFLAGS=-L/opt/mysql/lib
. `, i2 Q3 ^$ v  @3 i解决:重新编译ndoutils并加上 LDFLAGS=-L/opt/mysql/lib
: b7 k# b+ m. U3 Z
3 ?" \- h5 d; J9 I$ l# ./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/mysql3 t: J4 w' E  e: A8 }/ L; x! D- y8 H
# make
$ R; @. T$ q, V. c#再执行一下安装过程后,通过
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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