一、nagios简介

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

Nagios 可以监控的功能有:

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

二、安装Nagios基础支持套件和添加用户

1).安装套件

1
# yum install httpd gcc glibc glibc-common gd gd-devel xinetd openssl-devel

2).创建nagios用户和用户组(先进行该步骤,不然编译nagios时会报错)

1
2
# useradd -s /sbin/nologin nagios
# mkdir /usr/local/nagios# chown -R nagios.nagios /usr/local/nagios

3).安装httpd和php

1
2
# yum install httpd*    ##安装Web服务器Apache相关服务,nagios提供了web监控界面,通过web                             界面可以看到被监控主机运行状态
# yum install php*      ##安装PHP相关服务

三、下载并编译安装Nagios

1).下载并解压nagios

1
2
3
# wget http://nchc.dl.sourceforge.net/project/nagios/nagios-4.x/nagios-4.1.0/nagios-4.1.0rc1.tar.gz 
# tar -zvxf nagios-4.1.0rc1.tar.gz
# cd nagios-4.1.0rc1

2).编译安装nagios

1
# ./configure --prefix=/usr/local/nagios

1
2
3
# make all   ##中间如有选择,直接A
# make install    ##安装主程序,CGI和HTML文件
# make install-init   ##在/etc/rc.d/init.d安装启动脚本

1
# make install-config    ##安装示例配置文件

1
# make install-commandmode    ##配置目录权限

3).配置自启动

1
2
3
# chkconfig --add nagios   ##增加nagios为系统服务
# chkconfig --level 35 nagios on  ##设置nagios在运行级别3、5的情况下为开启状态
# chkconfig --list nagios   ##列出nagios服务设置详情

4).验证程序是否配置正确

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

四、安装Nagios插件

1).下载nagios-plugins

1
2
3
# wget http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz  ##下载nagios-plugins
# tar -zxvf nagios-plugins-2.0.3.tar.gz   ##解压nagios-plugins
# cd nagios-plugins-2.0.3

2).编译安装nagios-plugins

1
2
3
# ./configure --prefix=/usr/local/nagios
# make
# make install

3).下载nagios-snmp-plugins

1
2
3
# wget http://nagios.manubulon.com/nagios-snmp-plugins.1.1.1.tgz 
# tar -zxvf nagios-snmp-plugins.1.1.1.tgz 
# cd nagios-plugins-2.0.3/

4).编译安装nagios-snmp-plugins

1
2
3
# yum install perl-CPAN   ##yum安装Perl-CPAN,CPAN是Perl软件收藏库,收集了大量有用的Perl                            模块(modules)及其相关的文件。nagios-snmp-plugins是一套用Perl编                           写的通过SNMP方式监控主机的插件程序,因此需要先安装perl-CPAN
# perl -MCPAN -e shell
# cpan[1]> install Net::SNMP

五、配置httpd

1
# vi /etc/httpd/conf/httpd.conf

1).将

User apache 
Group apache

修改为如下内容:

2).在如下位置添加index.php

3).配置nagios.conf

1
2
3
4
5
# cd nagios-4.1.0rc1/
# ls
# make install-webconf    ##安装nagios的web接口,会在/etc/httpd/conf.d目录中创建                                       nagios.conf文件
# ls /etc/httpd/conf.d
# vi /etc/httpd/conf.d/nagios.conf

将21行和38行的htpasswd.user改为htpasswd(注:也可不进行更改,但在下部中要加全路径名)

4).创建nagios验证文件

1
2
# htpasswd -c /usr/local/nagios/etc/htpasswd admin  ##创建nagios登录web界面的用户名和密码
# cat /usr/local/nagios/etc/htpasswd    ##查看认证文件的内容

5).关闭SELinux和防火墙:

a、临时关闭(不用重启机器):

1
2
# setenforce 0                       ##设置SELinux 成为permissive模式  (关闭SELinux)
# setenforce 1                       ##设置SELinux 成为enforcing模式     (开启SELinux)

b、修改配置文件需要重启机器:

1
# vi /etc/selinux/config

将SELINUX=enforcing 改为SELINUX=disabled

需重启机器

c、可自己做策略开放相应端口,这里我直接关闭:

1
2
# systemctl status firewalld.service       ##查看防火墙状态
# systemctl stop firewalld.service         ##关闭防火墙

6).启用服务并进入nagios

1
2
3
# systemctl start httpd.service
# systemctl start snmpd.service
# systemctl start nagios.service

打开浏览器,输入http://127.0.0.1/nagios/,再输入前面配置的用户名及密码就进入了nagios的web界面了

六、安装Nagios的问题

安装后打开hosts选项,出现下图

在上面的配置中我们使用了“htpasswd -c /usr/local/nagios/etc/htpasswd admin”来生成管理员账号和密码,nagios默认nagiosadmin作为我们登录的账号和密码,而cgi.cfg就是用来验证该身份的。如果我们生成的管理员账号不是nagiosadmin,验证时就会失败,也就会出现上图的错误。

