设为首页 收藏本站
查看: 1452|回复: 1

Nagios 监控

[复制链接]

尚未签到

发表于 2017-11-27 16:15:57 | 显示全部楼层 |阅读模式
                                                Nagios  监控
一、 Nagios 简介..............................................................................................................................2
1.1 什么是 Nagios.....................................................................................................................2
1.2Nagios 主要功能................................................................................................................2
二、Nagios 工作原理........................................................................................................................3
三、实验环境.....................................................................................................................................5
四、 Nagios 安装..............................................................................................................................5
4.1安装依赖组件.....................................................................................................................5
4.2创建 Nagios 账户和组.......................................................................................................5
4.3 编译安装Nagios.................................................................................................................6
4.4 安装nagios-plugins 插件................................................................................................7
4.5设置登录密码及开机自启.................................................................................................8
4.6访问测试.............................................................................................................................8
五、Nagios 配置................................................................................................................................9
5.1nagios 配置文件简介........................................................................................................9
5.2nagios 配置文件之间的关系..........................................................................................10
5.3nagios.cfg 文件介绍......................................................................................................11
5.4resource.cfg 文件介绍..................................................................................................12
5.4.1 宏的工作机制........................................................................................................12
5.4.2 宏的分类................................................................................................................12
5.5templates.cfg 文件介绍................................................................................................15
5.6timeperiod.cfg 文件介绍..............................................................................................15
5.7contacts.cfg 文件介绍..................................................................................................16
六、 Nrpe 安装及配置....................................................................................................................17
6.1什么是 nrpe......................................................................................................................17
6.2安装 nrpe..........................................................................................................................17
6.3配置 nrpe..........................................................................................................................18
七、监控主机...................................................................................................................................19
7.1监控 linux 主机...............................................................................................................19
7.2监控 windows主机...........................................................................................................24
7.3测试监控项目...................................................................................................................27
八、监控告警...................................................................................................................................28
8.1 邮件告警............................................................................................................................28
8.1.1 安装邮件服务.......................................................................................................28
8.1.2 告警功能配置.......................................................................................................28
8.2iyunv 平台综合告警..................................................................................................29
一、s Nagios  简介
1 1.1  什么是  Nagios
Nagios是一款开源的电脑系统和网络监视工具,能有效监控 Windows、Linux
和Unix的主机状态,交换机路由器等网络设置,打印机等。在系统或服务状态
异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常
的邮件或短信通知。
2 1.2 s Nagios  主要功能
  • 网络服务监控(SMTP、POP3、HTTP、NNTP、ICMP、SNMP、FTP、SSH)
  • 主机资源监控(CPU load、disk usage、system logs),也包括 Windows 主
    机(使用 NSClient++ plugin)
  • 可以指定自己编写的 Plugin 通过网络收集数据来监控任何情况(温度、警
    告……)
  • 可以通过配置 Nagios 远程执行插件远程执行脚本
  • 远程监控支持 SSH 或 SSL 加通道方式进行监控
  • 简单的 plugin 设计允许用户很容易的开发自己需要的检查服务,支持很多
    开发语言(shell scripts、C++、Perl、ruby、Python、PHP、C#等)
  • 包含很多图形化数据 Plugins(Nagiosgraph、Nagiosgrapher、PNP4Nagios)
  • 能够定义网络主机的层次,允许逐级检查,就是从父主机开始向下检查
  • 当服务或主机出现问题时发出通告,可通过 email, pager, sms 或任意用户
    自定义的 plugin 进行通知
  • 能够自定义事件处理机制重新激活出问题的服务或主机
  • 自动日志循环
  • 支持冗余监控
  • 可并行服务检查
  • 包括 Web 界面可以查看当前网络状态,通知,问题历史,日志文件等
    二、 Nagios  工作原理
    Nagios的功能是监控服务和主机,但是他自身并不包括这部分功能,所有
    的监控、检测功能都是通过各种插件来完成的。
    启动Nagios 后,它会周期性的自动调用插件去检测服务器状态,同时 Nagios
    会维持一个队列,所有插件返回来的状态信息都进入队列,Nagios每次都从队
    首开始读取信息,并进行处理后,把状态结果通过web显示出来。
    Nagios提供了许多插件,利用这些插件可以方便的监控很多服务状态。安
    装完成后,在nagios主目录下的/libexec里放有nagios自带的可以使用的所
    有插件,如,check_disk是检查磁盘空间的插件,check_load是检查CPU负载
    的,等等。每一个插件可以通过运行./check_xxx –h 来查看其使用方法和功能。
    Nagios可以识别4种状态返回信息,即0(OK)表示状态正常/绿色、
    1(WARNING)表示出现警告/×××、2(CRITICAL)表示出现非常严重的错误/红色、
    3(UNKNOWN)表示未知错误/深×××。Nagios 根据插件返回来的值,来判断监控对象的状态,并通过web显示出来,以供管理员及时发现故障。
    watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
    再说报警功能,如果监控系统发现问题不能报警那就没有意义了,所以报警
    也是nagios很重要的功能之一。但是,同样的,Nagios 自身也没有报警部分的
    代码,甚至没有插件,而是交给用户或者其他相关开源项目组去完成的。
    Nagios安装,是指基本平台,也就是 Nagios 软件包的安装。它是监控体系
    的框架,也是所有监控的基础。
    Nagios基本上没有什么依赖包,只要求系统是 Linux 或者其他 Nagios 支持
    的系统。不过如果你没有安装apache,那么你就没有那么直观的界面来查看监
    控信息了,所以apache姑且算是一个前提条件。
    Nagios 系统提供了一个插件 NRPE。Nagios 通过周期性的运行它来获得远
    端服务器的各种状态信息。它们之间的关系如下图所示:
    watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
    Nagios通过NRPE来远端管理服务
  • Nagios 执行安装在它里面的 check_nrpe 插件,并告诉 check_nrpe 去
    检测哪些服务。
  • 通过 SSL,check_nrpe 连接远端机子上的 NRPE daemon
  • NRPE 运行本地的各种插件去检测本地的服务和状态
    (check_disk,..etc)
  • 最后,NRPE 把检测的结果传给主机端的 check_nrpe,check_nrpe 再把
    结果送到 Nagios 状态队列中。
  • Nagios 依次读取队列中的信息,再把结果显示出来。
    其中交换机、打印机设备只能通过客户端开启SNMP协议进行监控,windows系
    统有提供NSClient客户端软件,更方便于执行监控、检测。
    三、实验环境
    watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
Server安装了nagios软件,对监控的数据做处理,并且提供 web 界面查看
和管理。当然也可以对本机自身的信息进行监控。
Client安装了NRPE等客户端,根据监控机的请求执行监控,然后将结果回
传给监控机。
防火墙已关闭/iptables:Firewallisnotrunning.
SELINUX=disabled
四、s Nagios  安装
4.1  安装依赖组件
基础支持套件:gccglibcglibc-commongdgd-develxinetdopenssl-devel
httpdphp(想监控mysql也可加上mysql-devel)
yum install -y gcc glibc glibc-common gd gd-develxinetd openssl-devel 4.2  创建 s Nagios  账户和组
#useradd-mnagios
#groupaddnagcmd
#usermod-a-Gnagcmdnagios
#usermod-a-Gnagcmdapache
4.3  编译安装  Nagios
下载链接:https://www.nagios.org/downloads/
#tar-xfnagios-4.2.4.tar.gz
#cdnagios-4.2.4
#./configureprefix=/usr/local/nagios--with-command-group=nagcmd
--with-nagios-user=nagios--with-nagios-group=nagios
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
#makeall (执行完后最终会出现Enjoy.)
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
#makeinstall
#makeinstall-init (生成init启动脚本)
#makeinstall-config (生成一些模板配置文件)
#makeinstall-commandmode(设置相应的权限)
#makeinstall-webconf (生成Apache配置文件nagios.conf)
4.4  安装  nagios-plugins s  插件
#tarzxvfnagios-plugins-2.1.14.tar.gz
#cdnagios-plugins-2.1.14
#./configure--prefix=/usr/local/nagios--with-nagios-user=nagios
--with-nagios-group=nagios --with-apt-get-command --with-ping6-command
--with-ping-command--with-mysql
#make
#makeinstall
此时完成初步安装,可以监控查看本机的一些服务,检测配置文件并启动 nagios
#/usr/local/nagios/bin/nagios-v/usr/local/nagios/etc/nagios.cfg
Errors0检测错误为0表明配置文件没有错误,可以启动nagios和apache
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
4.5  设置 登录 密码 及开机自启
#htpasswd-c/usr/local/nagios/etc/htpasswd.usersnagiosadmin
#chkconfig--addnagios
#chkconfignagioson
#chkconfig--listnagios
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
4.6  访问测试
启动nagios和apache服务
#servicenagiosstart
#servicehttpdstart
浏览器输入http://IP/nagios/
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
五、s Nagios  配置
1 5.1 s nagios  配置文件简介
查看nagios的配置文件,如下:
#cd/usr/local/nagios/
#tree-L2./etc/
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
通过上图,我们可以很明显的看到所有的配置文件。下面来介绍每个配置文件具
体作用。如下:
cgi.cfg用于控制CGI访问的配置文件。
htpasswd.users用于存放nagios管理员用户名和密码的文件。
nagios.cfg是nagios主配置文件,所有的 cfg 配置文件(外部调用除外)必须
都在此文件中引用cfg配置文件才能生效。
resource.cfg 变量定义文件,又称为资源文件。该文件中定义的变量,可以被
其他配置文件引用,如$USER1$。
objects是一个目录,此目录下的文件主要用于定义nagios的监控对象。
commands.cfg是nagios监控命令的定义文件,其中定义的命令可以被其他配置
文件引用。
contacts.cfg是定义nagios监控对象出现故障时,通知的联系人和联系人组的
配置文件。
localhost.cfg是定义监控本地主机的配置文件。
templates.cfg是定义主机和服务的一个模板配置文件。
timeperiods.cfg是定义nagios监控时间段的配置文件。

5.2 s nagios  配置文件之间的关系
在 nagios 的配置过程中涉及到定义有:主机、主机组,服务、服务组,联
系人、联系人组,监控时间,监控命令等。从这些定义可以看出,nagios各个
配置文件之间是互为关联、彼此引用的。
要成功配置出一台 nagios 监控系统,必须要弄清楚各个配置文件之间依赖
与被依赖的关系,最重要的有四点:
第一:定义监控哪些主机、主机组、服务和服务组。
第二:定义这个监控要用什么命令实现。
第三:定义监控的时间段。
第四:定义主机或服务出现问题时要通知的联系人和联系人组。
5.3 g nagios.cfg  文件介绍
nagios.cfg 是主配置文件,默认路径/usr/local/nagios/etc/nagios.cfg。
所有的对象配置文件都必须在这个文件中进行定义才能发挥其作用,这里只需将
对象配置文件在nagios.cfg文件中引用即可。
nagios.cfg配置文件的内容比较多,我们在此只介绍比较重要的部分。
查看nagios.cfg文件内容,如下
#egrep-v"^#|^$"nagios.cfg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
log_file=/usr/local/nagios/var/nagios.log用于定义nagios在何处创建其
日志文件。
cfg_file=/usr/local/nagios/etc/objects/commands.cfg用于定义nagios监
控命令的配置文件。
cfg_file=/usr/local/nagios/etc/objects/contacts.cfg用于引用nagios联
系人的配置文件。
cfg_file=/usr/local/nagios/etc/objects/timeperiods.cfg用于引用nagios
监控时段的配置文件。
cfg_file=/usr/local/nagios/etc/objects/templates.cfg用于引用nagios 监
控对象的模版文件。
cfg_file=/usr/local/nagios/etc/objects/localhost.cfg用于引用nagios 监
控本地(Linux)主机的配置文件。
resource_file=/usr/local/nagios/etc/resource.cfg用于定义nagios 资源配
置文件,可以在nagios.cfg中定义多个资源文件。
status_file=/usr/local/nagios/var/status.dat用于定义nagios 的状态文件,
此文件用于保存nagios当前的状态、宕机信息等。它会在每次 nagios 重新启动
的时候被清空删除。

5.4 4  resourceg .cfg  文件介绍
resource.cfg是nagios的变量定义文件,文件内容只有一行。如下:
$USER1$=/usr/local/nagios/libexec
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
其中,变量$USER1$指定安装nagios插件的路径。
如果把插件安装在了其它路径,只需在这里进行修改即可。
需要注意的是,变量必须先定义,然后才能在其它配置文件中进行引用,同时该
变量也是可以通过宏进行定义。
nagios的一个重要特征就是可以在命令行的定义里使用宏,通过定义宏,nagios
可以灵活的获取主机、服务和其它对象的信息。
5.4.1  宏的工作机制
在执行命令之前,nagios 将对命令里的每个宏替换成它们应当取得的值。
这种宏替换发生在nagios执行各种类型的宏时候。例如主机和服务的检测、通
知、事件处理等。
5.4.2  宏的分类
根据宏的不同,我们可以把宏分成:默认宏、按需而成的宏、用户自定义宏。
默认宏,以主机 P IP  地址宏为例。
当在命令定义中使用主机或服务宏时,宏将要执行时所用的值指向主机或服
务所带的值。
看下面这个例子,假如在 check_ping 命令定义里使用了一个主机对象,如
下:
define host{
host_name nagios
address 10.10.10.10
check_command check_ping
}
define command{
command_name check_ping
command_line /usr/local/nagios/libexec/check_ping
-H $HOSTADDRESS$ -w100.0,90%-c200.0,60%
}
那么执行这个主机检测命令时,最终执行的将是这样的:
/usr/local/nagios/libexec/check_ping -H 10.10.10.10 -w 100.0,90% -c
200.0,60%
nagios 宏的优美之处在于你可以只用一个命令定义来完成无限个主机的检
测,并且每个主机可以使用相同的命令来进行检测,而在对它们检测之前将把主
机地址正确地进行替换。
命令参数宏
同样你也可以向命令传递参数,这样可以保证命令定义更具通用性。参数指
定在对象(像主机或服务)中定义,用一个“!”来分隔,例如这样:
define service{
host_name nagios
service_description PING
check_command check_ping!200.0,80%!400.0,40%
}
上例中,服务的检测命令中含有两个参数,$ARG1$宏将是”200.0,80%”,
$ARG2$将是”400.0,40%”(都不带引号)。假如check_ping命令是这样定义的:
define command{
command_name check_ping
command_line /usr/local/nagios/libexec/check_ping
-H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$
}
那么对于服务的检测命令最终将是这样的:
/usr/local/nagios/libexec/check_ping -H 10.10.10.10 -w 200.0,80% -c
400.0,40%
另外,按需而成的宏和用户自定义宏,如果想要深入学习有关 nagios 宏的
相关知识的话,可以去nagios官网进行查看。
链接:http://nagios-cn.sourceforge.net/nagios-cn/cgiconfig.html 中文版
5.5   templatesg .cfg  文件介绍
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
check_period 24×7 #这里的check_period告诉nagios检查主机的时间段。
check_interval0.1 #nagios对主机的检查时间间隔,单位是分钟即6秒。
retry_interval0.1 #重试检查时间间隔,单位是分钟即6秒。
max_check_attempts2 #nagios对主机的最大检查次数,也就是nagios在检
查发现某主机异常时,并不马上判断为异常状况,而是多试几次,因为有可能只
是一时网络太拥挤,或是一些其他原因,让主机受到了一点影响,这里的 2 就是
最多试2次的意思。
5.6  timeperiodg .cfg  文件介绍
timeperiods.cfg文件用于定义监控的时间段。
下面是定义一个名为24×7的时间段,即监控所有时间段。如下:
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
5.7 contactsg .cfg  文件介绍
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
contact_name #定义联系人名称。
Alias #定义联系人别名。
Email #定义联系人的邮件地址。
contactgroup_name #定义联系人组名称。
Members #定义联系人组成员。
六、e Nrpe  安装及配置
6.1  什么是  nrpe
NRPE 是 Nagios Remote Plugin Executor 的简称,它是 nagios 的一个扩展
工具,用在被监控主机上。通过它可以向nagios监控服务器提供该主机的一些
本地信息。例如:cpu 负载、内存使用情况、磁盘容量、登陆用户数、总进程数、
僵尸进程数、swap分区使用情况等等。
NRPE可以称为nagios的forlinux客户端。而为什么要使用这个客户端呢?
有以下两个原因:
1、nagios 只能监控自己所在的服务器,而对其他主机的监控则无能为力。
毕竟没得到被监控主机的适当权限是不可能得到这些信息的。为了解决这个问题,
我们就可以通过NRPE来完成对远程主机本地信息的监控。
2、在 nagios 的监控插件中,有一个名为 check_ssh 的插件,它也可以实现
对远程主机本地信息的监控。但是,相对NRPE而言,check_ssh占用的系统资
源就略多一点。监控少量的服务时可能还不会察觉,但是如果监控对象比较多的
话,那么两者的差距就非常明显了。
同时还有一点要说明, 由于 NRPE 的监控过程并不需要远程主机上的系统账
号信息以及不登录到系统中等操作,所以其安全性也就高于 check_ssh 的监控方
式。
6.2  安装  nrpe
NRPEdaemon运行默认使用nagios用户,所以先创建用户。
#useradd-M-s/sbin/nologinnagios
同时客户端也需要安装nagios-plugins插件,服务端也同样安装nrpe
下载链接: https://sourceforge.net/projects/nagios/files/
#tar-xfnrpe-xx.tar.gz
#cdnrpe-xx
#./configure–enable-command-args
注意: –s enable-command-args  参数很重要,如果要给 E NRPE  传递参数的话,在
安装配置 E NRPE  时一定要加上该参数。
#makeall
#makeinstall-plugin
#makeinstall-deamon
#makeinstall-deamon-config
6.3  配置  nrpe
在启动NRPE之前,我们来看看NRPE的配置文件nrpe.cfg。该文件默认在
/usr/local/nagios/etc/目录下。如下:
egrep -v “^#|^$” /usr/local/nagios/etc/nrpe.cfg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
pid_file=/var/run/nrpe.pid #定义NRPE的PID文件。
server_port=5666 #定义NRPEdaemon使用的端口。
nrpe_user=nagiosnrpe_group=nagios #定义NRPE运行时,所使用的用户及
用户组,默认为nagios用户及nagios用户组。
allowed_hosts=10.10.1.17 #定义允许连接到该主机的nagios服务器。如果是
多个服务器的话,可以使用逗号隔开。如果是允许一个网段的话,格式如下:
192.168.1.0/24。
command[check_users]=/usr/local/nagios/libexec/check_users-w5-c10
#定义NRPE执行check_users命令时,所要运行的扩展插件命令。
注意:根据以上格式,可以看出 NRPE 在执行相关命令时,是要先执行本地
的nagios插件,然后把执行的结果反馈给NRPE。
Nrpe启动查看端口是否被监听
/usr/local/nagios/bin/nrpe-c/usr/local/nagios/etc/nrpe.cfg-d
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
七、监控主机
7.1  监控 x linux  主机
定义 e check_nrpe  命令
要使用NRPE监控主机,我们需要把check_nrpe命令在commands.cfg文件中进
行定义。如下:
vi/usr/local/nagios/etc/objects/commands.cfg
definecommand{
command_namecheck_nrpe
command_line$USER1$/check_nrpe-H$HOSTADDRESS$-c$ARG1$
}
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
注意:
command_namecheck_nrpe表示定义一个名叫check_nrpe的命令,以后我们要
使用的话就可以通过use直接引用该命令。
command_line$USER1$/check_nrpe-H$HOSTADDRESS$-c$ARG1$表示要执行
的命令,其中-c 后面只能接被监控主机 nrpe.cfg 中定义的命令名称,$ARG1$就
是表示被监控主机nrpe.cfg中定义的命令。例如:(绿色字体部分)
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
自定义引用的 t host  和  service
简要配置直接创建新的 linux.cfg,内部定义host 和 service
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
定义主机
definehost{
use linux-server
host_name Linux #定义主机名称
alias MyLinuxHost ;
icon_image freebsd40.jpg
parents Window
address 10.10.1.120#主机地址
}
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
定义  service
defineservice{
use generic-service
host_name Linux
service_description CHECKUSERS
check_command check_nrpe!check_users
}#检测登录用户
defineservice{
use generic-service
host_name Linux
service_description Load
check_command check_nrpe!check_load
} #检测负载
defineservice{
use generic-service
host_name Linux
service_description Hda1
check_command check_nrpe!check_hda1
}#检测磁盘使用1
defineservice{
use generic-service
host_name Linux
service_description Hda2
check_command check_nrpe!check_hda2
}#检测磁盘使用2
defineservice{
use generic-service
host_name Linux
service_description Zomebie
check_command check_nrpe!check_zombie_procs
}#检测僵尸进程
defineservice{
use generic-service
host_name Linux
service_description Total_pro
check_command check_nrpe!check_total_procs
}#检测总进程数
defineservice{
use generic-service
host_name Linux
service_description PING
check_command check_nrpe!check_ping
}#检测ping
defineservice{
use generic-service
host_name Linux
service_description SWAP
check_command check_nrpe!check_swap
}#检测交换分区
defineservice{
use generic-service
host_name Linux
service_description SSH
check_command check_nrpe!check_ssh
}#检测ssh22端口
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
释义:(举例check_load)
host_name要在整个nagios中是唯一的,不能有和其相同的host_name,否则
nagios会报错。
check_command check_nrpe!check_load其中的check_nrpe就是我们在
commands.cfg文件中定义的check_nrpe命令,!check_load对应该命令中的
$ARG1$参数。
所以该配置文件在nagios服务器上先执行的命令是:
/usr/local/nagios/libexec/check_nrpe-H10.10.1.120-ccheck_load。
该命令执行完毕后,nagios 服务器上的 check_nrpe 插件就会调用被监控主机上
的NRPE daemon。被监控主机上的 NRPE daemon 会调用本机的 check_load 命令,
而check_load命令会调用本机的nagios插件check_load,所以在被监控主机
上最后的执行命令是:/usr/local/nagios/libexec/check_load -w 15,10,5 -c
30,25,20。该命令执行完毕后,再把结果反馈到nagios服务器上。
7.2  监控 s windows  主机
在被监控机上安装NSClient(一键安装)
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
Allowed hosts #服务端地址
NSClient password #在通过 check_nt 监控时需要密码认证
NSClient 服务器启动监听端口 12489。
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
定义 t check_nt  命令
definecommand{
command_name check_nt
command_line $USER1$/check_nt-H$HOSTADDRESS$-p12489-v
$ARG1$$ARG2$
} #如果被监控端设置了密码,需要-s加上密码
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
定义 t host 和 和  service
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
写入方式与linux类似
Host_name #定义的主机
Service_description #服务描述,及web显示项
Check_command #执行的操作
7.3  测试监控项目
登录测试http://IP/nagios/
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
上图中为全部服务正常情况下示图,箭头指向表明该服务如告警不发送邮件。
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
上图为关闭linux 主机 httpd 及 mysql 服务后告警示图,此时为严重告警。
未知服务:应定义服务不规范或错误,会出现 UNKNOWN 状态,需要检查配置。
八、监控告警
8.1  邮件告警
8.1.1  安装邮件服务
#yuminstall-ymailsendmail
日志路径:/var/log/maillog
8.1.2  告警功能配置
(1)所有提醒任务首先要查看 hosts.cfg 或者 services.cfg,在这两个文件中
有如下几个参数关系到提醒:
d notifications_enabled : 是否开启提醒功能。1 为开启,0 为禁用。注,一般,
这个选项会在主配置文件(nagios.cfg)中定义,效果相同。
contact_groups: 定义接受提醒的联系人组,如果 hosts.cfg 文件中所有的条件
都符合,那么提醒任务将会继续检查contactgroup.cfg文件。
notification_interval: 重复发送提醒信息的最短间隔时间。默认间隔时间是
60分钟。如果这个值设置为0,将不会发送重复提醒。
notification_period: 发送提醒的时间段。非常重要的主机(服务)我定义为
7×24,一般的主机(服务)就定义为上班时间。如果不在定义的时间段内,无
论什么问题发生,都不会发送提醒。
notification_options: 这个参数定义了发送提醒包括的情况:d = 状态为 DOWN,
u = 状态为 UNREACHABLE , r = 状态恢复为 OK , f = flapping。,n=不发送
提醒。
以上告警功能默认开启,在contacts.cfg配置文件中加入被告知人邮件即可:
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
测试告警邮件:
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
8.2 t iyunv  平台综合告警
1、iyunv官网注册账号后添加Nagios应用,可获得appkey。
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
2、下载agent
http://www.iyunv.com/open/alert/download.jsp
3、安装agent
以nagios默认安装路径/usr/local/nagios/为例:
#tarxvfalert-agent-4.0.1-RC1.tar.gz
#cp-Ralert-agent/usr/local/nagios/libexec/
#cp alert-agent/plugin/nagios-plugin/nagios /usr/local/nagios/libexec/
#chmod+x/usr/local/nagios/libexec/nagios
#cpalert-agent/plugin/nagios-plugin/110monitor.cfg
/usr/local/nagios/etc/objects/
4、修改配置
#vi/usr/local/nagios/etc/objects/110monitor.cfg
修改pager行,更换成添加应用获取到的appkey
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
#vi/usr/local/nagios/etc/objects/contacts.cfg
新增110monitor到默认联系组
#vi/usr/local/nagios/etc/nagios.cfg,新增110monitor.cfg
cfg_file=/usr/local/nagios/etc/objects/110monitor.cfg
5、重启nagios验证测试
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
该平台综合短信、微信、邮件、电话、app 等功能告警,在 iyunv 平台--团队--通告策略中添加所需告警功能。
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg

                                       


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-419645-1-1.html 上篇帖子: nagios接入-灵犀云告警配置 下篇帖子: icingaweb2安装中mysql-ido问题
累计签到:83 天
连续签到:1 天
发表于 2018-2-5 14:02:49 | 显示全部楼层
楼主自己做一遍测试了吗?

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表