一、软件版本下载

Nagios版本下载地址:

http://prdownloads.sourceforge.net/sourceforge/nagios/

http://sourceforge.net/projects/nagios/files/

Nagios 安装,是指基本平台,也就是Nagios软件包的安装。它是监控体系的框架,也是所有监控的基础。

Nagios plug版本下载地址:

http://prdownloads.sourceforge.net/sourceforge/nagiosplug/

http://sourceforge.net/projects/nagiosplug/files/

http://www.nagios.org/download/plugins

Nagios nrpe版本下载地址:

http://sourceforge.net/projects/nagios/files/

Apache 版本下载地址:

http://archive.apache.org/dist/httpd/

Php 版本下载地址:

http://cn2.php.net/downloads.php

Apr 版本下载地址:

http://apr.apache.org/download.cgi

Apr-Util 版本下载地址:

http://apr.apache.org/download.cgi#aprutil1

Pcre版本下载地址:

ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/

http://sourceforge.net/projects/pcre/files/pcre

Nagios 汉化插件下载地址:

http://sourceforge.net/projects/nagios-cn/files

sendEmail下载地址:

http://caspian.dotconf.net/menu/Software/SendEmail/

net-snmp下载地址:

http://sourceforge.net/projects/net-snmp/files/

openssl下载地址:

http://www.openssl.org/source/

二、介绍和编译安装

Nagios简介

 

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

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显示出来,以供管理员及时发现故障。

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 依次读取队列中的信息,再把结果显示出来。

编译环境: linux6.2(主机内需包含操作系统iso镜像文件)

挂载镜像文件

mount -o loop /home/rhel-server-6.2-x86_64-dvd.iso /mnt/cdrom

去掉挂载文件:umount /mnt/cdrom

基础支持套件:gcc glibc glibc-common gd gd-devel xinetd openssl-devel 

rpm -q gcc glibc glibc-common gd gd-devel xinetd openssl-devel

如果系统中没有这些套件,使用yum 安装

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

本次升级系统只有gd安装包,没有gd-devel安装包,通过ftp://ftp.muug.mb.ca/mirror/centos/ 下载gd-devel的rpm安装包

rpm -ivh gd包

rpm -Uvh 升级gd包

rpm -ivh gd-devl包

1、必须创建nagios用户和用户组

创建用户:useradd nagios

设置用户密码:passwd nagios

创建用户组:groupadd nagios

给已有的用户增加用户组:usermod -G nagios nagios

chown nagios:nagios /home/nagios/

chmod 755 /home/nagios

安装nagios

解压软件包

切换成root帐号,执行后面命令

cd /home/nagios/wangjian

tar -zxvf nagios-4.0.8.tar.gz

cd nagios-4.0.8

3、编译

./configure --prefix=/home/nagios

make all

make install

make install-init

make install-config

make install-commandmode

把Nagios加入到服务列表中以使之在系统启动时自动启动

chkconfig --add nagios

chkconfig --level 35 nagios on

chkconfig --list nagios

