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

主要功能:

*网络服务监控(STMP简单电子邮件服务;POP3邮件服务器;HTTP;NNTP;ICMP;SNMP;FTP;SSH)

*主机 资源监控(CPU locd,disk usage,system logs),也包括windows主机(使用NSCLIENT++ Plugin)

*可以指定自己编写的Plugin通过网络收集数据来监控任何情况(温度,警告。。。)

*可以监控支持SSH或SSK加通道方式进行监

可以通过配置Nagio远程 执行插件远程执行脚本

*简单的plugin设计允许用户很容易的开发自己 需要的检查服务,支持很多开发语言(shel scripts,c++,perl,ruby,python,php,c)

*包含很多图形化数据plugins(Nagiosgraph,Nagiosgrapher,PNP4Nagios等)

*可并行服务检查

*能够定义网络主机的层,允许逐级调查,就是从父主机开始向下检查,

*当服务或主机 出现 问题是发出通告 ,可通过emall,pager,sms或任意用户自定义的plugin进行通知

*自动日志 循环

*支持冗余监控

*包web界面可以查看当前网络状态,通知,问题历史,日志文件等

二.Nagios工作原理

Nagiosq的功能是监控服务和主机,但也是 他 自身并不包括这部分功能,所有的监控,检测功能都是通过各种插件来完成的。

启动Nagios后他会周期性的自动调用插件去检查服务器状态 ,同时Nagios会维持一个列队,所有插件返回来的状态信息都进入列队 ,Nagios每次都从队首开始读取信息,并进行处理,把状态结果通过web结果通过显示出来

Nagios提供了许多插件,利用这些插件可以方便的监控很多服务状态,安装完成 后,在Nagios主目录下的/libexec里放有nagios自的可以使用的所有插件,如,check_disk是检查磁盘空间的插件,check_load是检查CPU负载的,等等。每一个插件可以通过运行 ./check_xxx –h 来查看使用方法和功能;

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

再说报警功能,如果 监控系统发现问题不能报警那就没有意义了,所以报警也是nagios很重要的功能之一,但是,同样的,Nagios自身业没有报警部分的代码,甚至没有插件,而是交给用户或者其他 相关开源项目组去完成

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

Nagios通过NRPE来远端管理服务

  1. Nagios执行安装在它里面的check_nrpe插件,并告诉check_nrpe去检测哪些服务。
  2. 通过SSL,check_nrpe连接远端 机子上的NRPE daemon
  3. NRPE运行本地的各种插件去检测本地的服务和状态
  4. 最后,NRPE把检测的结果传给主机端check_nrpe,check_nrpe在把结果 送到Nagios状态队列中,
  5. Nagios依次读取队列中信息,再把结果显示出来
  6. 三.实验环境

    Host Name

    OS

    IP

    Software

    Nagios-Server

    CentOS release 6.3 (Final)

    192.168.1.108

    Apache、Php、Nagios、nagios-plugins

    Nagios-Linux

    CentOS release 5.8 (Final)

    192.168.1.111

    nagios-plugins、nrpe

    Nagios-Windows

    Windows XP

    192.168.1.113

    NSClient++

Server安装了nagios软件,对监控的数据做处理,并且提供web界面查看和管理,当然也可以对本机自身的信息 进行监控

Client安装了NRPE等客户端,根据监控机的请求执行监控,然后将结果回传给监控机。

防火墙已关闭/iptables:Firewall is not  running

SELINUX=disabled

四.实验目标

主机名      要监控的服务

cpu负载

当前登录的非用户数

是否开启80端口

是否活动

Nagios-server     /分区使用情况

是否开启ssh服务

Swap分区使用情况

总进程数

----------------------------------------------------------

磁盘使用情况

Swap分区使用情况

僵尸进程数

Nagios-linux   Cpu负载

当前登录用户数

是否开启80端口

总进程数

-------------------------------------------------------------

内存使用情况

Nagios-windows   NSClient客户端 版本

运行时间

是否开启外3svc服务

五.Nagios服务端安装

5.1.基础支持套件:

