Nagios 监控网络打印机

本文档介绍了如何监控联网打印机的状态。特别是具有内部/外部JetDirect卡/设备的HP打印机,或其他支持JetDirect协议的打印服务器(例如Troy PocketPro 100S或Netgear PS101)。

使用check_hpjd插件(是标准Nagios插件发行版的一部分),您可以监控启用了SNMP的支持JetDirect的打印机的状态。该插件能够检测以下打印机状态:

  • 卡纸
  • 没有纸了
  • 离线打印机
  • 需要干预
  • 碳粉不足
  • 内存不足
  • 开门
  • 出纸盘已满
  • 和更多 …

注意:这些说明假定您已根据快速入门指南安装了Nagios 。如果您遵循快速入门,下面的示例配置条目将引用在安装的示例配置文件(commands.cfgtemplates.cfg等)中定义的对象。

总览

监控网络打印机

监控网络打印机的状态非常简单。启用JetDirect的打印机通常已启用SNMP,这使Nagios Core可以使用check_hpjd插件监控其状态。

check_hpjd插件只会被编译和安装,如果您有您的系统上安装了NET-SNMP和NET-SNMP-utils的软件包。在继续之前,请确保插件位于/ usr / local / nagios / libexec中。如果没有,请安装net-snmp和net-snmp-utils并重新编译/重新安装Nagios插件。

步骤

要监控新的网络打印机,您需要执行几个步骤。他们是:

  1. 执行首次前提条件
  2. 创建新的host和服务定义以监控打印机
  3. 重新启动Nagios守护程序

预配置

为了使您的生活更轻松,已经为您完成了一些配置task:

  • 一个check_hpjd命令定义已添加到commands.cfg文件中。这使您可以使用check_hpjd插件监控网络打印机。
  • 已经在templates.cfg文件中创建了打印机host模板(称为通用打印机)。这使您可以通过简单的方式添加新的打印机host定义。

可以在/ usr / local / nagios / etc / objects /目录中找到上述配置文件。您可以根据需要修改这些定义和其他定义中的定义,以更好地满足您的需求。但是,我建议您等到对Nagios Core的配置更加熟悉之后再进行操作。暂时,只需按照以下说明进行操作,您将立即监控网络打印机。

先决条件

首次配置Nagios Core监控网络打印机时,您需要做一些额外的工作。请记住,您只需要对所监控的“第一台”打印机执行此操作。

编辑主要的Nagios配置文件。

vi /usr/local/nagios/etc/nagios.cfg

从主配置文件的以下行中删除前导磅(#)号:

#cfg_file=/usr/local/nagios/etc/objects/printer.cfg

保存文件并退出。

你刚才做了什么?您告诉Nagios查看/usr/local/nagios/etc/objects/printer.cfg来查找其他对象定义。在那里,您将为打印机添加host和服务定义。该配置文件已经包含一些示例host,host组和服务定义。对于您监控的第一台打印机,您可以简单地在该文件中修改示例host和服务定义,而无需创建新的。

配置Nagios Core

您需要创建一些对象定义以监控新打印机。

打开printer.cfg文件进行编辑。

vi /usr/local/nagios/etc/objects/printer.cfg

为您要监控的网络打印机 添加新的host定义。如果这是您要监控的第一台打印机,则只需在printer.cfg中修改样本host定义。将host_namealiasaddress字段更改为打印机的适当值。

define host {
    use         generic-printer     ; Inherit default values from a template
    host_name   hplj2605dn          ; The name we're giving to this printer
    alias       HP LaserJet 2605dn  ; A longer name associated with the printer
    address     192.168.1.30        ; IP address of the printer
    hostgroups  allhosts            ; Host groups this printer is associated with
}

现在,您可以添加一些服务定义(到同一配置文件中)以监控打印机的不同方面。如果这是您要监控的第一台打印机,则只需在printer.cfg中修改样本服务定义。

注意:将以下示例定义中的“ hplj2605dn ”替换为您在刚添加的host定义的host_name指令中指定的名称。

添加以下服务定义以检查打印机的状态。默认情况下,该服务使用check_hpjd插件每10分钟检查一次打印机状态。在此示例中,用于查询打印机的SNMP社区字符串为“ public”。

define service {
    use                     generic-service         ; Inherit values from a template
    host_name               hplj2605dn              ; The name of the host the service is associated with
    service_description     Printer Status          ; The service description
    check_command           check_hpjd!-C public    ; The command used to monitor the service
    normal_check_interval   10                      ; Check the service every 10 minutes under normal conditions
    retry_check_interval    1                       ; Re-check the service every minute until its final/hard state is determined
}

默认情况下,每隔10分钟向ping打印机添加以下服务定义。这对于监控RTA,数据包丢失和常规网络连接很有用。

define service {
    use                     generic-service
    host_name               hplj2605dn
    service_description     PING
    check_command           check_ping!3000.0,80%!5000.0,100%
    normal_check_interval   10
    retry_check_interval    1
}

保存文件。

重新启动Nagios Core

将新的host和服务定义添加到printer.cfg文件后,就可以开始监控打印机了。为此,您需要验证配置重新启动Nagios

如果验证过程中产生任何错误消息,请先修复您的配置文件,然后再继续。确保在验证过程没有任何错误之前,不要(重新)启动Nagios Core!

觉得文章有用?

点个广告表达一下你的爱意吧 !😁