切换目录到安装路径(这里是/home/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-plugins 插件

解压软件

tar zxvf nagios-plugins-2.0.3.tar.gz

cd nagios-plugins-2.0.3

./configure --prefix=/home/nagios

make

make install

Apache 和Php 不是安装nagios 所必须的,但是nagios提供了web监控界面,通过web监控界面可以清晰的看到被监控主机、资源的运行状态

安装Apache

切换至nagios帐号

Apr安装

cd /home/nagios;mkdir apr

cd /home/nagios/wangjian

tar zxvf apr-1.5.1.tar.gz

cd apr-1.5.1

./configure --prefix=/home/nagios/apr

make

make install

Apr-Util安装

cd /home/nagios;mkdir apr-util

cd /home/nagios/wangjian

tar zxvf apr-util-1.5.4.tar.gz

cd apr-util-1.5.4

./configure --prefix=/home/nagios/apr-util --with-apr=/home/nagios/apr

make

make install

Pcre安装

cd /home/nagios;mkdir pcre

cd /home/nagios/wangjian

tar zxvf pcre-8.36.tar.gz

cd pcre-8.36

./configure --prefix=/home/nagios/pcre

make

make install

Apache安装

cd /home/nagios;mkdir apache-2.4.9

cd /home/nagios/wangjian

tar zxvf httpd-2.4.9.tar.gz

cd httpd-2.4.9

./configure \

--prefix=/home/nagios/apache-2.4.9 \

--with-pcre=/home/nagios/pcre \

--with-apr=/home/nagios/apr \

--with-apr-util=/home/nagios/apr-util

make

make install

安装Php

cd /home/nagios;mkdir php

cd /home/nagios/wangjian

tar zxvf php-5.6.5.tar.gz

cd php-5.6.5

./configure \

--prefix=/home/nagios/php \

--with-apxs2=/home/nagios/apache-2.4.9/bin/apxs

备注:apxs在安装完apachebin目录下

make

make install

三、软件配置

Apache配置

cd /home/nagios/apache-2.4.9/conf

cp httpd.conf httpd.conf.20150206

打开httpd.conf 文件找到:

User daemon

Group daemon

修改为

User nagios

Group nagios

找到

Listen 80

修改为

Listen 8090

放开LoadModule cgid_module modules/mod_cgid.so

放开LoadModule actions_module modules/mod_actions.so

找到

LogFormat "%h %l %u %t \"%r\" %>s %b" common

修改为

LogFormat "%h %l %u %t \"%r\" %>s %b %D" common

找到

CustomLog "logs/access_log" common

修改为

CustomLog "| /home/nagios/apache-2.4.9/bin/rotatelogs  /home/nagios/apache-2.4.9/logs/access_log.%Y%m%d 86400 480" common

找到

<IfModule dir_module>

  DirectoryIndex index.html

</IfModule>

修改为

<IfModule dir_module>

  DirectoryIndex index.html index.php

</IfModule>

找到

#ServerName www.example.com:80

添加

ServerName SHPD-PA-RADIUS-SV56-HSS22/test

接着增加如下内容:

AddType application/x-httpd-php .php .php5

AddType application/x-httpd-php-source .phps

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

#setting for nagios

ScriptAlias /nagios/cgi-bin "/home/nagios/sbin"

<Directory "/home/nagios/sbin">

AuthType Basic

Options ExecCGI

AllowOverride None

Order allow,deny

Allow from all

AuthName "Nagios Access"

AuthUserFile /home/nagios/etc/htpasswd

Require valid-user

</Directory>

Alias /nagios "/home/nagios/share"

<Directory "/home/nagios/share">

AuthType Basic

Options None

AllowOverride None

Order allow,deny

Allow from all

AuthName "nagios Access"

AuthUserFile /home/nagios/etc/htpasswd

Require valid-user

</Directory>

创建apache目录验证文件

在上面的配置中,指定了目录验证文件htpasswd,下面要创建这个文件: /home/nagios/apache-2.4.9/bin/htpasswd -c /home/nagios/etc/htpasswd wangjian

在htpasswd文件中新增登录帐号

/home/nagios/apache-2.4.9/bin/htpasswd -b /home/nagios/etc/htpasswd 帐号 密码

查看认证文件的内容

cat /home/nagios/etc/htpasswd

启动apache

/home/nagios/apache-2.4.9/bin/httpd -k start

停止apache

/home/nagios/apache-2.4.9/bin/httpd -k stop

通过浏览器访问nagios页面

URL:http://IP:8090/nagios

Nagios安装部署和介绍(一)的更多相关文章

  1. nagios安装部署及详细配置说明(转)

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

  2. Nagios安装部署

    p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; line-height: 150%; fon ...

  3. Kubernetes安装部署演示介绍

    四.安装k8s 1.安装 使用的是k8s 1.2.4版本. 将kubernetes.tar.gz 上传主机,并解压. tar -xzvf kubernetes.tar.gz cd kubernetes ...

  4. linux下安装部署ansible

    linux下安装部署ansible 介绍 Ansible是一种批量部署工具,现在运维人员用的最多的三种开源集中化管理工具有:puppet,saltstack,ansible,各有各的优缺点,其中sal ...

  5. 1.Hadoop集群安装部署

    Hadoop集群安装部署 1.介绍 (1)架构模型 (2)使用工具 VMWARE cenos7 Xshell Xftp jdk-8u91-linux-x64.rpm hadoop-2.7.3.tar. ...

  6. Nagios安装与部署

    Nagios概述: Nagios是一款开源免费(也有收费版的Nagios XI)的监控工具,可以用以监控Windows.Linux.Unix.Router.Switch,可以监控指定主机的物理基础资源 ...

  7. CentOS 7.4 下安装部署Nagios监控系统详细攻略(三)

    Nagios是一个流行的电脑系统和网络监控程序,它检测主机和服务,当异常发生和解除时能提醒用户.它是基于GPLv2开发的开源软件,可免费获得及使用. nagios工作原理 nagios的功能是监控服务 ...

  8. Hadoop入门进阶课程13--Chukwa介绍与安装部署

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博主为石山园,博客地址为 http://www.cnblogs.com/shishanyuan  ...

  9. Solr7 安装部署 管理界面介绍

    Solr7 安装部署 管理界面介绍 本章重点介绍CentOS 安装部署Solr7 ,Solr的管理界面介绍,添加核心Core配置,Dataimport导入数据,Documents 在线维护索引,Que ...

随机推荐

  1. 部署Zipkin分布式性能追踪日志系统的操作记录

    Zipkin是Twitter的一个开源项目,是一个致力于收集Twitter所有服务的监控数据的分布式跟踪系统,它提供了收集数据,和查询数据两大接口服务. 部署Zipkin环境的操作记录:部署Zipki ...

  2. android Camera 中如何修改缩放变焦参数

    如何修改 zoomRatio   修改过程:   1, 先找到 gZoomRatio 数组序列的值   Location: V:\project_code\project_name\ALPS.JB.M ...

  3. C语言 文件操作5--文件的常用函数

    #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> //stdin:标准输入文件指针,系统 ...

  4. 一份高级Java招聘要求

    搜了一些招聘,发现自己还有很长的路要走啊,学无止境...... 摘一个典型的招聘要求,如下: 1.5年基于java的项目开发经验,2.熟悉基于 J2EE的相关开源技术以及Spring,Struts2, ...

  5. Android开发探秘之二:导入存在的项目及其注意事项

    网上看到有jsoup写的例子,就下载下来进行了研究,但是发现不会导入,于是就百度一下,发现了方法:也就是依次点击“File”->“Import”->“General”->“Exist ...

  6. IOS开发之——reveal 的使用

    Reveal是一个iOS程序界面调试工具.使用Reveal,我们可以在iOS开发时动态地查看和修改应用程序的界面. 对于动态或复杂的交互界面,手写UI是不可避免的.通过Reveal,我们可以方便地调试 ...

  7. StretchDIBits函数

    该函数将DIB中矩形区域内像素使用的颜色数据拷贝到指定的目标矩形中.如果目标矩形比源矩形大小要大,那么函数对颜色数据的行和列进行拉伸,以与目标矩形匹配.如果目标矩形大小要比源矩形小,那么该函数通过使用 ...

  8. .NET Core手记 - Json.NET的使用

    Json.NET大家很熟悉了,很流行的高性能Json库,很棒的是Json.NET也支持了.NET Standard框架,也就意味着我们可以在.NET Core项目里使用了. 创建一个.NET Core ...

  9. node 学习笔记 - fs 文件操作

    本文同步自我的个人博客:http://www.52cik.com/2015/12/03/learn-node-fs.html 最近看到群里不少大神都开始玩 node 了,我感觉跟他们步伐越来越大了, ...

  10. 【hello,world 也打脸】记storm-starter在某知名IDE下的悲催调试经历

    背景 最近收到这样一个问题: Storm处理消息时会根据Topology生成一棵消息树,Storm如何跟踪每个消息.如何保证消息不丢失以及如何实现重发消息机制? 虽已回复,但心想还是看下storm这块 ...