易陆发现互联网技术论坛

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

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

[复制链接]
发表于 2018-6-22 21:11:29 | 显示全部楼层 |阅读模式

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

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

x
1.DBI的安装
. X. e2 Y* ?1 x; Z$ r2 x, _% X8 Y# wget http://www.cpan.org/modules/by-module/DBI/DBI-1.625.tar.gz, d6 [7 n' [* C+ D; R
# tar zxvf DBI-1.625.tar.gz8 x$ d8 K' ]' k$ ~- {8 ~" ^5 j
# cd DBI-1.625
5 M! W0 {, T* d% v# perl Makefile.PL! O: O& Y1 r% \, F7 D+ B- c
# make% {1 m+ {( n! }. h: i/ f
# make test0 n* s" Y) e! W, G$ k
# make install, ^- ^! G' f1 H- o7 }8 {" Q, R# h

- i2 H. h2 s" j& o* I3 m4 L2 G2.DBD的安装' w8 o4 [7 C* j$ T
# wget http://www.cpan.org/modules/by-module/DBD/DBD-mysql-4.023.tar.gz) r- b# I6 W/ a! ~7 ~6 Y: d
# tar -zxvf DBD-mysql-4.023.tar.gz, q* X' E4 c: _
# cd DBD-mysql-4.023; @1 Y/ x! K! X  Q( n5 C* K, K
# perl Makefile.PL --mysql_config=/usr/local/mysql/bin/mysql_config --libs=-L/usr/local/mysql/lib-static -lmysqlclient
# B3 e( c! A, N9 o* Z+ ~# B" V& R# make
: A% Y2 e0 Y3 ?3 ?+ i5 ?# make install
- X0 C, i% c' r: `9 f' w: j# Q+ ?0 c2 X: R7 r+ P
3.编译安装NDOUtils1 C% n7 j" S- o! l
# tar zxf ndoutils-1.5.2.tar.gz
9 i; ~9 Y" I' Q0 h. u- A2 S+ S+ s) M# cd ndoutils-1.5.2& r! I( t7 [  U9 ]" z7 h/ `
# ./configure --prefix=/usr/local/nagios --enable-mysql --disable-pgsql
. Q' i) _5 P/ y# cp ./src/ndomod-3x.o /usr/local/nagios/bin4 i+ Z6 x) ]) }. f/ |4 V" A
# cp ./src/ndo2db-3x /usr/local/nagios/bin. u" g5 ?% b. k: z; z* i$ \! J
# cp ./src/log2ndo /usr/local/nagios/bin2 f/ T3 t6 K( L3 e' l  l- X5 y! H
# cp ./src/file2sock /usr/local/nagios/bin
0 l! \) D# R) [7 F, D+ O4 B1 _# chown nagios:nagios /usr/local/nagios/bin/*
  v3 o' h  E( O/ {$ {# V/ G* A# cp ./config/ndo* /usr/local/nagios/etc/
7 L' _& b! p$ d  A" k# ~; \7 X# chown nagios:nagios /usr/local/nagios/etc/*
9 g8 N4 k! W  E: k, P& N9 q( D% A. y; p0 s
4.为NDOUtils创建数据库
, Z+ C$ X$ [/ @+ }' F" M/ D8 R# mysql -uroot -p
, a2 R  V/ k& T9 E0 f! s1 C: Smysql> create database nagios;
% D8 J5 h8 Q, H  i) Z9 vmysql> GRANT SELECT,INSERT,UPDATE,DELETE ON nagios.* TO nagios@localhost IDENTIFIED BY '123456';
$ Q% f: e/ w* p* omysql> flush privileges;
* S7 r+ p4 U. n' q' Z; w; ?4 wmysql> \q
+ q* {6 c6 s6 U  E& p生成ndoutils所需要的数据库
5 m, J* `8 E$ ?1 P# cd db& b% b  g* U' C
# ./installdb -u n root -p 123456 -h localhost -d nagios' V6 o3 d# L  @
也可这样:# /opt/mysql/bin/mysql -u root -p -D nagios -h localhost < ./db/mysql.sql
$ V9 t; y; H; w8 _
( q9 h6 [1 B0 R- ]* G! `5.编辑配置文件  \' X+ T' q1 s' m2 Z) N) {$ j8 V% y
# vi /usr/local/nagios/etc/ndo2db.cfg' }% t$ _0 A$ i$ _; e/ {2 i: \
db_user=nagios7 z" C: L" C" P! d$ h
db_pass=123456
# n) s3 H; ?1 D/ u: Y) p# vi /usr/local/nagios/etc/nagios.cfg
7 r! x+ Y3 C# @  }# 复制下面内容粘贴到#broker_module=...下面。% v9 l9 X9 T4 G) F& f
broker_module=/usr/local/nagios/bin/ndomod-3x.o config_file=/usr/local/nagios/etc/ndomod.cfg
! v* e% ^$ [8 ^1 A5 W3 ~) b此外,请确保您的/usr/local/nagios/etc/nagios.cfg中有如下行出现,否则,请自行添加:- g) \* ~: A( G8 `$ @
event_broker_options=-1 //为Nagios开启event broker
+ r% m8 o% S. `" J& d# N) @. B  u
6.启动ndo2db2 `, ^0 a( {8 E$ a. r! f
# /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg3 f# m3 T7 L" V1 O- c8 }
# echo '/usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg' >> /etc/rc.local
4 g0 H0 U) T6 c) q  G1 [  D2 s( g
) f- ]8 e. O* M2 e7.重启动nagios
. d9 H# z# k" }+ L, D# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg# R; i: ~8 K3 F3 b
# service nagios restart
. q# E: g% |4 ?" m2 z0 ~, M- |+ J3 B* g7 @/ F& ^
检查安装7 d$ O7 \. L# x+ _

1 O5 m- ?9 @% I2 _9 ]# tail -20 /usr/local/nagios/var/nagios.log; k, |8 M5 w( L% }9 }
8 ]% G7 S' X  n5 I) a5 B
8、遇到问题:0 q6 H8 m" [* r' Y  g
1.执行 # /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg
. C- `: x$ h+ ~提示错误:Could not bind socket: Address already in use9 Z0 C" s/ `7 y/ g) y1 J
解决:ps aux|grep ndo2db #没有
0 T: L1 d3 ]+ n查看套接字文件是否存在,删除之! J* r2 d. `$ N* T3 L

% q1 I3 r) s6 W* X7 K4 k4 wll /usr/local/nagios/var/ndo.sock
5 C4 g% W. E" S( U5 Z6 N4 Hrm /usr/local/nagios/var/ndo.sock! j( w, j8 _) N  D4 y
* h" s$ u- a9 ], D: P
2.#ndo2db数据不能导入到数据库! a% S% J1 u( H* B) n  @
原因:编译时没有LDFLAGS=-L/opt/mysql/lib
, ~3 |# D$ u, H; i0 E( ?解决:重新编译ndoutils并加上 LDFLAGS=-L/opt/mysql/lib
8 _! e4 @/ Q0 V" K5 {# q) e# Q7 i! W" Q& y- p) Y7 l% X- y( d
# ./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' k) L: I. ^: }; A! A% s
# make8 W, a7 a" O4 l3 H
#再执行一下安装过程后,通过
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

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

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

QQ|返回首页|Archiver|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )点击这里给我发消息

GMT+8, 2026-4-9 01:10 , Processed in 0.045486 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

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