Nagios通常由一个主程序(Nagios)、一个插件程序(Nagios-plugins)和四个可选的ADDON(NRPE、NSCA、NSClient++和NDOUtils)组成。Ngios的监控工作都是通过插件实现的,因此,Nagios和Nagios-plugins是服务器端工作所必须的组件,而四个ADDON中

1、NRPE:用来监控远程linux/unix主机上执行脚本插件以实现对这些主机资源的监控

2、NSCA:用来让被监控的远程linux/unix主机主动将监控信息发送给Nagios服务器(这在冗余监控模式中特别要用到)

3、NSClient++:用来监控windows主机是安装在windows主机上的组件

4、NDOUtils:是用来将Nagios的配置信息和个event产生的数据存入数据库,以实现这些数据的快速检索和处理

这四个ADDON(附件)中,NRPE和NSClient++工作与客户端,NDOUtils工作于服务器端,而NSCA则于鏊同事安装在服务器端和客户端

nagios安装

一、安装nagios需要的rpm包:

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

二、添加nagios运行所需要的用户和组

# groupadd nagcmd

# useradd -G nagcmd nagios

# passwd nagios

把apache加入到nagcmd组,以便于在通过web interface操作nagios时能够具有足够的权限

# usermod -a -G nagcmd apache

三、编译nagios:

# tar -zxvf nagios-3.5.0.tar.gz

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

# make all

# make install

# make install-init

# make install-commandmode

# make install-config

在httpd的配置文件目录(conf.d)中创建nagios的Web程序配置文件

# make install-webconf

--sysconfdir=/etc/nagios  配置文件的位置

--enable-event-broker     可以使用你NDOUtils连接mysql数据库的

四、为email指定您想用来接收nagios警告信息的邮件地址,默认是本机的nagios用户

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

五、创建一个登录nagios web程序的用户,这个账号在以后通过web登陆nagios认证是所用:

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

六、selinux会组织cgi脚本的运行,要么关闭selinux

# setenforce 0

或者执行下面的两个命令

# chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin

# chcon -R -t httpd_sys_content_t /usr/local/nagios/share

启动apache服务:

# /etc/init.d/httpd start

七、如果源码安装apache是遇到如下问题

./configure --prefix=/usr/local/apache 报错

error: Bundled APR requested but not found at ./srclib/. Download and unpack the corresponding apr and apr-util packages to ./srclib/.

解决方法

cp -fr apr-1.4.8 ./httpd-2.4.6/srclib/apr

cp -fr apr-util-1.5.2 ./httpd-2.4.6/srclib/apr-util

./configure --prefix=/usr/local/apache 继续报错

解决办法安装pcre

安装pcre报错error: You need a C++ compiler for C++ support.

安装c++编译器

yum install -y gcc gcc-c++

八、编译、安装nagios-plugins

nagios的所有监控工作都是通过插件完成的,因此,在启动nagios之前还需要为其安装官方提供的插件

# tar zxvf nagios-plugins-1.4.16.tar.gz

# cd nagios-plugins-1.4.16

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

# make

# make install

九、将nagios添加到服务列表中并设置为开机自启动

# chkconfig --add nagios

# chkconfig nagios on 2345

十、启动nagios

# /etc/init.d/nagios start

到此为止nagios的页面就可以访问了可以登录

http://ngiosserverip/ngios访问了

利用nrpe监控linux主机

一、安装nagios-plugins

# tar -zxvf nagios-plugins-1.4.16.tar.gz

# cd nagios-plugins-1.4.16

# useradd -s /sbin/nologin -r nagios

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

# make all

# make install

二、安装nrpe

# tar -zxvf nrpe-2.15.tar.gz

# cd nrpe-2.15

# ./configure --with-nrep-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

三、启动nrpe进程

# /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg –d

四、编写nrped启动脚本,设置开机自启动

# vim /etc/init.d/nrped 加入如下内容

#!/bin/sh

nrpe_num=`ps aux | grep /bin/nrpe | grep -v grep | wc -l`

case $1 in

start)

if [ $nrpe_num -eq 1 ]

then

echo "Error:nrpe is running."

else

/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

echo "nrpe started successfully."

fi

;;

stop)

if [ $nrpe_num -eq 1 ]

then

nrpe_pid=`ps aux | grep /bin/nrpe | grep -v grep | awk '{print $2}'`

kill -9 $nrpe_pid

echo "nrpe stoped successfully."

else

echo "Error:nrpe is stoping."

fi

;;

restart)

if [ $nrpe_num -eq 1 ]

then

nrpe_pid=`ps aux | grep /bin/nrpe | grep -v grep | awk '{print $2}'`

kill -9 $nrpe_pid

echo "nrpe stoped successfully."

/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

echo "nrpe started successfully."

else

echo "Error:nrpe is stoping"

/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

echo "nrpe started successfully."

fi

esac

赋予nrped执行权限:

# chmod 755 nrped

# chkconfig --add nrped

# chkconfig --list nrped

如果2345是关闭

# chkconfig --level 2345 nrped on

五、服务端也要安装nrpe

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