Gcc glibc  glibc-common  gd  gd-devel  xinetd  openssl-devel

[root@localhost yum.repos.d]#rpm -q gcc glibc glibc-common gd gd-devel xinetd openssl-devel

[root@localhost yum.repos.d]# rpm -q gcc glibc glibc-common gd gd-devel xinetd

创建Nagios用户和用户组

[root@localhost ~]# useradd -s /sbin/nologin nagios

[root@localhost ~]# mkdir /usr/local/nagios

[root@localhost ~]# chown -R nagios:nagios  /usr/local/nagios

查看nagios目录的权限

[root@localhost ~]# ll -d /usr/local/nagios/

drwxr-xr-x. 2 nagios nagios 4096 4月  23 15:52 /usr/local/nagios/

编译安装nagios

[root@localhost ~]# tar zxvf nagios-4.0.1.tar.gz  -C /usr/src/

[root@localhost nagios-4.0.1]# cd /usr/src/nagios-4.0.1

root@localhost nagios-4.0.1]# ./configure   --prefix=/usr/local/nagios

[root@localhost nagios-4.0.1]# make all

[root@localhost nagios-4.0.1]# make install

[root@localhost nagios-4.0.1]# make install-init

[root@localhost nagios-4.0.1]# make install-commandmode

[root@localhost nagios-4.0.1]# make install-config

[root@localhost nagios-4.0.1]# chkconfig --add nagios

[root@localhost nagios-4.0.1]# chkconfig --level 35 nagios on

[root@localhost nagios-4.0.1]# chkconfig --list nagios

验证程序是否被安装

[A1]

bin:Nagios可执行程序所在目录

etc:Nagios配置文件所在目录

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

share:   nagios网页文件所在的目录

libexec:    nagios外部插件 所在目录

var:   nagios日志文件,lock等文件所在的目录

var/archives:  nagios日志自动归档目

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


[A1]切换到安装路径,也就是”/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插件

[root@localhost ~]# tar zxvf nagios-plugins-1.5.tar.gz  -C /usr/src/

[root@localhost ~]# cd /usr/src/nagios-plugins-1.5/

[root@localhost nagios-plugins-1.5]# ./configureprefix=/usr/local/nagios

[root@localhost nagios-plugins-1.5]# make && make install

安装与配置apache和php

Apache和php不是 安装nagios所必须的,但是nagios提供了web监控界面 ,通过web监控界面,可以清晰的看到被监控主机,资源 的运行状态,因此 ,安装一个web服务是 很必要的

安装apache

配置apache

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

创建apache目录验证文件

#在上面的配置中,之地给立刻目录验证文件htpasswd,这样就在/usr/local/nagios/etc/目录下创建一个htpasswd验证文件,当通URL路径就可以访问时就需要用户名和密码

查看认证文件的内容

[root@localhost ~]# cat /usr/local/nagios/etc/htpasswd

xiaoyu:$apr1$MFNBJhbt$8gQMv4fdErnpKPKy9NBHV.

启动aoache服务

[root@localhost ~]# /etc/init.d/httpd restart

-------------------nagios服务安装基本完成------------------

这时,我们可用web客户端浏览器访问

