资源准备
数据库
NDOUtils目前仅支持MySql数据库,对于PostgreSQL数据库支持还在开发中,未来可能会支持更多的、众所关注的数据库。
可以从MySql的官方网站([url]http://www.mysql.com[/url])获得一个箮.??库操作。
我的操作系统是Soalris10,我选择下载源码进行编译安装,下载mysql-5.0.51b.tar.gz源码,同时下载MySql的官方参考文档。

NDOUtils
NDOUtils源码可以从Nagios的官方网站获得,同时可以下载一份NDOUTILS的官方文档

创建MySql的用户和用户组
用户和用户组分别为mysql和mysql
# groupadd mysql
# useradd -g mysql mysql
使用mysql命令登录数据库检查是否安装成功(root用户密码为空)。

创建NDOUtils后台数据库以及登录用户
根据NDOUtils的设计实现原理,其将Nagios监控程序收集到的信息(信息以文本方式存在)导入到后台数据库中,以便后续使用这些历史数据进行分析、预测以及实现其他具体业务功能。
此处创建的数据库和登录用户就是为NDOUtils程序保存监控信息所使用的。我们在这里创建数据库名为nagiosdb,登录用户和密码均为nagiosmysql。当然也可以使用其他数据库名和用户名,但是要记录下来,因为在后续的NDOUtils数据库初始化,以及NDOUtils配置文件中都要用到这些信息。
具体的操作如下:
//进入MySql的安装目录
# cd /usr/local/mysql
//进入bin目录
# cd ./bin
//运行mysql,使用root用户登录数据库,密码为空
# ./mysql -u root -p -h localhost
mysql> CREATE DATABASE nagiosdb;
mysql> GRANT ALL ON nagiosdb.* TO IDENTIFIED BY "nagiosmysql";
mysql> exit
//退出登录,使用刚刚创建的用户登录刚刚创建的数据库
# ./mysql -u nagiosmysql -p -h localhost -D nagiosdb
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.0.51b-log Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>

NDOUtils安装
安装前准备

这里用到的NDOUtils版本是ndoutils-1.4b7,Nagios是3.0.3。其余的软件包如下
Data-Dumper-2.121
DBI-1.607
DBD-mysql-4.007
perl-5.8.8-sol10-x86-local

安装NDOUtils
首先解压源代码包,释放到某一目录,将此目录表示为NDOUTILS_DIR(便于后续描述安装过程)。

这里需要指定MySql的include文件和lib文件路径。

需要将/usr/local/lib添加到LD_LIBRARY_PATH变量中。

其中Makefile文件被标出的部分为所需添加的内容,如果不引入该文件ndo2db-3x和ndo2db-2x将编译失败,因为这两个C文件中都用了asprintf方法,而没有定义该方法,这个方法是在Nagios的 common/snprintf.c文件中定义的。可以将snprintf.c编译好的snprintf.o文件直接拷贝过来,并引入Makefile文件中。这样编译才能通过。
# cd $NDOUTILS_DIR
# cp -R ../nagios-3.0.3/common ./ #拷贝 snprintf.o文件
# make

编译完成,请注意在这之后不要运行make install。

将编译后的可执行文件和配置文件拷贝到Nagios的相应目录下。
并修改配置文件。

修改NDOUtils配置文件ndo2db.cfg,这里主要修改数据库名、用户名和密码(db_name、db_user、db_pass),将其设置成我们之前在安装MySql时创建的数据库和用户。其余保持默认配置即可。
# cd /usr/local/nagios/etc
# vi ./nagios.cfg

Make test中如果没有出现问题则表明安装成功。

初始化NDOUtils后台数据库
在NDOUtils的源代码中有个db目录,其中存放了用于初始化数据的sql脚本和一个建库初始化shell脚本。
运行installdb脚本,这里需要指定用户名、密码、主机、数据库。可以登录MySql查看nagiosdb下是否已经生成NDOUtils的数据表。

运行NDOUtils
此时所有的初始化、配置工作已经完成,下一步就是要启动NDOUtils程序检验是否成功安装了。
对于不同Nagios版本,NDOUtils有不同的启动程序,ndo2db-2x对应Nagios的2.X版本,ndo2db-3x对应Nagios的3.X版本,我安装时Nagios3.0.3版,所以选用ndo2db-3x。
# cd /usr/local/nagios/bin
# ./ndo2db-3x -c ../etc/ndo2db.cfg

运行上述命令启动NDOUtils,查看后台日志看是否有问题。
注意,如果要停止ndo2db-3x进程,再使用kill命令杀掉对应的进程号后,还必须删除/usr/local/nagios/var下的ndo.sock,否则下次NDOUtils不能正常启动。
重启Nagios,并观察Nagios的后台日志,观察是否有异常。
登录MySql使用nagiosdb数据库查看其中表的内容是否被更新。如可以查看nagios_hosts表中的主机信息是否与Nagios的配置文件一致;可以查询nagios_servicechecks表,查看监测内容的最新状态是否已经更新到数据库中。如果信息正常则表示安装配置完成。
结语
以上是我在solaris10x86安装NDOUtils的过程。NDOUtils可以将Nagios的监控信息保存于数据库中,备查询分析,但NDOUtils本身并不提供数据展示层的功能实现,你可能需要其他手段来使用这些收集好数据。

文章摘自:[url]http://alisaga.cn/[/url]
更多信息可登陆:[url]www.pass4side.cn[/url]

转载于:https://blog.51cto.com/459455/92196

Soalris10下NDOUtils安装相关推荐

  1. Solaris10下NDOUtils的安装

    Solaris10下NDOUtils的安装<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:offic ...

  2. mysql64如何配置_win7 64位下如何安装配置mysql-winx64(安装记录)

    win7 64位下如何安装配置mysql winx64 1.mysql下载 官方网站下载地址:http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5. ...

  3. mysql在linux下的安装

    mysql在linux下的安装 安装环境:系统是 centos6.5 1.下载 下载地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads ...

  4. linux mysql 5.6.22_LinuxCentOS6.0下编译安装MySQL5.6.22

    Linux CentOS6.5下编译安装MySQL 5.6.22[给力详细教程] 一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库(安装过程注意有没出错) yum install gcc ...

  5. 71 mac boook pro 无 gpu 下caffe 安装

    71 mac boook pro 无 gpu 下caffe 安装 1.首先安装homebrew工具,相当于Mac下的yum或apt ruby -e "$(curl -fsSL https:/ ...

  6. Centos6/7下静默安装oracle10g

    Centos6/7下静默安装Oracle10g 远程安装oracle10g,通过网上资料,不断摸索成功安装.先在本地虚拟机Centos7上做实验,快照恢复快照恢复,安装了几十次成功之后,再在服务器Ce ...

  7. centos yum mysql-devel 5.5_CentOS 6.5下yum安装 MySQL-5.5全过程图文教程

    在linux安装mysql是一个困难的事情,yum安装一般是安装的mysql5.1,现在经过自己不懈努力终于能用yum安装mysql5.5了.下面通过两种方法给大家介绍CentOS 6.5下yum安装 ...

  8. mysql linux centos 安装_Linux centos 下在线安装mysql

    1,查看是否有安装过mysql: #rpm -qa | grep mysql 如果无结果返回,说明没有安装Mysql,可以全新安装. 2,查看在线服务器提供的Mysql相关的安装包有哪些: #yum ...

  9. ubuntu下如何安装两个版本OpenCV?

    本文首发于微信公众号「3D视觉工坊」--ubuntu下如何安装两个版本OpenCV? 前言 由于在VSLAM技术研究过程中,经常会涉及OpenCV不同版本在ubuntu系统下的安装.因此小凡在此简单总 ...

最新文章

  1. 网络推广软件浅谈关键词如何布置才能让优化更事半功倍!
  2. 网络推广营销教大家有关移动端网站优化更受用户欢迎的技巧!
  3. mongodb集群 java_MongoDB集群JavaAPI插入数据
  4. 【Sqoop学习之一】Sqoop简介
  5. 11.14/11.15 Apache和PHP结合 11.16/11.17 Apache默认虚拟主机
  6. influxdb 客户端工具_性能工具之Jmeter小白入门系列之六
  7. 刚刚!微信8.0版本重大更新!没想到这么多新功能
  8. hnu 暑期实训之7还是7 to_string的实现方法
  9. 中科院分区2020_2020年中科院分区升级版出炉,材料化学物理类一区期刊115本!...
  10. 了解为什么要使用微服务!
  11. [GIS原理] 10.1 空间统计描述(描述性分析、探索性数据分析)、空间自相关分析 - QQ图、权重矩阵、Moran'sl、G统计量
  12. Julia(编程语言)
  13. SpringBoot全局异常处理(三十)
  14. 计算机键盘没有fn,电脑上没有FN键怎么打开小键盘
  15. 台式计算机联网,【实现台式电脑无线上网的2种方法】
  16. 仅用1/4数据量还原真人语音100%细节 火山语音上新超自然对话语音合成技术
  17. 【工具】VSCode无法正常启动Terminal窗口
  18. 今日分享:文字转语音软件哪个好
  19. WIFI连接失败以及断链问题定位分析
  20. android treble 三星,三星S8/Note8升Android 8.0后 确认不支持Project Treble特性

热门文章

  1. CentOS中无法使用setup命令 -bash:setup: command not found
  2. 重新想象 Windows 8 Store Apps (4) - 控件之提示控件: ProgressRing; 范围控件: ProgressBar, Slider...
  3. ASP.NET MVC 重点教程一周年版 第八回 Helper之演化 【转】
  4. 寻找 ASP.NET 2.0 老师
  5. C#实现字符串按多个字符采用Split方法分割得到数组
  6. IOS开发基础之UI的喜马拉雅的项目-10
  7. 类的本质 Objective-C基础
  8. crt中 新建的连接存储在哪_LCD发展至今仍然没有完胜CRT显示器,“老玩家”为你现身说法...
  9. GoogLeNet学习
  10. java射击游戏_Java Swing打猎射击游戏源码