实验背景:公司有很多台HP惠普打印机,管理起来比较麻烦。于是想着能否做个打印机监控服务器,能够快速响应打印机所出现的所有问题。之后上网查了相关资料搭建了一台,使用也没任何问题,于是便拿出来跟大家分享。

实验知识:check_hpjd插件(该命令是Nagios插件软件发行包的标准组成部分)可以用SNMP的方式来监控JetDirect兼容型打印机。该插件可以检查如下打印机状态:卡纸、无纸、打印机离线、需要人工干预、墨盒墨粉低、内存不足、开外壳、输出托盘已满、其他...

实验系统:CentOS 6.6_x86_64

实验前提:防火墙和selinux都关闭

实验说明:本实验共有1台主机,IP分配为192.168.19.79

一、安装nagios

  1.使用yum安装:

yum -y install epel*
yum -y install nagios nagios-plugins-all

  2.如果需要做邮件报警,则修改管理员邮箱(可选):

vim /etc/nagios/objects/contacts.cfg

    

  3.配置web登陆密码:

htpasswd -c /etc/nagios/passwd nagiosadmin

    

  4.启动测试:

chkconfig httpd on
chkconfig nagios on
service httpd start
service nagios start

    现在可以从web方式来接入Nagios了,打开http://192.168.19.79/nagios,输入你的用户名和口令来登陆:

    

二、配置打印机监控:

  1.编辑主配置文件:

vim /etc/nagios/nagios.cfg
--------------------------------------------------------->
cfg_file=/etc/nagios/objects/printer.cfg //将此行注释去掉

  2.编辑printer.cfg:

vim /etc/nagios/objects/printer.cfg
---------------------------------------------------------->
define host{ //定义一个打印机主机,多个打印机就复制此段修改即可
use generic-printer
host_name 31west
alias -WEST
address 192.168.4.62
hostgroups network-printers //加入一个组,方便下面统一配置
} define host{ //定义另一台打印主机
use generic-printer
host_name 31east
alias -EAST
address 192.168.4.61
hostgroups network-printers
} define hostgroup{ //定义一个组
hostgroup_name network-printers
alias Network Printers
members 31east,31west //组成员,这里简单写了两个,要注意名称的对应
} define service{
use generic-service
hostgroup_name network-printers //这个组的成员使用此方法监控
service_description Printer Status
check_command check_hpjd!-C public //用check_hpjd插件来检测打印机状态
     notification_interval   1440 //通知间隔时间,单位是分钟
normal_check_interval 10 //每10分钟检测一次
retry_check_interval 1 //出现问题每隔1分钟检测一次
} define service{
use generic-service
hostgroup_name network-printers
service_description PING
check_command check_ping!3000.0,%!5000.0,% //用ping来探测打印机是否在线
     notification_interval   1440
normal_check_interval
retry_check_interval
}
<----------------------------------------------------------
service nagios restart

  3.利用打印机的web管理接口设定相关阀值:

    

  4.进入web接口查看:

    

    

    如果打印机有问题,就会出现在上面显示列表中,点击即可查看:

    

    

  5.配置邮件发送(可选):

yum -y install sendmail
vim /etc/mail.rc
--------------------------------------------------> //增加如下几行
set from=发邮件的账号 smtp=服务器地址
set smtp-auth-user=邮箱账号 smtp-auth-password=邮箱密码
set smtp-auth=login
-------------------------------------------------->
echo "nagios test mail" | mail -s "nagios" 邮箱地址 //测试能否发送成功,邮箱地址换成自己的

    

    之后,当监控出发报警,便会收到报警邮件啦!

    

  至此,实验演示完毕,谢谢大家!如有问题,请联系QQ:82800452

