利用nagios搭建打印机监控服务器
实验背景:公司有很多台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搭建打印机监控服务器的更多相关文章
- Kafka1 利用虚拟机搭建自己的Kafka集群
前言: 上周末自己学习了一下Kafka,参考网上的文章,学习过程中还是比较顺利的,遇到的一些问题最终也都解决了,现在将学习的过程记录与此,供以后自己查阅,如果能帮助到其他人,自然是更好的. ...
- ZooKeeper1 利用虚拟机搭建自己的ZooKeeper集群
前言: 前段时间自己参考网上的文章,梳理了一下基于分布式环境部署的业务系统在解决数据一致性问题上的方案,其中有一个方案是使用ZooKeeper,加之在大数据处理中,ZooKeeper确实起 ...
- Hadoop4 利用VMware搭建自己的hadoop集群
前言: 前段时间自己学习如何部署伪分布式模式的hadoop环境,之前由于工作比较忙,学习的进度停滞了一段时间,所以今天抽出时间把最近学习的成果和大家分享一下. 本文要介绍的是如 ...
- 利用Hexo搭建个人博客-博客发布篇
通过 <利用Hexo搭建个人博客-环境搭建篇> 以及 <利用Hexo搭建个人博客-博客初始化篇>,我们了解到了利用Hexo搭建个人博客需要的环境以及配置,下面这篇文章将会介绍如 ...
- 利用Hexo搭建个人博客-博客初始化篇
上一篇博文 <利用Hexo搭建个人博客-环境搭建篇> 中,我们讲解了利用Hexo搭建个人博客应该要配置哪些环境.相信大家已经迫不及待的想要知道接下来应该要怎么把自己的博客搭起来了,下面,让 ...
- 利用Hexo搭建个人博客-环境搭建篇
我是一个爱写博客进行总结分享的人.然而,有着热爱写博客并且深知写博客好处的我,却没有好好的把这个习惯坚持下来.如今毕业已经一年多了吧,每一次与师弟师妹们聊天,我总会意味深长的建议他们,一定要定期梳理总 ...
- 利用hexo搭建博客
利用Hexo搭建博客 以前用Octopress搭过博客,折腾了好久才弄出来,当时看到那巨难看的默认主题,繁琐的操作,一点写东西的欲望都没了. 一次逛微博,看见了Hexo.尝试了一下,真的很好用哦. 下 ...
- 利用NTP搭建自己的ntp服务
利用NTP搭建自己的ntp服务 发表于 2013 年 9 月 22 日 作者 admin 对于校园网/企业用户,如果您网内所有计算机都通过互联网同步时间,在速度和精度上都有一定的折扣,并且对互联网出口 ...
- 利用SOLR搭建企业搜索平台 之——MultiCore
Solr Multicore 是 solr 1.3 的新特性.其目是一个solr实例,可以有多个搜索应用. 下面着手来将solr给出的一个example跑出来.这篇文章是基于<利用SOLR搭建企 ...
随机推荐
- jQuery-1.9.1源码分析系列(十六)ajax——ajax处理流程以及核心函数
先来看一看jQuery的ajax核心处理流程($.ajax) a. ajax( [url,] options )执行流程 第一步,为传递的参数做适配.url可以包含在options中 //传递的参数只 ...
- 加入一个线程:join
在启动一个线程之后调用该线程的join()方法,会使该线程先执行,该线程执行完成后,再执行调用该线程的线程. 例如如下的任务: public class LiftOff extends Thread ...
- HTML5 Application cache初探和企业应用启示
Application Cache 在自己做的开源项目( https://github.com/etoah/Lucien ) 用到了HTML5 的Application Cache,现总结如下: 目录 ...
- C#基础知识二之this关键字
this关键字 引用类的当前实例,包括继承而来的方法,通常可以省略. public class Person { public string Name { get; set; } public int ...
- [WCF编程]11.错误:错误类型
一.错误概述 不管是哪一种操作,在任意时刻都可能出现不可预期的错误.问题在于我们应该如何将错误报告给客户端.异常和异常处理机制是与特定技术紧密结合的,不能跨越边界的.此外,如果有客户端来处理错误,必定 ...
- C++_系列自学课程_第_8_课_指针和引用_《C++ Primer 第四版》
C语言最富有迷幻色彩的部分当属指针部分,无论是指针的定义还是指针的意义都可算是C语言中最复杂的内容.指针不但提供给了程序员直接操作硬件部分的操作接口,还提供给了程序员更多灵活的用法.C++继承这一高效 ...
- HDU 5475(2015 ICPC上海站网络赛)--- An easy problem(线段树点修改)
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=5475 Problem Description One day, a useless calculato ...
- JMeter专题系列(三)元件的作用域与执行顺序
1.元件的作用域 JMeter中共有8类可被执行的元件(测试计划与线程组不属于元件),这些元件中,取样器是典型的不与其它元件发生交互作用的元件,逻辑控制器只对其子节点的取样器有效,而其它元件(conf ...
- jquery点击复选框触发事件给input赋值
体验效果:http://keleyi.com/keleyi/phtml/jqtexiao/31.htm 代码如下: <!DOCTYPE html> <html xmlns=" ...
- 使用AngularJS实现简单:全选和取消全选功能
这里用到AngularJS四大特性之二----双向数据绑定 注意:没写一行DOM代码!这就是ng的优点,bootstrap.css为了布局,JS代码也只是简单创建ng模块和ng控制器 效果: < ...