简介
Nagios是一款用于系统和网络监控的应用程序。它可以在你设定的条件下对主机和服务进行监控,在状态变差和变好的时候给出告警信息。
Nagios最初被设计为在Linux系统之上运行,然而它同样可以在类Unix的系统之上运行。
Nagios更进一步的特征包括:

免费内容:

监控网络服务(SMTP、POP3、HTTP、NNTP、PING等);
监控主机资源(处理器负荷、磁盘利用率等);
简单地插件设计使得用户可以方便地扩展自己服务的检测方法;
并行服务检查机制;
具备定义网络分层结构的能力,用"parent"主机定义来表达网络主机间的关系,这种关系可被用来发现和明晰主机宕机或不可达状态;
当服务或主机问题产生与解决时将告警发送给联系人(通过EMail、短信、用户定义方式);
具备定义事件句柄功能,它可以在主机或服务的事件发生时获取更多问题定位;
自动的日志回滚;
可以支持并实现对主机的冗余监控;

可选的WEB界面用于查看当前的网络状态、通知和故障历史、日志文件等;

Nagios跟Cacti一样,也是需要一个LAMP的环境,MySQL可以安装,也可以不安装,一般情况Nagios都是把数据放入文件中的。如果需要把文件放入到数据库,则需要安装MySQL

一、准备工作,搭建LAMP

搭建LAMP的方法可以使用源码编译安装,也可以使用rpm包的形式来安装,为了简化步骤,这里使用rpm包的形式来安装。

1、配置好YUM源,如果配置好的,可以省略此步骤

复制内容到剪贴板

代码:

# vim /etc/yum.repos.d/cacti.repo     //新建文件或者在已有文件中添加以下内容
[dag]
name=Dag RPM Repository for
Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
enabled=1

2、安装LAMP

复制内容到剪贴板

代码:

# yum install -y mysql mysql-server php-mysql httpd php php-pdo lm_sensors net-snmp php-snmp net-snmp-utils perl-Net-Daemon perl-PlRPC perl-DBI rrdtool perl-rrdtool perl-DBD-MySQL net-snmp-libs libart_lgpl-devel

3、启动服务及设置开机启动

复制内容到剪贴板

代码:

# service httpd start
# service mysqld start

# chkconfig httpd on
# chkconfig mysqld on

4、防火墙开户端口或者关掉防火墙

复制内容到剪贴板

代码:

# service iptables stop          //关闭防火墙
# iptables -t filter -I INPUT -p tcp --dport 80 -j ACCEPT     //防火墙开户端口

5、验证LAMP是否正常工作

复制内容到剪贴板

代码:

# vim /var/www/html/index.php
<?
phpinfo();
?>

使用WEB访问http://IP/index.php,如果可以看到PHP的信息,说明LAMP配置成功

二、安装Nagios

1、添加用户和组

复制内容到剪贴板

代码:

# groupadd nagcmd
# useradd -m nagios
# usermod -a -G nagcmd nagios
把apache加入到nagcmd组,以便于在通过web Interface操作nagios时能够具有足够的权限:
# usermod -a -G nagcmd apache

2、下载Nagios,开始编译安装

复制内容到剪贴板

代码:

#http://sourceforge.net/projects/nagios/?source=directory
# tar zxf nagios-3.1.2.tar.gz
# cd nagios-3.1.2
# ./configure --with-command-group=nagcmd

# make all
# make install
# make install-init
# make install-config
# make install-commandmode

执行如下命令,实现在httpd的配置文件目录(conf.d)中创建Nagios的Web程序配置文件:
# make install-webconf

创建一个登录nagios web程序的用户,这个用户帐号在以后通过web登录nagios认证时所用:
# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

以上过程配置结束以后需要重新启动httpd:
# service httpd restart

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

复制内容到剪贴板

代码:

# tar zxf nagios-plugins-1.4.15.tar.gz
# cd nagios-plugins-1.4.15
# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
# make
# make install

4、配置并启动Nagios
(1)把nagios添加为系统服务并将之加入到自动启动服务队列:

复制内容到剪贴板

代码:

# chkconfig --add nagios
# chkconfig nagios on

(2)检查其主配置文件的语法是否正确:

复制内容到剪贴板

代码:

# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

(3)如果上面的语法检查没有问题,接下来就可以正式启动nagios服务了:

复制内容到剪贴板

代码:

# service nagios start

(4)配置selinux
如果您的系统开启了selinux服务,则默认为拒绝nagios web cgi程序的运行。您可以通过下面的命令来检查您的系统是否开启了selinux:
#getenforce

如果上面命令的结果显示开启了selinux服务,您可以通过下面的命令暂时性的将其关闭:
#setenforce 0
如果您想在以后完全关闭selinux,可以通过编辑/etc/sysconfig/selinux文件,将其中的selinux后面的值“force”修改为“disable”即可。
当然,您也可以通过以下方式将nagios的CGI程序运行于SELinux/targeted模式而不用关闭selinux:

复制内容到剪贴板

代码:

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

(5)通过web界面查看nagios:
http://your_nagios_IP/nagios
登录时需要指定前面设定的web认证帐号和密码。

(6)安装NRPE

复制内容到剪贴板

代码:

# wget http://sourceforge.net/projects/ ... 13/nrpe-2.13.tar.gz
# tar zxvf nrpe-2.12.tar.gz
# cd nrpe-2.12
# ./configure
# make all
# cp src/check_nrpe /usr/local/nagios/libexec/

三、被监控端

如果被监控端是Linux,那么需要安装NRPE和nagios-plugin
如果是Windows,需要安装NSClien++
1、Linux

1.1、编译、安装nagios-plugins

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

复制内容到剪贴板

代码:

