系统管理-扩展模块-Nagios监控集成
Nagios监控集成
| 名称: | itop-nagios-integration |
| 版本: | 1.0.0 |
| 发布日期: | 2016-09-27 |
| 说明: | 集成Nagios页到iTop中,并通过Nagios创建工单 |
| iTop版本要求(最低): | 2.0 |
| 关键词: | [ ttps://]nagios, [ ttps://]monitoring |
| 代码: | itop-config-mgmt |
| 作者: | Combodo |
| 下载: | [ /itop-extensions/itop-nagios-integration-1.0.0-173.zip]itop-extensions/itop-nagios-integration-1.0.0-173.zip |
非常老的扩展,采用过期的技术…
本页描述了两个主题:
- 显示(在一个单独的选项卡“监视”)生产中设备的监控状态(取自外部监控系统,如Nagios, CheckMK, Zabbix, Shinken……)的iTop扩展。
- 一个简单的命令行脚本,通过监控系统在iTop中创建事件工单
显示一个附加的“监控”选项卡,包含一个显示监控系统中的设备状态的IFRAME到(Nagios或其他类似)。这个额外的选项卡自动显示在所有的生产设备上。
版本 | 发布日期 | 备注 |
| 1.0.0 | 2016-09-23 | 第一版 |
限制
由于浏览器的安全规则,以下情况下,监控的内容iframe将不能在iTop中显示:
- 使用HTTPS(安全)连接,而来自监控应用程序的页面则在HTTP协议(非安全),或
- Nagios 网页服务器在DENY or SAMEORIGIN的情况下,HTTP X-Frame-Options头(参阅X帧选项定义获取更多信息)
该集成不关心对监控系统的认证。根据您的监控系统的配置,您可能需要进行身份验证,以便查看“监控”选项卡的内容。
您必须有一个启动和运行的监控系统,提供了一个状态网页,可以通过监控的设备名称(或IP地址)作为URL参数,以一个“直接”的URL访问每个设备。
把下载的.zip文件放到extensions文件夹(检查权限!),并且再次运行安装来选择这个新的扩展安装。
该模块只需要两个参数:nagios_url 和target_classes。
参数 | 类型 | 用法 | 默认值 |
| nagios_url | String | 显示设备nagios状态网页的URL。 在URL中的占位符 $this->name$会被配置项的名称替换。 | cgi-bin/status.cgi?host=$this->name$ |
| target_classes | Array | 显示“监控”选项卡的类列表。 指定类的子类也继承选项卡。 | array('ConnectableCI') |
target_classes必须是FunctionalCI派生的类,因为要根据这个代码查找CI。
以下配置:
'itop-nagios-integration' => (
'nagios_url' => 'cgi-bin/status.cgi?host=$this->name$', ),
'nagios_url' => 'cgi-bin/status.cgi?host=$this->name$', ),
在服务器server4.demo.com的详细页面上,以一个额外的选项卡“监控”的方式,显示地址为
[ /cgi-bin/status.cgi?host=server4.demo.com]c ... st=server4.demo.com的页面。
导航到一个生产(status == production)设备查看设备的详细页中额外的“监控”选项卡。
编辑设备属性时,"监控"选项卡不显示,因为在这个选项卡中没有去修改的内容。
- 在 创建工单脚本中挑选你使用最熟悉的脚本语言,并且在Nagios服务器中安装他的依赖
- 拷贝脚本到Nagios服务器中<你的文件夹>。不要忘记调整权限,以使脚本可以运行 (chmod +x <create-ticket-script>)
- 在Nagios命令文件(大多数情况下,以commands.cfg命名)中,定义一个新的Nagios命令
# Create incident tickets in iTop command definition
define command{ command_name create-iTop-ticket command_line <yourDirectory>/<create-ticket-script> \"$HOSTNAME$\" \"$SERVICEDESC$\" \"$SERVICESTATE$\" \"$SERVICESTATETYPE$\"
define command{ command_name create-iTop-ticket command_line <yourDirectory>/<create-ticket-script> \"$HOSTNAME$\" \"$SERVICEDESC$\" \"$SERVICESTATE$\" \"$SERVICESTATETYPE$\"
}
<your_directory> 是拷贝脚本的目录,并且<create-ticket-script> 是create-ticket.php, create-ticket.py, create-ticket.pl 或者 create-ticket.bash其中一种。
步骤4:在事件处理程序选项中,对于应触发票证创建的每个主机或服务模板,使用以下命令:
大多数情况下,你可以在nagios.cfg中,使用以下选项全局定义所有主机或者服务:
global_host_event_handler=create-iTop-ticket
global_service_event_handler= create-iTop-ticket
global_service_event_handler= create-iTop-ticket
或者对于每个主机或服务使用以下的选项:
event_handler create-iTop-ticket
event_handler_enabled 1
event_handler_enabled 1
如果你选择了后面的选项,将不得不为每个主机和服务模板配置。
完成后,下次在Nagios有一个HARD警告的话,它将自动在iTop中创建一个工单。