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进行着二次开发,瞧瞧吧,无论选择什么都是要二次的,=。=。

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

意见及建议:ruberzhu@qq.com

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

  1. 20155235 《Java程序设计》 实验二 实验三 敏捷开发与XP实践

    20155235 <Java程序设计> 实验二 实验三 敏捷开发与XP实践 实验内容 XP基础 XP核心实践 相关工具 实验内容 没有Linux基础的同学建议先学习<Linux基础入 ...

  2. Appium移动自动化测试(二)--安装Android开发环境(转)

    Appium移动自动化测试(二)--安装Android开发环境 2015-06-04 17:30 by 虫师, 35299 阅读, 23 评论, 收藏, 编辑 继续Appium环境的搭建. 第二节   ...

  3. (二)Hololens Unity 开发入门 之 Hello HoloLens~

    学习源于官方文档 微软官文~ 笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文 (二)Hololens Unity 开发入门 之 Hello HoloLens~ 本文主要 ...

  4. Android高效率编码-第三方SDK详解系列(二)——Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能

    Android高效率编码-第三方SDK详解系列(二)--Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能 我的本意是第二篇写Mob的shareSD ...

  5. Android应用开发以及设计思想深度剖析

    Android应用开发以及设计思想深度剖析(1) 21cnbao.blog.51cto.com/109393/956049

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

    UI标签库专题二:JEECG智能开发平台Column(列) 子标签  1.1. Column(列) 子标签 1.1.1. 演示样例 <t:dgCol title="年龄" ...

  7. JavaWeb-RESTful(二)_使用SpringMVC开发RESTful_上

    JavaWeb-RESTful(一)_RESTful初认识 传送门 JavaWeb-RESTful(二)_使用SpringMVC开发RESTful_上 传送门 JavaWeb-RESTful(三)_使 ...

  8. WebService学习总结(二)--使用JDK开发WebService

    一.WebService的开发方法 使用java的WebService时可以使用一下两种开发手段 使用jdk开发(1.6及以上版本) 使用CXF框架开发(工作中) 二.使用JDK开发WebServic ...

  9. 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  10. Appium移动自动化测试(二)--安装Android开发环境

    继续Appium环境的搭建. 第二节  安装Android开发环境 如果你的环境是MAC那么可以直接跳过这一节.就像我们在用Selenium进行web自动化测试的时候一样,我们需要一个浏览器来执行测试 ...

随机推荐

  1. LINUX 下Open cv练习使用小记(2)

    第二节记录一下自己学习图像遍历的一点点代码,摘自<opencv2编程手册>(张静译) 第一个代码是最简单的强行修改像素(添加椒盐噪声) #include <opencv2/core/ ...

  2. MyBatis与Spring整合

    1.单独使用MyBatis 单独使用MyBatis,不结合其他框架,主要步骤是: 1.创建SqlSessionFactory对象 创建方法是通过SqlSessionFactoryBuilder这个类从 ...

  3. 网页制作过程中div定位的三个问题

    这几天要做单位的网站,对于做网站我也不怎么样,于是我便在网上参考了一个比较满意的网站,套一下来把这个工作结束了.在此期间遇到了三个关于div定位问题, 一般网站用div布局时都是从上到下分head . ...

  4. linux下网站搭建

    我们知道windows网站搭建一般是:IIS+Asp+Sqlserver,而 linux网站搭建是:Apache+php+Mysql.两者之间个有千秋,但是为什么我们许多的门户网站搭建都选择linux ...

  5. html css javascript 加载的顺序

    html /css /javascript 这三者的加载顺序影响整个页面的加载速度.而加载速度的快慢直接影响pv(访问量),而且会影响经济收入.在大网站中,可能打开速度快一秒,一年能多带来上亿的收入. ...

  6. SIP 解析

    1 general-header类: 为描述消息基本属性的通用头域,可用于请求消息或响应消息:通用头域的域名只有在协议版本改变时才可有效地扩展.不过,通信中的所有方均认为是“通用头域”的新的头域也可认 ...

  7. [转载]tlb、tlh和tli文件的关系

    tlb.tlh和tli文件的关系 tlb文件:com类型库文件.在需要使用对应com类的模块里,“#import ...*.tlb”使用之. tlh.tli文件:他们是vc++编译器解析tlb文件生成 ...

  8. MySQL 基础语句

    MySQL 基础语句 多个知识点 ----------------------------------------------------------------------------------- ...

  9. Centos Cacti 0.8.8g

    一.Cacti简介1. cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户.因 ...

  10. 从request获取远程IP地址

    public static String getIpAddr(HttpServletRequest request) { String ip = request.getHeader("X-F ...