Nagios监控工具

不会显示具体的值,仅显示主机或服务的状态

强大的报警功能

高度插件化

Nagios监控主机/服务显示的4种状态

OK

WARNING

CRITICAL

UNKNOWN

Nagios对象:

主机,主机组

服务/资源,服务组

联系人,联系人组

时间段

命令(模板--->应用到某个被监控对象,以实现监控)

Nagios实现监控的方式:

check_by_ssh

check_by_nrpe:专用于监控Linux或Unix主机

check_by_nsclient++:用于监控Windows主机

check_by_snmp

check_by_nsca:实现被动方式的nagios,由被监控对象主动向nagios发送状态信息

check_by_xyz:自定义监控方式/脚本

安装nagios

1、安装依赖的软件

# yum install -y httpd php php-mysql mysql-devel mysql

2、创建nagios运行需要的用户和组

# groupadd nagcmd

# useradd -G nagcmd nagios

将运行apache进程的用户加入到nagcmd组中

# usermod -a -G nagcmd apache

3、安装nagios

# tar zxf nagios-3.3.1.tar.gz

# cd nagios

# ./configure --with-command-group=nagcmd --enable-event-broker --sysconfdir=/etc/nagios

# make all

# make install

# make install-init

# make install-commandmode

# make install-config

#  make install-webconf

创建一个登录nagios web页面的用户,这个用户账号在以后通过web登录nagios时使用

# htpasswd -c /etc/nagios/htpasswd.users nagiosadmin

New password:

Re-type new password:

Adding password for user nagiosadmin

启动httpd服务

# service httpd start

4、安装nagios-plugins插件

# tar zxf nagios-plugins-1.5.tar.gz

# cd nagios-plugins-1.5

# ./configure --with-nagios-user=nagios --with-nagios-group=nagios

# make && make install

5、启动nagios服务

# chkconfig --add nagios

# service nagios start

6、访问nagios

http://10.1.1.2/nagios

配置nagios

nagios配置文件保存在/etc/nagios目录下

nagios插件目录

/usr/local/nagios/libexec

nagios监控windows主机

SNMP

NSClient++

nagios通过check_nt插件与windows NSClient++通信

NSClient++可提供check_nt,check_nrpe及NSCA的能力

NSClient++监听在12489/tcp端口与check_nt插件通信

配置check_nt与NSClient++监控windows主机

1、定义命令command

# vim /etc/nagios/objects/commands.cfg

define command{

command_name    check_nt

command_line    $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -v $ARG1$ $ARG2$

}

2、定义主机host及服务service

# vim /etc/nagios/objects/windows.cfg

define host{

use             windows-server  ; Inherit default values from a template

host_name       winhost; The name we‘re giving to this host

alias           My Windows Server       ; A longer name associated with the host

address         10.1.1.254      ; IP address of the host

}

define service{

use                     generic-service

host_name               winhost

service_description     Uptime

check_command           check_nt!UPTIME

}

3、启用主机配置文件

# vim /etc/nagios/nagios.cfg

cfg_file=/etc/nagios/objects/windows.cfg

4、检测配置文件语法,并重启nagios服务

# /usr/local/nagios/bin/nagios -v /etc/nagios/nagios.cfg

# service nagios restart

浏览器访问http://10.1.1.2/nagios查看监控状态数据

配置check_nrpe监控Linux及windows主机

监控端通过check_nrpe与被监控端nrpe进程通信

nrpe监听在5666/tcp端口

监控端、被监控端都需要安装nrpe addon,被监控端需要启动nrpe服务

一、监控Linux 主机10.1.1.1

1、在被监控主机上安装nrpe并配置

1)创建nagios用户

# useradd -s /sbin/nologin nagios

2)nrpe依赖于nagios-plugins,安装nagios-plugins

# tar zxf nagios-plugins-1.4.14.tar.gz

# cd nagios-plugins-1.4.14

# ./configure --with-nagios-user=nagios --with-nagios-group=nagios

# make all

# make install

3)安装nrpe

# tar zxf nrpe-2.15.tar.gz

# cd nrpe-2.15

# ./configure --with-nrpe-user=nagios --with-nrpe-group=nagios --with-nagios-user=nagios --with-nagios-group=nagios --enable-command-args --enable-ssl

# make all

# make install-plugin

# make install-daemon

# make install-daemon-config

4)配置nrpe

# vim /usr/local/nagios/etc/nrpe.cfg

log_facility=daemon

pid_file=/var/run/nrpe.pid

server_port=5666

server_address=10.1.1.1

nrpe_user=nagios

nrpe_group=nagios

allowed_hosts=10.1.1.2

command_timeout=60

定义监控本地资源的命令

command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10

command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20

command[check_sda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda1

command[check_sda2]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda2

command[check_sda3]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda3

command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z

command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200

5)编写启动nrpe服务脚本