利用nagios搭建打印机监控服务器的更多相关文章

  1. Kafka1 利用虚拟机搭建自己的Kafka集群

    前言:       上周末自己学习了一下Kafka,参考网上的文章,学习过程中还是比较顺利的,遇到的一些问题最终也都解决了,现在将学习的过程记录与此,供以后自己查阅,如果能帮助到其他人,自然是更好的. ...

  2. ZooKeeper1 利用虚拟机搭建自己的ZooKeeper集群

    前言:       前段时间自己参考网上的文章,梳理了一下基于分布式环境部署的业务系统在解决数据一致性问题上的方案,其中有一个方案是使用ZooKeeper,加之在大数据处理中,ZooKeeper确实起 ...

  3. Hadoop4 利用VMware搭建自己的hadoop集群

    前言:       前段时间自己学习如何部署伪分布式模式的hadoop环境,之前由于工作比较忙,学习的进度停滞了一段时间,所以今天抽出时间把最近学习的成果和大家分享一下.       本文要介绍的是如 ...

  4. 利用Hexo搭建个人博客-博客发布篇

    通过 <利用Hexo搭建个人博客-环境搭建篇> 以及 <利用Hexo搭建个人博客-博客初始化篇>,我们了解到了利用Hexo搭建个人博客需要的环境以及配置,下面这篇文章将会介绍如 ...

  5. 利用Hexo搭建个人博客-博客初始化篇

    上一篇博文 <利用Hexo搭建个人博客-环境搭建篇> 中,我们讲解了利用Hexo搭建个人博客应该要配置哪些环境.相信大家已经迫不及待的想要知道接下来应该要怎么把自己的博客搭起来了,下面,让 ...

  6. 利用Hexo搭建个人博客-环境搭建篇

    我是一个爱写博客进行总结分享的人.然而,有着热爱写博客并且深知写博客好处的我,却没有好好的把这个习惯坚持下来.如今毕业已经一年多了吧,每一次与师弟师妹们聊天,我总会意味深长的建议他们,一定要定期梳理总 ...

  7. 利用hexo搭建博客

    利用Hexo搭建博客 以前用Octopress搭过博客,折腾了好久才弄出来,当时看到那巨难看的默认主题,繁琐的操作,一点写东西的欲望都没了. 一次逛微博,看见了Hexo.尝试了一下,真的很好用哦. 下 ...

  8. 利用NTP搭建自己的ntp服务

    利用NTP搭建自己的ntp服务 发表于 2013 年 9 月 22 日 作者 admin 对于校园网/企业用户,如果您网内所有计算机都通过互联网同步时间,在速度和精度上都有一定的折扣,并且对互联网出口 ...

  9. 利用SOLR搭建企业搜索平台 之——MultiCore

    Solr Multicore 是 solr 1.3 的新特性.其目是一个solr实例,可以有多个搜索应用. 下面着手来将solr给出的一个example跑出来.这篇文章是基于<利用SOLR搭建企 ...

随机推荐

  1. 重新编译jdk源码,启用debug信息

    我有一个不知道是好还是不好的习惯,搞不懂的一些玩意儿,喜欢调试然后单步执行看这玩意儿到底是怎么运行的. 今天看到正则表达式的时候,appendReplacement()这个方法怎么也看不明白它是怎么工 ...

  2. 泛型(Generics)

    Framework类库中的泛型 泛型可以使代码重用,提高开发效率 CLR允许在引用类型.值类型或接口中定义泛型方法: CLR允许创建泛型引用类型.泛型值类型(枚举不允许创建).泛型委托类型和泛型接口类 ...

  3. C#汉字转拼音(支持多音字)

    之前由于项目需要,中间需要一个汉字转拼音和首拼的功能来做查询,感觉这种功能基本已经成熟化了,于是查找了相关的代码,首先引入眼帘的是下面两篇文章 1.C# 汉字转拼音(支持GB2312字符集中所有汉字) ...

  4. ul li设置横排,并除去li前的圆点

    效果预览:http://hovertree.com/texiao/css/ 如何用CSS制作横向菜单 让ul li横向排列及圆点处理 我们先建立一个无序列表,来建立菜单的结构.代码是: <ul& ...

  5. Objective-c的@property(atomic,nonatomic,readonly,readwrite,assign,retain,copy,getter,setter) 属性特性

    assign:指定setter方法用简单的赋值,这是默认操作.你可以对标量类型(如int)使用这个属性.你可以想象一个float,它不是一个对象,所以它不能retain.copy. retain:指定 ...

  6. 修改nginx版本名称伪装任意web server

    如何修改nginx默认的名称,可以稍微的伪装一下,也可以装x 一般来说修改3个位置,一个是nginx.h.另一个是ngx_http_header_filter_module.c.还有一个ngx_htt ...

  7. python学习笔记11 ----网络编程

    网络编程 网络编程需要知道的概念 网络体系结构就是使用这些用不同媒介连接起来的不同设备和网络系统在不同的应用环境下实现互操作性,并满足各种业务需求的一种粘合剂.网络体系结构解决互质性问题彩是分层方法. ...

  8. 软件公司为何要放弃MongoDB?

    本文转至:http://database.51cto.com/art/201503/469510_all.htm(只作转载, 不代表本站和博主同意文中观点或证实文中信息) Olery成立于2010年, ...

  9. ember.js里的实用方法

    一款基于jQuery的插件,以下是关于数组的一些方法 var arr = ['Wang', 'Jason', '444128852@qq.com', 'i2cao.xyz', 'ubuntuvim.x ...

  10. iOS tableView右滑显示选择

    如何使用UITableViewRowAction实现右滑选择呢? 1.在iOS8以前,我们实现tableview中滑动显示删除,置顶,更多等等的按钮时,都需要自己去实现,在iOS8中系统已经写好了,只 ...