20309 发表于 2019-1-12 12:37:56

Nagios监控打印机

  Nagios以为其良好的状态检测机制,使Nagios可以利用在不同平台上的不同插件实现监控,当然它也支持使用SNMP协议(简单网络管理协议)实现各个平台和设备的监控,所以Nagios也可以使用SNMP协议来监控局域网内的打印机,Nagios监控打印机是使用check_hpjd工具调用SNMP协议来监控打印机的,在安装好的Nagios中的libexec插件目录下可能没有,是因为服务器上没有安装SNMP协议相关的依赖包net-snmp和net-snmp-utils,所以可以直接用yum或者是apt安装下,再重新编译下nagios-plugins,有一点像Nagios没有安装MySQL时没有check_mysql一样,操作如下:

# yum -y install net-snmp net-snmp-utils
# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
# make && make install  此时再看libexec插件目录下就有check_hpjd插件,打印机的监控方式有点类似于Nagios监控Windows上的NSClient++,可以参看http://jim123.blog.运维网.com/4763600/1956790,在Nagios配置好后就有打印的配置模板,同NSClient++中一样修改下模板:
/usr/local/nagios/etc/objects/printer.cfg
define hostgroup{
      hostgroup_namenetwork-printers
      alias         Network Printers
      }
########################################################################################      
/usr/local/nagios/etc/servers/192.168.1.254.cfg
define host{
      use             generic-printer         ; Inherit default values from a template
      host_name       hplj200               ; The name we're giving to this printer
      alias         HP LaserJet 200dn       ; A longer name associated with the printer
      address         192.168.1.254         ; IP address of the printer
      hostgroups      network-printers      ; Host groups this printer is associated with
      contact_groupsadmins
      }
define service{
      use                     generic-service         ; Inherit values from a template
      host_name               hplj200               ; 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
      check_interval10      ; Check the service every 10 minutes under normal conditions
      retry_interval1       ; Re-check the service every minute until its final/hard state is determined
      max_check_attempts      2
      notifications_enabled   1
      }
define service{
      use                     generic-service
      host_name               hplj200
      service_description   PING
      check_command         check_ping!3000.0,80%!5000.0,100%
      check_interval10
      retry_interval1
      max_check_attempts      2
      notifications_enabled   1
      }  当然如果是多台的话,也可以配置成通用模板,然后根据定义好的cfg_dir去配置多个文件:
/usr/local/nagios/etc/objects/printer.cfg
define host{
      name                  network-printers
      check_period            24x7            
      check_interval          5            
      retry_interval          1         
      max_check_attempts      4            
      check_command         check-host-alive      
      notification_period   24x7         
      notification_interval   30            
      notification_options    d,r            
      contact_groups          admins         
      register                0            
      }
define service{
      name                            network-printers               
      max_check_attempts            4                     
      normal_check_interval         3                     
      retry_check_interval            1                     
      register                        0   
      check_period                  24x7
      process_perf_data               1         
      }  配置好后重启Nagios后就可以实现打印机的监控https://s4.运维网.com/wyfs02/M01/00/0F/wKiom1mVZoyi4kMqAAAau-PMe94393.png-wh_500x0-wm_3-wmp_4-s_483796998.png

  如果是不知道局域网内有多少台打印机,则可以通过nmap扫描一下局域内的9100端口就知道
# nmap -p 515 --open 192.168.1.0/24  




页: [1]
查看完整版本: Nagios监控打印机