Nagios安装部署和介绍(一)
一、软件版本下载
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在安装完apache的bin目录下
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页面
Nagios安装部署和介绍(一)的更多相关文章
- nagios安装部署及详细配置说明(转)
一.Nagios简介 Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设置,打印机等.在系统或服务状态异常时发出邮件或短信报 ...
- Nagios安装部署
p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; line-height: 150%; fon ...
- Kubernetes安装部署演示介绍
四.安装k8s 1.安装 使用的是k8s 1.2.4版本. 将kubernetes.tar.gz 上传主机,并解压. tar -xzvf kubernetes.tar.gz cd kubernetes ...
- linux下安装部署ansible
linux下安装部署ansible 介绍 Ansible是一种批量部署工具,现在运维人员用的最多的三种开源集中化管理工具有:puppet,saltstack,ansible,各有各的优缺点,其中sal ...
- 1.Hadoop集群安装部署
Hadoop集群安装部署 1.介绍 (1)架构模型 (2)使用工具 VMWARE cenos7 Xshell Xftp jdk-8u91-linux-x64.rpm hadoop-2.7.3.tar. ...
- Nagios安装与部署
Nagios概述: Nagios是一款开源免费(也有收费版的Nagios XI)的监控工具,可以用以监控Windows.Linux.Unix.Router.Switch,可以监控指定主机的物理基础资源 ...
- CentOS 7.4 下安装部署Nagios监控系统详细攻略(三)
Nagios是一个流行的电脑系统和网络监控程序,它检测主机和服务,当异常发生和解除时能提醒用户.它是基于GPLv2开发的开源软件,可免费获得及使用. nagios工作原理 nagios的功能是监控服务 ...
- Hadoop入门进阶课程13--Chukwa介绍与安装部署
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博主为石山园,博客地址为 http://www.cnblogs.com/shishanyuan ...
- Solr7 安装部署 管理界面介绍
Solr7 安装部署 管理界面介绍 本章重点介绍CentOS 安装部署Solr7 ,Solr的管理界面介绍,添加核心Core配置,Dataimport导入数据,Documents 在线维护索引,Que ...
随机推荐
- 部署Zipkin分布式性能追踪日志系统的操作记录
Zipkin是Twitter的一个开源项目,是一个致力于收集Twitter所有服务的监控数据的分布式跟踪系统,它提供了收集数据,和查询数据两大接口服务. 部署Zipkin环境的操作记录:部署Zipki ...
- android Camera 中如何修改缩放变焦参数
如何修改 zoomRatio 修改过程: 1, 先找到 gZoomRatio 数组序列的值 Location: V:\project_code\project_name\ALPS.JB.M ...
- C语言 文件操作5--文件的常用函数
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> //stdin:标准输入文件指针,系统 ...
- 一份高级Java招聘要求
搜了一些招聘,发现自己还有很长的路要走啊,学无止境...... 摘一个典型的招聘要求,如下: 1.5年基于java的项目开发经验,2.熟悉基于 J2EE的相关开源技术以及Spring,Struts2, ...
- Android开发探秘之二:导入存在的项目及其注意事项
网上看到有jsoup写的例子,就下载下来进行了研究,但是发现不会导入,于是就百度一下,发现了方法:也就是依次点击“File”->“Import”->“General”->“Exist ...
- IOS开发之——reveal 的使用
Reveal是一个iOS程序界面调试工具.使用Reveal,我们可以在iOS开发时动态地查看和修改应用程序的界面. 对于动态或复杂的交互界面,手写UI是不可避免的.通过Reveal,我们可以方便地调试 ...
- StretchDIBits函数
该函数将DIB中矩形区域内像素使用的颜色数据拷贝到指定的目标矩形中.如果目标矩形比源矩形大小要大,那么函数对颜色数据的行和列进行拉伸,以与目标矩形匹配.如果目标矩形大小要比源矩形小,那么该函数通过使用 ...
- .NET Core手记 - Json.NET的使用
Json.NET大家很熟悉了,很流行的高性能Json库,很棒的是Json.NET也支持了.NET Standard框架,也就意味着我们可以在.NET Core项目里使用了. 创建一个.NET Core ...
- node 学习笔记 - fs 文件操作
本文同步自我的个人博客:http://www.52cik.com/2015/12/03/learn-node-fs.html 最近看到群里不少大神都开始玩 node 了,我感觉跟他们步伐越来越大了, ...
- 【hello,world 也打脸】记storm-starter在某知名IDE下的悲催调试经历
背景 最近收到这样一个问题: Storm处理消息时会根据Topology生成一棵消息树,Storm如何跟踪每个消息.如何保证消息不丢失以及如何实现重发消息机制? 虽已回复,但心想还是看下storm这块 ...