# tar zxf nagios-plugins-1.4.15.tar.gz
# cd nagios-plugins-1.4.15
# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
# make
# make install

1.2、安装配置NRPE

复制内容到剪贴板

代码:

# wget http://sourceforge.net/projects/nagios/files/nrpe-2.x/nrpe-2.13/nrpe-2.13.tar.gz
# tar zxvf nrpe-2.12.tar.gz
# cd nrpe-2.12
# ./configure
# make all
# make install-plugin
# make install-daemon
# make install-daemon-config
# make install-xinetd
# cp src/check_nrpe /usr/local/nagios/libexec/

# vim /usr/local/nagios/etc/nrpe.cfg
allowed_hosts=127.0.0.1,SERVER_IP

# vim /etc/xinetd.d/nrpe

# default: on
# description: NRPE (Nagios Remote Plugin Executor)
service nrpe {
     flags     = REUSE
     socket_type =stream
     port = 5666
     wait = no
     user = nagios
     group = nagios
     server = /usr/local/nagios/bin/nrpe
     log_on_failure += USERID
     disable = no
     only_from = 127.0.0.1 IP
}

# vim /etc/services
nrpe     5666/tcp     #nrpe
# service xinetd start

1.3 为服务端增加NRPE命令

复制内容到剪贴板

代码:

# vim /usr/local/nagios/etc/objects/commands.cfg
define command {
        command_name check_nrpe
        command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

转载于:https://blog.51cto.com/tfbaby/1551524

Nagios 安装教程相关推荐

  1. Nagios安装教程

    Nagios安装教程 本文将介绍基于openSUSE平台的安装教程这些指令在基于openSUSE10.2的系统下写成的.参考于http://nagios-cn.sourceforge.net/nagi ...

  2. nagios安装与配置教程(详细版)【入门教程】2020-11-16

    Nagios基础入门 这里写目录标题 Nagios基础入门 一.前言 二.Nagios简介 三 .Nagios构成 四 .Nagios原理 五 .安装介绍 六. Nagios服务端安装 七 .被监控客 ...

  3. nagios 安装步骤-1

    Nagios 配置教程详解 安装环境:linux rehl5.1 ,软件为nagios-3.2.0,和插件nagios-plugins-1.4.13,系统需要httpd php gcc glibc , ...

  4. Nagios安装监控

    Nagios基础入门 一.前言 日前,我接触学习了Nagios,在看到网上各路神仙写的杂七杂八的Nagios安装配置教程,亲自尝试许多的教程过后,"骂骂咧咧"的写下这篇关于Nagi ...

  5. 【网站汇总】安装教程系列

    目录 1.Anaconda 2.Pytorch 3.Tensorflow 4.LaTeX 5.博客搭建 1.Anaconda [CV]Anaconda 安装教程_Fannnnf的博客-CSDN博客 2 ...

  6. oracle 11g完全安装教程(CentOS)

    oracle下载链接:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html oracle ...

  7. vs安装一直在提取文件_Visual Studio 2019下载及安装教程

    宸1分钟前 这可是我珍藏多年的资源啊. Visual Studio 2019 Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品.是目前最流行的Windows ...

  8. 这套完美的Java环境安装教程,完整,详细,清晰可观,让你一目了然,简单易懂。⊙﹏⊙...

    JDK下载与安装教程 2017年06月18日 22:53:16 Danishlyy1995 阅读数:349980 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csd ...

  9. iOS7系统iLEX RAT冬青鼠安装教程:无需刷机还原纯净越狱系统

    全网科技 温馨提醒:iLEX RAT和Semi-Restore的作用都是让你的已越狱的设备恢复至越狱的初始状态. 可是要注意无论你是用iLexRAT冬青鼠还是Semi-restore.对于还原来说都存 ...

最新文章

  1. MQTT在Windows下搭建MQTT服务器
  2. IIS 的负载均衡【IIS7.0以上才可以使用】---- Application Request Routing(ARR)
  3. Module 'matplotlib' has no 'contourf' member 使用Python导入matplotlib模块报错
  4. angularjs的$on、$emit、$broadcast
  5. 2-快速排序C递归实现(递增递减的简单转换)
  6. note同步不及时 one_朱海舟回应锤子便签同步不及时:工程师已经解决
  7. pytesseract:opencv预处理图片
  8. C语言手写二叉树(链式存储结构)
  9. “拉勾2020年超级雇主”奖项颁布:美团、腾讯等获得“巅峰雇主”奖
  10. SpringBoot系列: 与Spring Rest服务交互数据
  11. Ubuntu 14.04 安装配置 cairo-dock 实现美化+特效
  12. 坐标转换计算七参数matlab代码,坐标系转换:已知控制点计算七参数并对数据批量转换...
  13. php 设置页面最大执行时间 set_time_limit max_execution_time
  14. 安装百度库,C调用Python出错,卸载、再重装消失
  15. 2020 恒生电子 面经
  16. 解决octavia failed to run
  17. 计算机二级考试考的什么内容,计算机二级考试内容考些什么
  18. label smooth标签平滑【ConvE(知识图谱补全-链接预测)中使用到】
  19. 在微信H5网页中获取用户基本信息
  20. hdu2197 本源串

热门文章

  1. linux系统输入法怎么安装教程视频教程,Linux怎么安装中文输入法
  2. android各层调用关系,架构流程
  3. Wise Package Studio介绍
  4. 一些上流的CSS3图片样式
  5. 使用 HTML5 canvas 进行 Web 绘图
  6. 一种基于局部线性嵌入的半监督方法——半监督局部线性嵌入(SSLLE),MATLAB程序代码
  7. MongoDB基本概念和常用操作(一)
  8. Docker-构建/启停容器镜像及常用命令介绍
  9. django-聚合函数
  10. mongodb自动备份脚本