nagios二次开发(一)---开发思想

NAGIOS现状

 

从nagios的官网http://www.nagios.org/及其它已经公开的资料,我们可以知道:在web UI层nagios只提供了给我们查看图形界面的操作,界面上有简单的启停服务检查及通知的操作。后台的操作,如host增删改查、hostgroup增删改查等操作完全是依赖于server端对服务器目录中配置文件的更改来进行。这样做的好处是,系统管理员可以通过脚本批量的导入所需要的数据。而带来的麻烦就是,无图形化,操作繁琐,无配置文件使用基础的管理员,很难去配置好监控信息。更大的问题是:对nagios系统配置的权限无法进行有效的限制。因为nagios的UI层的权限控制是通过apache的权限模块来进行的。种种弊端我们都懂得!

图1.1为当前nagios的UI界面(截图来自官网):

 

NAGIOSQL现状

 

当我们发现开源项目nagiosql(http://www.nagiosql.org/)存在时,我们终于祈祷,nagios的春天来了!nagiosql为nagios提供了强大的后台配置的支持,完全解决了nagios无UI配置界面的问题。但是它无法解决nagios完全依赖于配置文件.cfg进行配置的事实。即使后来的后来出现的NDOUTILS也无法直接解决这个问题。因为NDOUTILS只是把nagios的配置及监控结果放到了数据库中而已。目前我所了解到的一个能用到NDOUTILS的产物mysql数据库中的数据的一个项目已经在google开源项目中停滞n多年了,后续我会简要的介绍下这个项目。Nagiosql目前的存的问题是,配置项n多,上手需要些时日才会把它的用法及与nagios的关系滤清。且最重要的问题就是,它是和nagios相独立的一个项目,目前来看只是有几毛关系而已,既然不是一个项目,那它的问题就是,它只会提供后台nagios配置服务。那现在的问题来了,我们配置后台数据的时候需要在nagiosql上配置,但是查看监控数据的时候却需要跳到nagios上去看,而他们却没有统一的认证及权限控制机制。

图1.2为当前nagiosQL的UI界面:

二次开发思想

针对以上的问题(前后台分离,无统一的权限控制)。我们想到了针对nagios+nagiosql进行二次开发,以满足两者的先天不足以及按我们目前的业务要求进行的定制化开发。我这里只讨论UI层面的开发问题,不会涉级nagios的服务监控机制,因为那个太高深了,一时玩不转。如果真正有需要的话,我建议你花点钱去买个它的商业版。也许此时有些朋友会说,不是有很久之前的centreon和当前强大的zabbix吗,为什么不用它们。那么我要谢谢你的提醒,对于centreon我确实不太了解,如果你想了解的话去这里(http://assets.nagios.com/datasheets/compare/How_Nagios_Compares_To_Centreon.pdf)。至于zabbix,昨天确实才查它的资料,感觉不错,功能震撼。但是我们对它还不太了解。所以暂时未考虑。末来是有可能的,但是目前据我所知,也有部分人也在对zabbix进行着二次开发,瞧瞧吧,无论选择什么都是要二次的,=。=。

请朋友们转载时注明出处,因为我是为了更好的方便大家来和我讨论。谢谢了。

意见及建议:[email protected]

时间: 2024-10-03 14:41:52

nagios二次开发(一)---开发思想的相关文章

UI标签库专题二:JEECG智能开发平台Column(列) 子标签

 1.1. Column(列) 子标签 1.1.1. 示例 <t:dgCol title="年龄" field="age" query="true" extend="{data-options:{required:false,groupSeparator:\"','\"},class:{value:'easyui-numberbox'}}"></t:dgCol> 1.1.2. 参

IOS开发创建开发证书及发布App应用(二)——创建证书

源于:http://www.jkqnb.com/ydkf/article/27 预览图 2. 创建证书 证书分为两种, 一种是开发者证书,主要是用来真机调试的 另一种就是发布证书,就是用来发布应用的, 最好是两种都要下载,不然编译时候可能报错,我猜想可能苹果怕你没用真机调试 创建证书分为两个步骤: 在苹果电脑生成证书签名公钥 提交证书公钥文件到开发者网站 1)  创建开发者证书  1.生成证书签名公钥 在有Mac OS X的操作系统中打开"应用程序" -- "实用工具&quo

二码系统公益开发

二码公益系统开发,二码公益模式开发找何经理.移动端产品开发来说,最重要的就是最后的下单率,不管是京东淘宝的实体商品还是美团.糯米提供的虚拟团购服务或者是饿了么.美团外卖提供的外卖服务,最重要的就是最后的下单成功率,在这之前的尽量不要打断用户的使用流程.一个平台模式固然重要,用户体验也不可忽略.更多的就是题外话了,下面为你简单地介绍一下二码公益系统的模式制度. 二码公益模式开发(系统可定制)--何经理 二码公益系统这种商业模式,一种O2O模式,也是当下消费者商家乃至国家上级都比较倡导的创新经济模式

二码公益系统开发二码公益详解

二码公益开发,二码公益系统开发(苏念.188.1414.7927)二码公益平台开发 二码公益制度开发 二码公益项目开发 二码公益app开发 开发二码公益一公益,从人性角度思考,信息是人类获取互联网的最基本的需求,也就是类比食欲.社交对于人类来说属于第二个需求,所谓温饱思社交就是这个意思,因此社交网络是类比.合作是一种精神属性的行为,标志着人类进入了文明时代,因此子超把合作类比精神的层面.任何一个互联网产品的发展趋势都是先满足食欲,最后是精神的层面,我们判断未来的趋势也是可以这样类比判断的. 那么

十二、Android UI开发专题(转)

http://dev.10086.cn/cmdn/bbs/viewthread.php?tid=18736&page=1#pid89255Android UI开发专题(一) 之界面设计 近期很多网友对Android用户界面的设计表示很感兴趣,对于Android UI开发自绘控件和游戏制作而言掌握好绘图基础是必不可少的.本次专题分10节来讲述,有关OpenGL ES相关的可能将放到以后再透露.本次主要涉及以下四个包的相关内容: android.content.res 资源类 android.gra

QT开发(二十三)——软件开发流程

QT开发(二十三)--软件开发流程 一.软件开发流程简介 软件开发流程是通过一系列步骤保证软件产品的顺利完成,是软件产品在生命周期内的管理学. 软件开发流程的本质是软件开发流程与具体技术无关,是开发团队必须遵守开的规则. 二.常见软件开发流程模型 常见的软件开发流程模型包括即兴模型.瀑布模型.增量模型.螺旋模型.敏捷模型. 1.即兴模型 即兴模型的特点: A.与用户交流后立即进行开发 B.没有需求分析和需求发掘过程 C.没有整体设计和规划 D.没有软件文档,可维护性差 2.瀑布模型 瀑布模型的特

ubuntu下进行android的开发(二):android开发环境搭建

android开发环境搭建主要分两个步骤:安装JDK及安装集成开发环境. 一.安装JDK ubuntu系统自带的有openJDK,要开发android还是需要去官网下载JDK(1.6以上).当前系统JDK版本可以通过java -version指令来查看. 到oracle官网http://www.oracle.com/technetwork/java/javase/downloads/index.html下载最新的JAVA SE开发环境(JDK),我这里下载的是jdk-8u11-linux-x64

二码公益软件开发app分析

二码公益软件开发app分析 王泽:151.1222.4001(微信同步)二码公益系统软件开发,二码公益app模式开发,二码公益平台开发,二码公益全返模式,二码公益商家让利平台,二码公益消费返利平台.非平台客服,玩家勿扰!!!灵猴欢腾辞旧去,金鸡报春迎新来.1月11日下午,二码公益山东商家联谊会暨年货大集,在青岛海鲜巨无霸怡情楼隆重举行.作为二码公益联盟商家的首批商户,里白黑蒜参与了活动并给予了赞助.本次年货大集是二码公益举办的第一次,现场气氛火爆,里白黑蒜更是得到广大消费者的喜爱. 你问我为什么

二码公益系统开发分析——互联网+公益+商业到底怎么做?

二码公益开发,二码公益系统开发(苏念.188.1414.7927)二码公益模式开发,一点公益模式开发,二码公益平台开发,开发二码公益模式系统,开发二码公益app,互联网技术不仅能吸引公众参与,也可以帮助公益组织提高运作效率.目前,公益组织面临无法找到募捐对象的困境.近年来,互联网公司都设立了企业社会责任部门,致力于用自身的平台和技术帮助公益组织提高运作能力. 以百度公司为例,百度每天处理50亿次用户真实搜索,基于这些用户真实的大数据,百度可以为用户贴标签并分析人物的属性,例如,百度可以通过个人日

Exynos4412 IIC总线驱动开发(二)—— IIC 驱动开发

前面在Exynos4412 IIC总线驱动开发(一)-- IIC 基础概念及驱动架构分析 中学习了IIC驱动的架构,下面进入我们的驱动开发过程 首先看一张代码层次图,有助于我们的理解 上面这些代码的展示是告诉我们:linux内核和芯片提供商为我们的的驱动程序提供了 i2c驱动的框架,以及框架底层与硬件相关的代码的实现.  剩下的就是针对挂载在i2c两线上的i2c设备了device,而编写的即具体设备驱动了,这里的设备就是硬件接口外挂载的设备,而非硬件接口本身(soc硬件接口本身的驱动可以理解为总