Linux下Nagios的安装与配置
Linux下Nagios的安装与配置
2017-03-23 17:40:20 来源: 点击:0
Nagios是企业普遍使用的最具影响力的网络信息监视系统之一,它可以动态监视指定的网络状态,并在状态异常时发出警告音或邮件报警通知运维人员。监控的类型和警报定时器是完全可定制的。
Nagios的另一强大功能是它能同时监测主机和服务。例如,它可以同时监测到IP地址和TCP/UDP端口号。为进一步阐述此功能,我们假定有台需要监测的web服务器,Nagios可运用在服务器上基于IP/服务器名运行ping命令的方法检测服务器是否在线,同时当服务器的RTT(往返时延)增加时,Nagios会随时告警。另外,Nagios还能检测TCP的80端口(web服务器)是否可达,比如可能出现服务器在线但Apache/IIS没有响应的情况。
而基于Nagios的第三方监测工具如Centreon, FAN , op5 Monitor 在界面设计,自动化运行和技术支持方面在独立的Nagios引擎基础上提供了相应的补充。
本段教程将展示Linux下Nagios的安装与配置.
Debian或Ubuntu下Nagios的安装
Debian系统用户使用apt-get命令就可安装Nagios:
root@mrtg:~# apt-get install nagios3
Nagios安装过程中可以设置邮件服务器,安装后也可以进行自定义设置。
提示:为使Nagios可正常发送邮件通知,需正确配置SMTP。
可以看到Nagios支持多种邮件传送方式。最常见的莫过于服务器(Internet Site)直接向接收者发送邮件,另一种常见的形式是用智能主机或中继服务器,将邮件传送至中继邮件服务器,然后它负责将邮件传送给接收者。
进行下一步操作时服务器的域名需要包含进去。
最后,设置一下Nagios管理员‘nagiosadmin’的密码,用户可以之后自行修改密码。
CentOS或RHEL下Nagios的安装
使用yum命令来安装,建立repoforge库之后运行如下yum命令:
[root@mrtg ~]# yum install nagios nagios-plugins
监测需求
本段教程中,我们希望完成以下监测内容:
每三分钟监测一次所有Linux服务器。
每三分钟监测一次所有思科路由器。
所有的邮件告警集中发送至sentinel@example.tst。
发出告警前Nagios都将进行3次验证以确保问题确有发生。
当设备的往返时延超过100ms并且/或包丢失量超过20%将发出邮件告警。
余下的教程将指导您如何在Linux系统中配置Nagios。
Ubuntu下Nagios的配置
明确Nagios配置文件的地址至关重要,以下路径指明了Debian系统下Nagios的配置文件地址。
/etc/nagios-plugins 实现监测功能的专有脚本存放地址/etc/nagios3 添加主机、服务,定义检测和定时器的配置文件/usr/lib/nagios/plugins 用于监测的可执行文件
接下来的步骤相互关联,由此开始定义主机,主机组及向主机组添加服务操作。
添加主机模板
我们对同一类型的主机定义了对应的模板,这里使用安装文件作举例说明。
首先,为Linux设备定义主机模板。
root@mrtg:~# cd /etc/nagios3/conf.droot@mrtg:/etc/nagios3/conf.d/# cp generic-host_nagios2.cfg linux-server.cfg
如下编辑linux-server.cfg。需要修改部分已经标出。
root@mrtg:/etc/nagios3/conf.d/# vim linux-server.cfg
-
define host{name linux-server ; 名称,需修改notifications_enabled 1 event_handler_enabled 1 flap_detection_enabled 1 failure_prediction_enabled 1 process_perf_data 1 retain_status_information 1 retain_nonstatus_information 1 check_command example-host-check ; 检查所用脚本,需修改check_interval 3 ; 连续检查的间隔,需修改max_check_attempts 3 ; 产生邮件告警前的自检次数,需修改notification_interval 0notification_period 24x7notification_options d,u,rcontact_groups admins ; 邮件将要发送至的组,需修改register0}
接下来,为Cisco设备定义主机模板。
root@mrtg:/etc/nagios3/conf.d/# cp linux-server.cfg cisco-device.cfg
如下修改cisco-device.cfg。需要修改部分已经标出。
root@mrtg:/etc/nagios3/conf.d/# vim cisco-device.cfg
-
define host{name cisco-device ;名称,需修改notifications_enabled 1 event_handler_enabled 1 flap_detection_enabled 1 failure_prediction_enabled 1 process_perf_data 1 retain_status_information 1 retain_nonstatus_information 1 check_command example-host-check ; 检查时使用的脚本,需修改check_interval 3 ; 连续检查间隔,需修改max_check_attempts 3 ; 产生邮件告警前的自检次数,需修改notification_interval 0notification_period 24x7 notification_options d,u,rcontact_groups admins ; 邮件将要发至的组,需修改register 0 }
添加主机
现在已定义主机模板,就可以添加需要监测的主机。以默认的文件作例子展示如下内容。
root@mrtg:/etc/nagios3/conf.d/# cp localhost_nagios2.cfg example.cfgroot@mrtg:/etc/nagios3/conf.d/# vim example.cfg
-
# Host 1define host{use linux-server ; 使用的主机模板名host_name our-server ; nagios使用的主机名alias our-serveraddress 172.17.1.23 ; 主机的IP地址} # Host 2define host{use cisco-device ; 使用的主机模板名host_name our-router ; nagios使用的主机名alias our-routeraddress 172.17.1.1 ; 主机的IP地址}
主机组定义
当有多个主机时,为方便管理,建议将相似的主机组成一组。
root@mrtg:/etc/nagios3/conf.d/# vim hostgroups_nagios2.cfg
-
define hostgroup {hostgroup_name linux-server ; 主机组名alias Linux Serversmembers our-server ; 组员列表} define hostgroup {hostgroup_name cisco-device ; 主机组名alias Cisco Devicesmembers our-server ; comma separated list of members}
定义服务
首先,定义一个服务example-host-check:当往返时延达到100ms预警值并且有20%包丢失时发出警告,而紧急告警设置为5000ms且包丢失比率为100%,只执行一个IPv4的ping请求检测。
root@mrtg:~# vim /etc/nagios-plugins/config/ping.cfg
-
define command{ command_name example-host-check command_line /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w 100,20% -c 5000,100% -p 1 -4}
然后,将命令关联至主机组。
root@mrtg:/etc/nagios3/conf.d/# vim services_nagios2.cfg
-
define service {hostgroup_name linux-serverservice_description Linux Serverscheck_command example-host-checkuse generic-servicenotification_interval 0 ; 初始化设置为0} define service {hostgroup_name cisco-deviceservice_description Cisco Devicescheck_command example-host-checkuse generic-servicenotification_interval 0 ; 初始化设置为0}
联系人定义
root@mrtg:/etc/nagios3/conf.d/# vim contacts.cfg
define contact{contact_name rootalias Rootservice_notification_period 24x7host_notification_period 24x7service_notification_options w,u,c,rhost_notification_options d,rservice_notification_commands notify-service-by-emailhost_notification_commands notify-host-by-emailemail root@localhost, sentinel@example.tst}
最后,试运行初始化检测是否有配置错误。如果没有错误,Nagios开始安全运行。
root@mrtg:~# nagios -v /etc/nagios3/nagios.cfgroot@mrtg:~# service nagios3 restart
转载于:https://blog.51cto.com/163572/1909902
Linux下Nagios的安装与配置相关推荐
- Centos 7下Nagios的安装及配置(完整版)
Centos 7下Nagios的安装及配置(完整版) 简介 Nagios 是一款自动化运维工具,可以协助运维人员监控服务器的运行状况,并且拥有报警功能.本文章将介绍其安装方法和详细的配置方法. nag ...
- Linux下samba的安装与配置
physique 博客园 首页 新随笔 联系 管理 订阅 随笔- 203 文章- 0 评论- 33 Linux下samba的安装与配置 转载来源:http://blog.chinaunix.net ...
- linux下jdk的安装与配置jdk-6u45-linux-i586.bin
linux下jdk的安装与配置 一.安装JDK从sun网站上直接下载JDK:http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45- ...
- linux 安装cvs,linux下cvs详细安装和配置.docx
Linux 下cvs详细安装和配置 2009-03-18 14:37:12 标签:[推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始岀处 作者信息和本声明.否则将追究 ...
- linux mrtg 安装,17.1.2 Linux下MRTG的安装与配置
17.1.2 Linux下MRTG的安装与配置 MRTG通过SNMP从设备中得到使用设备(如交换机)的网络流量信息,并把PNG格式图形以HTML方式显示出来,便于网络管理员对所监控设备(交换机)进行 ...
- Linux下Tomcat的安装与配置
本篇文章主要对如何在Linux下安装与配置Tomcat进行介绍. 如果想要了解Windows下Tomcat的安装与配置,请参考文章: https://blog.csdn.net ...
- Linux下EPICS的安装与配置——CSS安装与配置
本文继"Linux系统下EPICS的安装与配置"文章后,给出了客户端CSS新版本Phoebus的安装与配置. Phoebus是一个框架和一系列工具,用于监视和操作大型控制系统,例如 ...
- linux下Mysql 的安装、配置、数据导入导出
为什么80%的码农都做不了架构师?>>> <p><span>MySQL</span><span>是一种</span> ...
- linux下postgresql服务,Linux下PostgreSQL数据库安装、配置与日常服务管理
1. 数据库安装与配置步骤 安装环境准备 操作系统: Oracle Linux Server 6.5 IP 地址: 192.168.6.177 版本信息: MySQL Community Server ...
最新文章
- 040_CSS3背景
- WCF学习笔记之可靠会话
- 信息学奥赛一本通(C++)在线评测系统——基础(一)C++语言——1080:余数相同问题
- C++——多态实现原理分析
- xlsxwriter写行合并_使用实现XlsxWriter创建Excel文件并编辑
- MySql(四):备份与恢复
- mouseover 和 hover 方法
- 数据--第23课 - 队列的优化实现
- jtds 连接mysql_JAVA 使用jtds 连接sql server数据库
- corutine rust_rust 异步 IO:从 mio 到 coroutine
- 十大保养方法让你对汽车保养更加得心应手
- 企业vi标志设计中文字设计的方法
- android仿QQ优雅的修改App字体大小
- Java debugger模式调试
- 18. SPI协议,spi转can,MCP2515裸机驱动详解
- c语言scanf(%d%d,ab)解释与EOF的使用
- 互联网故事:从瞧不上到暗暗惊讶,一套商城竞拍系统的开发设计之路!
- 16级C++第三次上机解题报告
- 随机生成姓名和电话号
- 汉字点阵与图形点阵提取方法及在LCD图形点阵液晶屏显示
热门文章
- JS中的!=、== 、!==、===的用法和区别。
- python 函数参数传递 格式_Python学习6.1_函数参数及参数传递
- 2021年春季学期-信号与系统-第十五次作业参考答案-第三小题参考答案
- 2021年春季学期-信号与系统-第十五次作业参考答案-第二小题参考答案
- 如何自行绕制所需要的2.2uH的电感?
- LED,硅光电池的光能-电能转换是可逆的吗?
- 使用AD5933分析复阻抗的时钟频率设置
- 傅里叶,请再帮我们一次吧....
- each 数据获取attr_调用高德POI数据,带你玩转长沙
- linux telnet远程登录工具,Linux 远程登录(telnet ssh)