# vim /etc/rc.d/init.d/nrpe

#!/bin/bash

#

# chkconfig: 2345 88 12

# description: NRPE DAEMON

NRPE=/usr/local/nagios/bin/nrpe

NRPECONF=/usr/local/nagios/etc/nrpe.cfg

case $1 in

start)

echo -n "Starting NRPE damon...."

$NRPE -c $NRPECONF -d

echo "Done..."

;;

stop)

echo -n "Stopping NRPE daemon...."

pkill -u nagios nrpe

echo "Done...."

;;

restart)

$0 stop

sleep 2

$0 start

;;

*)

echo "Usage: $0 { start | stop | restart }"

;;

esac

exit 0

# chmod +x /etc/rc.d/init.d/nrpe

# chkconfig --add nrpe

# service nrpe start

# netstat -tnlp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name

tcp        0      0 10.1.1.1:5666               0.0.0.0:*                   LISTEN      6826/nrpe

2、在监控端安装nrpe

1)安装nrpe

# tar zxf nrpe-2.15.tar.gz

# cd nrpe-2.15

# ./configure --with-nrpe-user=nagios --with-nrpe-group=nagios --with-nagios-user=nagios --with-nagios-group=nagios --enable-command-args --enable-ssl

# make all

# make install-plugin

安装完成后,在/usr/local/nagios/libexec目录下会产生check_nrpe插件

通过以下命令可测试插件是否工作正常

# ./check_nrpe -H 10.1.1.1

NRPE v2.15

3、配置监控Linux主机

1)定义命令command

# vim /etc/nagios/objects/commands.cfg

define command{

command_name    check_nrpe

command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$

}

2)定义主机host及服务service

# cp /etc/nagios/objects/windows.cfg /etc/nagios/objects/linux.cfg

# vim /etc/nagios/objects/linux.cfg

define host{

use linux-server ; Inherit default values from a template

host_name linuxhost; The name we‘re giving to this host

alias My Linux Server ; A longer name associated with the host

address 10.1.1.1 ; IP address of the host

}

define service{

use generic-service

host_name linuxhost

service_description Users

check_command check_nrpe!check_users

}

define service{

use generic-service

host_name linuxhost

service_description Load

check_command check_nrpe!check_load

}

define service{

use generic-service

host_name linuxhost

service_description SDA1

check_command check_nrpe!check_sda1

}

define service{

use generic-service

host_name linuxhost

service_description SDA2

check_command check_nrpe!check_sda2

}

define service{

use generic-service

host_name linuxhost

service_description SDA3

check_command check_nrpe!check_sda3

}

define service{

use generic-service

host_name linuxhost

service_description Zombie procs

check_command check_nrpe!check_zombie_procs

}

define service{

use generic-service

host_name linuxhost

service_description total procs

check_command check_nrpe!check_total_procs

}

check_nrpe!check_total_procs

!后面为被监控端定义好的命令名称

3)启用主机配置文件

# vim /etc/nagios/nagios.cfg

cfg_file=/etc/nagios/objects/linux.cfg

4)检测配置文件语法,并重启nagios服务

# /usr/local/nagios/bin/nagios -v /etc/nagios/nagios.cfg

# service nagios restart

在10.1.1.1上分别安装web及mysql服务,配置监控端10.1.1.2监控这两个服务

1、在10.1.1.1上安装web及mysql

# yum install -y httpd mysql-server

需要在mysql服务器上创建允许远程登录的用户

2、编辑command.cfg分别定义监控web及mysql服务的命令

# vim /etc/nagios/objects/commands.cfg

define command{

command_name    check_http

command_line    $USER1$/check_http -I $HOSTADDRESS$ $ARG1$

}

define command{

command_name    check_mysql

command_line    $USER1$/check_mysql -H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$

}

3、编辑linux.cfg配置文件,定义web及mysql服务

# vim /etc/nagios/objects/linux.cfg

define service{

use                     generic-service

host_name               linuxhost

service_description     Web Server

check_command           check_http

}

define service{

use                     generic-service

host_name               linuxhost

service_description     Mysql Server

check_command           check_mysql!admin!redhat

}

4、检测配置文件语法,并重启nagios服务

# /usr/local/nagios/bin/nagios -v /etc/nagios/nagios.cfg

# service nagios restart

时间: 2024-10-15 09:28:21

Nagios监控工具的相关文章

50.nagios监控工具

nagios监控工具 Nagios是一款开源的计算机系统和网络监视工具,能有效的监控windows,linux和unix的主机状态,在系统和服务器状态异常的时候发送电子邮件或短信报警,第一时间通知网站运维成员,在状态恢复后发出正常的电子邮件或短信通知. Nagios四种监控状态: v 0(OK)表示状态正常/绿色 v 1(WARNING)表示出现警告/黄色 v 2(CRITICAL)表示出现非常严重的错误/红色 v 3(UNKNOWN)表示未知错误/深黄色 Nagios通过NRPE插件来远程管理

