Nagios监控服务的搭建

Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设置,打印机等。

主要功能

网络服务监控(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主目录下的/libexec里放有nagios自带的可以使用的所有插件,如,check_disk是检查磁盘空间的插件,check_load是检查CPU负载的,等等。每一个插件可以通过运行./check_xxx –h 来查看其使用方法和功能。

Nagios可以识别4种状态返回信息,即 0(OK)表示状态正常/绿色、1(WARNING)表示出现警告/黄色、2(CRITICAL)表示出现非常严重的错误/红色、3(UNKNOWN)表示未知错误/深黄色。Nagios根据插件返回来的值,来判断监控对象的状态,并通过web显示出来,以供管理员及时发现故障。

Nagios 通过NRPE 来远端管理服务

1. Nagios 执行安装在它里面的check_nrpe 插件,并告诉check_nrpe 去检测哪些服务。

2. 通过SSL,check_nrpe 连接远端机子上的NRPE daemon

3. NRPE 运行本地的各种插件去检测本地的服务和状态(check_disk,..etc)

4. 最后,NRPE 把检测的结果传给主机端的check_nrpe,check_nrpe 再把结果送到Nagios状态队列中。

5. Nagios 依次读取队列中的信息,再把结果显示出来。

下面进行安装

# yum install -y gcc glibc glibc-common gd  xinetd openssl-devel


# useradd -s /sbin/nologin nagios

# mkdir /usr/local/nagios

# chown -R nagios.nagios /usr/local/nagios

# wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.4.3.tar.gz

# tar zxvf nagios-3.4.3.tar.gz

# ./configure --prefix=/usr/local/nagios

# make all

报下面错

其实它是要制作目标文件/include/locations.h,这个是头文件,可是这个头文件需要broker.o文件

这个文件是由perl安装包提供的,你可以先执行下面命令安装perl,然后再重新./configure一下,再make all就没有问题啦

yum install perl -y

# make install

# make install-init

# make install-commandmode

# make install-config

# chkconfig --add nagios

# chkconfig --level 35 nagios on

# chkconfig --list nagios

验证程序是否被正确安装

切换目录到安装路径(这里是/usr/local/nagios),看是否存在etc、bin、sbin、share、var 这五个目录,如果存在则可以表明程序被正确的安装到系统了。Nagios 各个目录用途说明如下:

bin
Nagios 可执行程序所在目录

etc
Nagios 配置文件所在目录

sbin
Nagios CGI 文件所在目录,也就是执行外部命令所需文件所在的目录

share
Nagios网页文件所在的目录

libexec
Nagios 外部插件所在目录

var
Nagios 日志文件、lock 等文件所在的目录

var/archives
Nagios 日志自动归档目录

var/rw
用来存放外部命令文件的目录

下面安装Nagios的插件

# wget https://nagios-plugins.org/download/nagios-plugins-2.2.1.tar.gz

# tar xzvf nagios-plugins-2.2.1.tar.gz

# cd nagios-plugins-2.2.1

# ./configure --prefix=/usr/local/nagios

# make && make install

下面安装apache和php对web界面的支持

# wget http://archive.apache.org/dist/httpd/httpd-2.2.23.tar.gz

# tar zxvf httpd-2.2.23.tar.gz

# cd httpd-2.2.23

#  ./configure --prefix=/usr/local/apache2

# make && make install

如果出现以下错误

则在编译时入加 --with-included-apr 即可解决。

# wget http://101.96.10.63/jp2.php.net/distributions/php-5.5.38.tar.gz

# tar -xzvf php-5.5.38.tar.gz

# cd php-5.5.38

# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs

apxs是一个为Apache HTTP服务器编译和安装扩展模块的工具,用于编译一个或多个源程序或目标代码文件为动态共享对象,使之可以用由mod_so提供的LoadModule指令在运行时加载到Apache服务器中。

这个可能会出现下面情况

这个是说你没有安装libxml这个软件包,我就用yum安装,发现提示已经安装了,我觉得有可能是编译包没有安装,果然没错,是libxml这个编译包没有安装

# yum install libxml2

# yum install libxml2-devel

然后再回去执行./configure命令就可以啦

# make && make install

# vi /usr/local/apache2/conf/httpd.conf

找到:

User daemon 
Group daemon

修改为

User nagios 
Group nagios

然后找到

<IfModule dir_module> 
  DirectoryIndex index.html 
</IfModule>

修改为

<IfModule dir_module> 
  DirectoryIndex index.html index.php 
</IfModule>

接着增加如下内容:

AddType application/x-httpd-php .php

实质就是添加可以执行php的文件类型,比如你再加上一行“AddType application/x-httpd-php .htm”,则.htm文件也可以执行php程序了

为了安全起见,一般情况下要让nagios 的web 监控页面必须经过授权才能访问,这需要增加验证配置,即在httpd.conf 文件最后添加如下信息:

#setting for nagios 
ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin" 
<Directory "/usr/local/nagios/sbin"> 
     AuthType Basic 
     Options ExecCGI 
     AllowOverride None 
     Order allow,deny 
     Allow from all 
     AuthName "Nagios Access" 
     AuthUserFile /usr/local/nagios/etc/htpasswd             //用于此目录访问身份验证的文件 
     Require valid-user 
</Directory> Alias /nagios "/usr/local/nagios/share" 
<Directory "/usr/local/nagios/share"> 
     AuthType Basic 
     Options None 
     AllowOverride None 
     Order allow,deny 
     Allow from all 
     AuthName "nagios Access" 
     AuthUserFile /usr/local/nagios/etc/htpasswd 
     Require valid-user 
</Directory>

创建apache目录验证文件

在上面的配置中,指定了目录验证文件htpasswd,下面要创建这个文件:

# /usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd username

这样就在/usr/local/nagios/etc 目录下创建了一个htpasswd 验证文件,当通过http://192.168.1.108/nagios/ 访问时就需要输入用户名和密码了。

启动apache 服务

# /usr/local/apache2/bin/apachectl start

来源: http://www.cnblogs.com/mchina/archive/2013/02/20/2883404.html

时间: 2024-09-30 20:08:21

Nagios监控服务的搭建的相关文章

SECURITY 04: Nagios监控实战 、 监控概述 、 Nagios监控服务

抓包: tcpdump 选项 过滤条件协议分析软件 : wireshark 搭建CA服务器: CA 配置CA服务的过程:192.168.4.55 ca.tedu.cn tarena1 部署证书签发环境:/etc/pki/tls/openssl.conf 工作目录 证书存放目录私钥文件名 根证书文件名证书编号文件证书索引文件证书识别: 国家 省 城市 公司 部门 匹配策略: 2 创建私钥文件名: 命令 存储目录 文件名3 创建根证书文件名:命令 存储目录 文件名输入:国家 省 城市 公司 部门 邮

nagios监控服务

   nagios监控系统 1: ngios工作原理 1.Nagios的功能是监控服务和主机,但是他自身并不包括这部分功能,所有的监控.检测功能都是通过各种插件来完成的. 启动Nagios后,它会周期性的自动调用插件去检测服务器状态,同时Nagios会维持一个队列,所有插件返回来的状态信息都进入队列,Nagios每次都从队首开始读取信息,并进行处理后,把状态结果通过web显示出来. Nagios提供了许多插件,利用这些插件可以方便的监控很多服务状态.安装完成后,在nagios主目录下的/libe

Nagios监控服务搭建

Introduction This guide is intended to provide you with simple instructions on how to install Nagios from source (code) on Ubuntu and have it monitoring your local machine inside of 20 minutes. No advanced installation options are discussed here - ju

nagios监控报警一般搭建过程及常见问题

l Nagios是什么 l Nagios安装步骤 l Nagios-plugins插件安装步骤 l Nagios安装完成后启动 l Nagios web访问 l 常见问题 l 参考资料 Nagios是什么 上个星期,自己搭建了下nagios服务器,这里记录下我自己的方法心得,给新手一个指导. Nagios是什么呢? 官网是这样定义的: Nagios is a host/service/network monitoring program written in C and released und

nagios监控服务出现FLAPPING状态时无法发出邮件报警信息

1.服务出现FLAPPING状态时无法发出邮件报警信息[1409537279] SERVICE ALERT: rs-07;Memory;CRITICAL;HARD;2;Connection refused by host[1409537279] SERVICE FLAPPING ALERT: rs-07;Memory;STARTED; Service appears to have started flapping (28.2% change >= 20.0% threshold) 2.原因:f

centos 搭建 nagios 监控系统.

linux下搭建nagios监控 一.什么是nagios 1.nagios 简介 Nagios是一个监视系统运行状态和网络信息的监视系统. Nagios能监视所指定的本地或远程主机以及服务,同时提供异常通知功能等. Nagios可运行在Linux/Unix平台之上,同时提供一个可选的基于浏览器的WEB界面以方便系统管理人员查看网络状态, 各种系统问题,以及日志等等. Nagios是十分受欢迎的.开源且免费的计算机及网络系统监控软件. Nagios是"Nagios Ain't Gonna Insi

linux下搭建nagios监控

一.什么是nagios 1.nagios 简介 Nagios是一个监视系统运行状态和网络信息的监视系统.Nagios能监视所指定的本地或远程主机以及服务,同时提供异常通知功能等.Nagios可运行在Linux/Unix平台之上,同时提供一个可选的基于浏览器的WEB界面以方便系统管理人员查看网络状态,各种系统问题,以及日志等等. Nagios是十分受欢迎的.开源且免费的计算机及网络系统监控软件.Nagios是"Nagios Ain't Gonna Insist On Sainthood"

linux Nagios监控

监控目标 监控目标主机分为四个部分 硬件资源 操作系统 数据库 应用软件 监控目的: 进行服务器性能调整前,知道调整什么,系统瓶颈在什么地方 被一部分必须同时监控,内容包括吞吐量,反应时间,使用率等 监控命令: 进程监控 ps top 存储监控 free swapon -s df -h 网络监控 ifconfig netstat ping traceroute 性能监控 常用的性能监控命令 uptime cpu负载 mpastat 查看cpu状态 vmstat 查看内存状态 iostat 查看硬

Nagios监控基础安装与监控项部署(上)

前言:NAGIOS介绍: Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设置,打印机等.在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知. 主要功能 (1)网络服务监控(SMTP.POP3.HTTP.NNTP.ICMP.SNMP.FTP.SSH) (2)主机资源监控(CPU load.diskusage.system logs),也包括Windows主机(使用NSC