本人习惯:服务端的配置文件全部都在etc目录下,client端的文件一般放在源码文件中,所以在服务端编译的时候都指定了配置文件的路径,而在客户端并未指定配置文件目录

其余部分和client端一样

利用NSClient++监控windows主机

需要准备的插件:

NSClient++-0.3.8-x64

Allowed hosts:允许谁检测

NSClient password:fanjinbao;通过什么密码来监控

运行NSClient++后检查是否开启了12489的端口

nagios监控系统安装及配置的更多相关文章

  1. 在Nginx中搭建Nagios监控平台

    本文只做Nginx下Nagiox安装的说明,其它关于Nagios监控的详细配置请参考我的另一篇文章[Ubuntu 10.04下构建Nagios监控平台] Nagios依赖PHP环境和perl环境.由于 ...

  2. 网站监控系统安装部署(zabbix,nagios)

    zabbix分布式监控系统安装部署 官方网站链接 https://www.zabbix.com/documentation/2.0/manual/installation 安装环境说明 参考地址 ht ...

  3. Nagios学习实践系列——配置研究[监控当前服务器]

    其实上篇Nagios学习实践系列——基本安装篇只是安装了Nagios基本组件,虽然能够打开主页,但是如果不配置相关配置文件文件,那么左边菜单很多页面都打不开,相当于只是一个空壳子.接下来,我们来学习研 ...

  4. Nagios+pnp4nagios+rrdtool 安装配置nagios被监控端NRPE配置(二)

    NRPE监控插件基础 NRPE总共由两部分组成: (1).check_nrpe插件,运行在监控主机上. (2).NRPE daemon,运行在远程的linux主机上(通常就是被监控机) 整个的监控过程 ...

  5. Nagios 系统监控基本安装配置过程详解

    Nagios 是一款免费的开源 IT 基础设施监控系统,功能强大,灵活性强,能有效监控 Windows.Linux.VMware 和 Unix 主机状态,交换机.路由器等网络设置等.一旦主机或服务状态 ...

  6. Nagios监控的部署与配置

    [安装Nagios] yum install -y httpd httpd-devel httpd-tools mysql mysql-devel mysql-server php php-devel ...

  7. Linux监控一之Nagios的安装与配置

    一.Nagios简介 Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设置,打印机等.在系统或服务状态异常时发出邮件或短信报 ...

  8. Nagios 监控系统架设全攻略

    Nagios 全名为(Nagios Ain’t Goona Insist on Saintood),最初项目名字是 NetSaint.它是一款免费的开源 IT 基础设施监控系统,其功能强大,灵活性强, ...

  9. Nagios监控平台搭建

    Nagios是一款开源的免费网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设置,打印机等.在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员, ...

随机推荐

  1. NGUI屏幕自适应

    NGUI确实是非常棒的一个做界面的插件,比起U3D自带的GUI要好很多,当然也有一些不好之处,毕竟什么都不可能那么完美. 最近在用Unity写游戏使用NGUI遇到了一个很多人都在遇到的问题,就是关于屏 ...

  2. Java特性-Collection和Map

    创建博客的目的主要帮助自己记忆和复习日常学到和用到的知识:或有纰漏请大家斧正,非常感谢! 之前面试,被问过一个问题:List和Set的区别. 主要区别很明显了,两者都是数组形式存在的,继承了Colle ...

  3. Android日志猫的使用

    Android日志猫的使用 Android给我们提供了一个Log类,这个类有一些方法,比如 我们可以在我们的代码中添加这些方法进行测试 package com.example.test; import ...

  4. java语法基本知识3--this

    this一般是出现在class中的方法中.同过new产生了一个对象,this就指向这个对象.

  5. linux(centos)下挂载nefs文件系统

    有时候,在将硬盘插到Linux系统上,挂载硬盘时一直提示:unknown filesystem type 'ntfs'.在尝试网上的方法也遇到了一些问题. 这是有的 linux 发行版并不默认支持挂载 ...

  6. javascript中的克隆

    一:节点克隆 var p = document.getElementsByTagName("p")[0]; var cP = p.cloneNode();//克隆p节点 var c ...

  7. swift 构建类

    参开 http://blog.csdn.net/chelongfei/article/details/49784633 在 Swift 中, 类的初始化有两种方式, 分别是 Designated In ...

  8. Flask + WSGI + Nginx 云部署

    这几天学着用flask写一些rest api,然后部署到云上.这个过程虽然网上有很多的教程,但还是遇到不少的问题! 采用flask的原因是因为它比较容易上手吧.用flask有专门restful api ...

  9. Guid和Sequence做主键的比较

    记得A项目组是一个物流管理系统,后台采用了Oracle数据库.在系统中的核心表托运单表中,关于主键采用何种数据类型,是 sequence 还是用GUID , 大家起了争论. 从网络搜索得到的结论看,一 ...

  10. mysql 报错max_allowed_packet处理办法

    首先打开mysql管理工具执行 SHOW VARIABLES LIKE '%max_allowed_packet%'; 看到如图所示的效果 max_allowed_packet    1024slav ...