企业级监控软件nagios实战[老男孩教育精品]-限时免费

企业级监控软件nagios实战[老男孩linux精品课程]-限时免费注意:限时全免费,截止7月25日.http://edu.51cto.com/course/course_id-1740.html兼容Centos5.8和6.4,同时也适合red hat linux系列! 北京老男孩培训,全国最负责.最高端.最专业的linux运维实战教育机构!打造中国IT实效教育第一品牌! 交流群 246054962 208160987 145178854(标明51CTO) ├─1老男孩linux培训VIP视频-

linux学习笔记-nagios监控的简单配置

第1章 nagios监控工具介绍及原理 1.1nagios监控工具介绍与优势 Nagios是一款开源的网络及服务的监控工具,其功能强大,灵活性强.能有效监控Window,Linux和Unix的主机各种状态信息,交换机.路由器等网络设置,主机端口及URL服务等.根据不同业务故障界别发出告警信息给管理员,当故障恢复时也会发出恢复消息. Nagios服务端可以在linux和类unix的系统上运行,目前无法再windows上运行. 官方网站地址:http://www.nagios.org/ 官方快速安装

企业级监控nagios实践

nagios 监控服务应用指南 小区:视频监控,保安 企业工作中为什么要部署监控系统 监控系统相当于哨兵的作用,监控几百台上千台服务器,监控系统非常重要. 监控系统都需要监控 1. 本地资源:负载uptime cpu(top,sar),磁盘(df),内存(free),io(iostat),raid,温度,passwd文件的变化,本地所有文件指纹识别 2. 网络服务:端口,url ,丢包,进程数,网络流量 3. 其他设备: 路由器.交换机端口流量,打印机,windows等 4. 业务数据:用户登录

nagios的简单配置实践

我们都知道军队里,哨兵的角色很重要,敌人来了先把哨兵解决了.猴子,在企业网站 架构里,这个监控系统就相当于哨兵的作用,监控系统非常重要.体检.. 监控系统都需要监控: 1.本地资源:负载uptime, CPU(top,sar), 磁盘(df-h),内存(free swap ),lO(iostat), RAID 级别,CPU温度,passwd文件的变化,本地所有文件指纹识别监控.. 2.网络服务:端口,web(URL),DB, ping 丢包,进程数,IDC 网络流量.. 3.其他设备:路由器.交

Nagios-介绍及安装

Cacti 监控工具 收集数据,根据数据绘图 CPU负载:0.8 1.2... 报警:thold Nagios 监控工具 主机,服务/资源 状态:OK,WARNGING,CRITICAL,UNKNOWN CPU:90%(CRITICAL).80%(WARNING) .80%以下OK .UNKNOWN 报警系统 Nagios core 不做任何监控工作 Plugins插件(scripts) N种对象来实现监控工作 主机,主机组 服务/资源,服务组 联系人,联系人租 时段 命令 Nagios通常由一

check_mk自定义监控实践之powershell

最近在学习check_mk,这是一款基于nagios监控工具,但比nagios更易使用,引起了我的兴趣,我最关注的依然是对自定义监控脚本的支持度.在windows下的实践,其支持的客户端脚本或插件可以是 exe,bat,vbs,ps1等,我采用powershell来编写监控脚本. 本文适合对check_mk有一定了解的人,关于check_mk的介绍和搭建,请点击查看:手把手打造开源新监控利器check_mk 另外如果觉得这篇文章描述不够清晰,可以参考官方文档:http://mathias-ket

Linux集群监控工具简介:Ganglia和Nagios

11年时候,曾经对 Ganglia 和 Nagios有一定接触,这是两个用于监视数据中心的工具.这两个工具被大量用于高性能计算(HPC)环境中,但是它们对于其他环境也具有很大的吸引力(例如云.呈现集群和托管中心).此外,两者对监视的定义也采取了不同的侧重点.Ganglia 更多地与收集度量数据并随时跟踪这些数据有关,而 Nagios 一直致力于成为一种报警机制. 真么多年过去了,这两个工具还是挺有用的.,这里有一定的介绍:http://os.51cto.com/art/201104/255361

【运维监控】四款云服务监控工具介绍:Nagios 、 ganglia、zabbix、onealert

在我们日常的工作中,有时候需要监控和管理平台的运行状况,而服务运行是否存在异常,是否有软硬件bug等,均需要第一时间知道.对服务状态了如指掌,是一个很重要的事情.那么这个如何做到呢,我们之前在进行私有云平台研发过程中,曾经用过一些工具,在一定程度上能帮到大家,这里记录一下,希望对有需要的同学有帮助. 一些常见的监控.告警工具:Nagios . ganglia.zabbix.onealert 一.Nagios: Nagios是一款开源的免费网络监视工具,能有效监控Windows.Linux和Uni