修改如下:

1
# vi /usr/local/nagios/etc/cgi.cfg

在如上地方添加你所生成的账号,这里就是如上的admin,再使用systemctl restart httpd.service重启http,OK了

本文转自  结束的伤感  51CTO博客,原文链接:http://blog.51cto.com/wangzhijian/1682211

CentOS7安装Nagios相关推荐

  1. CentOS7安装Nagios并配置出图详解

    目录 开始之前 系统环境 监控内容 所需软件包 CentOS7重要变化 配置开发环境 同步时间 关闭Selinux 使用CRT上传软件包 安装邮件服务 监控主机安装 常用到的命令 安装nagios所需 ...

  2. CentOS7 安装的Nagios-4.2.x出现HTTP Warning/403 Forbidden 最终解决方法

    背景: 最近,接触到新公司的Nagios-4.2.x监控平台,但有个小小问题:CentOS7安装的apache-2.4.6,在nagios监控界面出现HTTP Warning/403 Forbidde ...

  3. centos7 nginx配置php7,centos7安装并配置nginx+php,centos7nginx

    centos7安装并配置nginx+php,centos7nginx centos7安装并配置nginx+php 安装nginx yum install nginx 设置nginx开启起动 syste ...

  4. centos7安装配置pgAgent

    centos7安装pgagent: 默认cmake已经安装 编译wxGTK https://excellmedia.dl.sourceforge.net/project/wxwindows/2.8.7 ...

  5. centos7 安装mysql php_Centos7安装mysql与php的方法

    本文主要和大家分享Centos7安装mysql与php的方法,希望能帮助到大家. 相关mysql视频教程推荐:<mysql教程> 官网下载安装mysql-server 依次使用下面三个命令 ...

  6. 安装nagios时出现version 1.21 does not match bootstrap parameter 1.35的解决办法

    安装nagios执行/usr/local/nginx/start_perl_cgi.sh start的时候报错: List::Util object version 1.21 does not mat ...

  7. Centos7安装Apache和PHP,包含配置过程

    本文主要讲的是本人在迁移php网站相关软件的安装和配置过程,以及一下问题的解决步骤.通过阅读本文能够知道如何迁移php网站,如何配置httpd服务使得它能够解析php文件以及如何解决迁移过程中的异常问 ...

  8. CentOS 6.5安装nagios

    linux下nagios安装 系统环境:CentOS 6.5 安装包:httpd-2.2.12.tar.bz2 ,   pcre-8.30.tar.bz2  ,   php-5.4.6.tar.bz2 ...

  9. LINUX CentOS7安装字体库

    LINUX CentOS7安装字体库 2017年12月26日 17:06:07 q260996583 阅读数:4866更多 个人分类: linux JAVA画图时常用到Font 类对象 这样的对象依赖 ...

最新文章

  1. linux下测试磁盘的读写IO速度-简易方法
  2. 研华物联网论坛和ARM技术研讨会随笔
  3. Ubuntu 关机,重启,注销命令
  4. msm8953+android8.1启动异常进入recovery模式_需要格式化data分区恢复启动
  5. 机器学习(二十五)——强化学习(2)
  6. oracle数据库内容替换,国产数据库能否替换oracle数据库?
  7. Hadoop Configuration 源码详解
  8. layui表单验证规则
  9. 蓝桥杯校赛第十二届第二期模拟赛 c语言
  10. android 考试倒计时,考试倒计时软件下载-考试倒计时v1.0 最新版-腾牛安卓网
  11. 五轴转台哪家质量比较好?
  12. 浏览器内核、webview内核
  13. 如何在 Vim 中用换行符替换字符
  14. window10下运行激活软件时会提示病毒文件,并且自动删除问题
  15. sja1000 中断_SJA1000PeliCAN模式下自收发问题
  16. 没时间学 Vue (7) —— 渲染(二):条件渲染 v-if
  17. bMap+Echarts--百度地图使用方法
  18. 在配置Intel realsense (D435i)时遇到的问题(转载)
  19. wx小程序订阅消息概念和应用场景理解(一次性消息一定要人手动触发)
  20. Git 提交代码单词

热门文章

  1. word如何调整字间距离_大篇幅文字如何排版才能赏心悦目?
  2. java solr5.2_solr5.2.1-----环境搭建
  3. android 组件化_你曾遇到的某大厂奇葩问题:Android组件化开发,组件间的Activity页面跳转...
  4. 如何实现消息功能_如何实现微信小程序的轮盘抽奖功能
  5. java怎么求两组整数的或集_Java面试题(判断集合中是否有两个数的和等于某个给定整数)...
  6. java实现并发连接池_java并发实战:连接池实现
  7. 大数据学习笔记:利用JAVA项目操作HBase
  8. Spring Boot基础学习笔记22:自定义用户控制、登录与退出
  9. 数字思维:改变世界的4个方程
  10. 在IntelliJ IDEA里配置Go开发环境