Nagios部署与配置的更多相关文章

  1. nagios部署配置流程

    nagios部署配置流程 nagios服务端:1.部署nagios服务端(参考nagios官方部署文档).nagios-plugin.php.apache2 2.需要在服务端添/etc/hosts中添 ...

  2. Nagios安装与配置

    安装包获取 Nagios https://sourceforge.net/projects/nagios/files/ Nagios Plugins https://www.nagios.org/do ...

  3. Rhel6-cacti+nagios+ganglia(nginx)配置文档

    (lnmp平台) 系统环境: rhel6 x86_64 iptables and selinux disabled 主机: 192.168.122.185 server85.example.com 1 ...

  4. Rhel6-cacti+nagios+ganglia(apache)配置文档

    (lamp平台) 系统环境: rhel6 x86_64 iptables and selinux disabled 主机: 192.168.122.119 server19.example.com 1 ...

  5. Tigase XMPP Server在CentOS部署和配置

    Tigase XMPP Server在CentOS部署与配置 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 以下讲述Tigase XMPP Server ...

  6. web缓存服务器varnish-4.1.6的部署及配置详解

    web缓存服务器varnish-4.1.6的部署及配置详解 1.安装varnish4.1.6安装依赖 yum install -y autoconf automake jemalloc-devel l ...

  7. 【转】mysql8.0 在window环境下的部署与配置

    [转]mysql8.0 在window环境下的部署与配置 今天在阿里云window服务器上配置mysql环境,踩了一些坑,分享出来.需要的朋友可以看看.额,或许有人要吐槽我为什么不在linux上去配置 ...

  8. nagios系列(五)之nagios图形显示的配置及自定义插件检测密码是否修改详解

    nagios图形显示的配置 在服务端安装相关软件 #1.图形显示管理的依赖库 yum install cairo pango zlib zlib-devel freetype freetype-dev ...

  9. Zookeeper集群部署与配置(三)

    在上一篇博客中我们讲解了<Zookeeper的单机配置>,此篇博客将继续介绍Zookeeper的集群部署与配置. 环境 集群配置的环境与单机配置的环境相同,唯一不同的就是集群是在多台服务器 ...

随机推荐

  1. 前端程序员的蜕变——JS的 event 对象属性、使用实例、兼容性处理(极大提高代码效率、减少代码量)

    下面讨论一下 js 中的 Event 对象,主要从以下三个方面详细的描述(点击标题可跳转到对应部分): 1.什么是event 2.怎么用event,用他该注意什么,几个简单实际应用 3.event在不 ...

  2. JAVAEE学习路线分享

    今天把我的教学经验分享给大家.适合大多数人的学习路线.注:目前作者已经转行做java培训. 首先是培养兴趣.先开始学习HTML知识.也就是做网页,从这里开始比较简单,就是几个标签单词需要记住. 接着开 ...

  3. 解决Jenkins performance-plugin 解析jmeter jtl报告NumberFormatException "timeStamp"

    报错日志: Performance: Failed to parse file '/var/lib/jenkins/jobs/Jmeter/jobs/jmeter-test/builds/14/per ...

  4. django-xadmin ModelAdmin中定义object_list_template无效的问题

    环境:https://github.com/y2kconnect/xadmin-for-python3.git python3.5.2 django1.9.12 object_list_templat ...

  5. JavaScript函数的各种调用模式

    函数是JavaScript世界里的第一公民,换句话来说,就是我们如果可以精通JavaScript函数的使用,那么对JavaScript的运用可以更游刃有余了.熟悉JavaScript的人应该都知道,同 ...

  6. awvs 中文手册详细版

    目录: 0×00.什么是Acunetix Web Vulnarability Scanner ( What is AWVS?) 0×01.AWVS安装过程.主要文件介绍.界面简介.主要操作区域简介(I ...

  7. require.js(浅聊)

    一.require 了解requirejs之前首先明白什么是模块化: 1.什么是模块化? 模块化设计是指在对一定范围内的不同功能或相同功能不同性能.不同规格的产品进行功能分析的基础上,划分并设计出一系 ...

  8. PYC#1欢乐赛第三题题解

    这里是比赛地址:http://tieba.baidu.com/p/2859693237,果然参赛神牛汇集. 第三题题目大意如下: 已知n条二次函数曲线Si(x)=aix^2+bix+ci(ai> ...

  9. vijos1051题解

    题目: 圣诞老人回到了北极圣诞区,已经快到12点了.也就是说极光表演要开始了.这里的极光不是极地特有的自然极光景象.而是圣诞老人主持的人造极光. 轰隆隆--烟花响起(来自中国的浏阳花炮之乡).接下来就 ...

  10. unslider插件的使用

    深入理解unslider.js源码 最近用到了一个挺好用的幻灯片插件,叫做unslider.js,就想看看怎么实现幻灯片功能,就看看源码,顺便自己也学习学习.看完之后收获很多,这里和大家分享一下. u ...