Nagios数据存储插件NDOUtils部署和测试
1. 概述
NDOUTILS,Nagios Data Output Utils,Nagios数据输出工具,允许用户从Nagios导出状态和事件信息到数据库中,便于以后的检索和加工
它包括几个部分:
- NDOMOD
- NDO2DB
- FILE2SOCK
- LOG2NDO
2. 组件介绍
2.1 NDOMOD
NDOMOD是事件中断模块。这个模块在Nagios进程运行时加载。
它唯一的角色就是转存Nagios所有事件和数据到TCP套接字,或者普通文件,或者Unix域套接字。
如果用户想实时转发数据至MySQL,可以通过转存数据至TCP套接字或者Unix域套接字。如果想延迟转发数据至MySQL数据库,可以通过转存数据至普通文件。
2.2 NDO2DB
NDO2DB守护进程。这是一个标准的守护进程,从TCP套接字或者Unix套接字读取输入数据(通过NDOMOD事件中断模块输出)。
NDO2DB分析这些数据,并把他们存入一个或者多个MySQL数据中。NDO2DB具有同时处理多个客户端的连接的能力,因此用户同时可以配置多个通过TCP或者Unix套接字输出数据的NDOMOD模块实例。
2.3 FILE2SOCK
FILE2SOCK特性从普通的文件读取数据,将其通过TCP或者Unix套接字转存。
这在NDOMOD模块将数据写入普通文件时,但希望将其转存至数据库的使用场景非常有用。
如果NDOMOD模块输出的数据和NDO2DB运行进程不在同一台主机上时,用户可以通过SSH协议转发存放数据的普通文件至运行NDO2DB进程的主机上,然后通过FILE2SOCK特性转发普通文件的内容至TCP或者Unix端口(NDO2DB从这些端口中获取数据)
2.4 LOG2NDO
LOG2NDO特性用于将Nagios和NetSaint的历史日志归档并转发给NDO2DB进程。同样也是将一个日志文件发送至TCP或者Unix套接字完成数据转存。
3. 编译安装
configure
./configure \
--prefix=/usr/local/globle/softs/monitor/nagios/ndoutils/2.1.3 \
--sysconfdir=/usr/local/globle/softs/monitor/nagios/ndoutils/2.1.3/etc \
--localstatedir=/var \
--enable-mysql \
--with-opsys=linux \
--with-dist-type=rh \
--with-init-type=sysv \
--with-inetd-type=xinetd \
--with-mysql-lib=/usr/lib64/mysql \
--with-ndo2db-user=nagios \
--with-ndo2db-group=nagios
注:--with-mysql-lib的选项提示无法识别,但是可以正确配置MySQL库;但是以--with-mysql选项配置时,实际无法生效
make
直接执行make,提示选择make的选项,这里选择make all
[root@console ndoutils-2.1.3]# make
Please enter make [option] where [option] is one of:
all builds the NDO Utilities
ndo2db builds the ndo2db daemon
ndomod builds the ndomod nagios module
file2sock builds the file2sock utility
log2ndo builds the log2ndo utility
sockdebug builds the sockdebug utility
install-groups-users add the user and group if they do not exist
install installs the module and programs
install-config installs the sample configuration files
install-inetd install the startup files for inetd, launchd, etc.
install-init install the startup files for init, systemd, etc.
fullinstall runs install-groups-users, install,install-config and install-init
make install
执行make install
之后,提示安装了适配Nagios v4.x的模块。按照文档说明,如果需要安装Nagios v3.x 和v2.x的模块,还需要执行make install-3x
和make install-2x
,但是会替代。
本篇博客编译全部模块,然后都拷贝到对应的目录下,在配置文件中指定要采用的模块的绝对路径。
注:在当前解压目录下,无法执行make install-3x,无makefile
截至到这里,NDOUtils已经编译安装完成。
安装database
这一步需要首先创建一个数据库并授权。
本篇略此过程,具体参阅博客《MySQL数据库服务器(YUM)安装.md》,博客园地址:https://www.cnblogs.com/liwanliangblog/p/9194704.html
然后进入到db目录下,执行./installdb
脚本,结果如图
执行make install-init,安装启动脚本
执行make install-inetd,安装超级进程配置文件
这一步需要将5668端口添加至/etc/services,即在/etc/services最后一行添加:
ndo2db 5668/tcp # ndo2db
执行make install-config,安装ndo2db.cfg配置文件
至此,在安装路径/usr/local/globle/softs/monitor/nagios/ndoutils/2.1.3/
下,能看到三个目录,即:
- bin目录,存放ndomod.o,ndo2db,log2ndo,file2sock,sockdebug程序或者库
- etc目录,存放ndo2db.cfg-sample配置模板和ndomod.cfg-sample配置模板
- var目录,可变数据存放目录
4. Nagios配置NDOUtils
4.1 拷贝配置文件
在/usr/local/globle/softs/monitor/nagios/ndoutils/2.1.3/etc/
下,执行cp ndo2db.cfg-sample ndo2db.cfg
和cp ndomod.cfg-sample ndomod.cfg
4.2 Nagios主配置文件修改
修改Nagios主配置文件,如下:
event_broker_options=1
broker_module=/usr/local/globle/softs/monitor/nagios/ndoutils/2.1.3/bin/ndomod-4x.o config_file=/usr/local/globle/softs/monitor/nagios/ndoutils/2.1.3/etc/ ndomod.cfg
4.3 NDO2DB配置文件修改
在/usr/local/globle/softs/monitor/nagios/ndoutils/2.1.3/etc/
下,ndomod.cfg为NDOMOD模块配置文件,该文件不用修改即可使用。修改ndo2db.cfg配置文件内容:
db_user=nagios
db_pass=liwanliang
注:这里的db_user和db_pass是创建nagios数据库时的数据库用户和密码
4.4 启动
因为在configure的过程中,已经指定了NDO2DB采用sysv模式启动进程,因此可以通过service ndo2db start
启动服务
通过ps -ef | grep ndo
,可以查看到进程已经运行启动,通过lsof -p pid
命令,查看到进程打开了sock文件。
注意:此时如果没有重启或者重新加载nagios配置,那么数据库不会存在数据
如果已经重启了nagios,但是通过数据库可视化工具未发现数据更新,可以断开连接,然后重新登陆数据库查看
4.5 查看
4.5.1 数据库查看
通过数据库可视化工具,连接到MySQL查看nagios数据库是否存在数据
确认配置信息,对象配置,报警信息等均能够正常存储
Nagios数据存储插件NDOUtils部署和测试的更多相关文章
- Nagios图像绘制插件PNP4Nagios部署和测试
注:本篇博客Nagios版本Nagios-3.5.1 1. 概述2. 关于PNP4Nagios3. 部署PNP4Nagios3.1 下载PNP4Nagios3.2 编译安装3.3 目录文件说明4. 配 ...
- Ubuntu上更改MySQL数据库数据存储目录
之前写过一篇博客"MySQL更改数据库数据存储目录",当时的测试环境是RHEL和CentOS,谁想最近在Ubuntu下面更改MySQL数据库数据存储目录时遇到了之前未遇到的问题,之 ...
- Web前端数据存储
Cookie 会跟随每次请求附加到请求header上,大小限制4k. 部署对象: document.cookie 构成: Key-Value 有效期:根据expires配置 可选项: ;path=pa ...
- Web自动化框架之五一套完整demo的点点滴滴(excel功能案例参数化+业务功能分层设计+mysql数据存储封装+截图+日志+测试报告+对接缺陷管理系统+自动编译部署环境+自动验证false、error案例)
标题很大,想说的很多,不知道从那开始~~直接步入正题吧 个人也是由于公司的人员的现状和项目的特殊情况,今年年中后开始折腾web自动化这块:整这个原因很简单,就是想能让自己偷点懒.也让减轻一点同事的苦力 ...
- nagios 插件ndoutils 安装配置
nagios 插件ndoutils 安装配置 原文地址:http://www.cnblogs.com/caoguo/p/5022645.html # Nagios install ndoutils # ...
- 无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)
1.android下junit测试框架配置 单元测试需要在手机中进行安装测试 (1).在清单文件中manifest节点下配置如下节点 <instrumentation android:name= ...
- Azure Tips 第一期: Azure 中的安全监视工具,数据存储, 动态数据屏蔽以及资源部署
# 1 Azure 中的安全监视工具 微软 Azure 云提供以下监控工具,可用于观察操作和检测异常行为. Azure 安全中心 Azure 安全中心是一个统一的基础结构安全管理系统,可以增强数据中心 ...
- slurm-16.05.3任务调度系统部署与测试(1)
1.概述2.同步节点时间3.下载并解压文件4.编译安装munge-0.5.125.配置munge6.编译安装slurm-16.05.37.配置slurm8.配置MySQL数据库环境9.启动slur ...
- ubuntu14.04 rabbitmq安装与使用 --修改RabbitMQ数据存储位置
参考:https://blog.csdn.net/tianjiewang/article/details/58383062 说明: ubuntu14.04 rabiitmq 默认 安装路径 /va ...
随机推荐
- Java新建Web应用与配置Tomcat流程
1. 新版本IDEA新建Web应用后没有web.xml文件,需要通过下图方式添加 2. IDEA中的web文件夹相当于eclipse里的WebRoot文件夹,在里面新建WEB-INF文件夹,再创建cl ...
- SQL Server 临时表和表变量系列之选择篇
原文地址:https://yq.aliyun.com/articles/69187 摘要: # 摘要 通过前面的三篇系列文章,我们对临时表和表变量的概念.对比和认知误区已经有了非常全面的认识.其实,我 ...
- linux调度器源码分析 - 概述(一)
本文为原创,转载请注明:http://www.cnblogs.com/tolimit/ 引言 调度器作为操作系统的核心部件,具有非常重要的意义,其随着linux内核的更新也不断进行着更新.本系列文章通 ...
- LDAP Filter用法
#根据Pager过滤域用户 $pagers = gc D:\Operations\tmp\u.txt foreach ($p in $pagers) { $user = Get-ADUser -Fil ...
- C#中类为什么要实例化
在使用C#语言时,发现一下有关类实例化的问题,在此之前先复习一下类和对象的概念,类是一个抽象体,是对一类事物的抽象体:而对象就是一个具体的事物,对象的抽象就是类.车就是一个类,而车包括面包车,小汽车, ...
- tkinter学习系列之(七)Frame与Labelframe 控件
目录 目录 前言 (一)Frame (二)Labelframe 目录 前言 Frame与Labelframe都是容器,用来存放其他控件,也是用来更好的管理布局. 我一般是用来存放一组相关的控件,让Fr ...
- PHP Excel导入数据到MySQL数据库
数据导出已经有了,怎么能没有数据导入呢,同样使用TP5框架,首先需要下载phpexcel.zip,放到第三方类库目录vendor目录下,然后有一个页面可以让你选择要导入的Excel文件,然后点击导入按 ...
- January 26th, 2018 Week 04th Friday
A great forest is set on fire by a small spark. 最小的火能点着最大的树林. It is just a spark, but it is enough t ...
- Unity3D中自带事件函数的执行顺序
在Unity3D脚本中,有几个Unity3D自带的事件函数按照预定的顺序执行作为脚本执行.其执行顺序如下: 编辑器(Editor) Reset:Reset函数被调用来初始化脚本属性当脚本第一次被附到对 ...
- Mac OS X 下优化 Terminal,一篇就够了!
先上最终效果图: 目录 目录 1. 相关工具介绍 2. 配置总览 3. 安装步骤 3.1. 安装 iTerm2 3.2. 安装XCode's Command line tools 3.3. 检查 zs ...