1.Nagios工作原理

Nagios周期性调用插件检测服务器状态,并维持一个队列,所有插件返回状态信息都进入队列,Nagios每次从队首开始读取信息,并把状态通过web显示。

安装完成后,在nagios主目录下/libexec放有nagios自带所有插件,如check_disk检查磁盘空间插

2.安装阿里源

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all && yum makecache fast
#安装epel源
yum install -y epel-release
yum makecache fast

3.服务器端

#安装httpd和php
yum install -y httpd
yum install -y php php-cli php-common
#下载
cd /opt
wget http://nagios-plugins.org/download/nagios-plugins-2.2.1.tar.gz
wget https://github.com/NagiosEnterprises/nrpe/archive/nrpe-3.0.tar.gz
[root@localhost opt]# ll
总用量 14052
-rw-r--r-- 1 root root 11155576 3月 7 17:04 nagios-4.2.1.tar.gz
-rw-r--r-- 1 root root 2695301 3月 7 17:04 nagios-plugins-2.1.2.tar.gz
-rw-r--r-- 1 root root 518015 3月 7 17:04 nrpe-3.2.1.tar.gz

#解压
tar axf nagios-4.2.1.tar.gz
tar axf nagios-plugins-2.1.2.tar.gz
tar axf nrpe-3.2.1.tar.gz

4.安装依赖包

#服务器端
yum install -y gcc glibc gcc-c++ make cmake unzip glibc-common gd gd-devel php perl-devel mysql-server openssl-devel
#客户端依赖 
yum install -y gcc glibc make cmake glibc-common gd gd-devel php perl-devel mysql-server openssl-devel

5.编译安装nagios

mkdir /usr/local/nagios
cd nagios-4.2.1
./configure --prefix=/usr/local/nagios
make

make install

make install-config  # 把配置文件样例复制到nagios的安装目录
make install-commandmode # 给外部命令访问nagios配置文件的权限
make install-init  # 把nagios做成一个运行脚本,使nagios随系统开机启动

6.编译安装nagios-plugin

cd /opt/nagios-plugins-2.1.2
./configure --prefix=/usr/local/nagios
make && make install && echo $?

7.编译安装nrpe

cd /opt/nrpe-3.2.1
./configure --prefix=/usr/local/nagios --enable-command-args
编译
make all
安装
添加nagios用户
make install-groups-users
安装
make install
添加主配置文件
make install-config
配置xinetd
make install-inetd
设置nrpe管理命令
make install-init
编译插件
make check_nrpe
安装插件
make install-plugin

7.修改nrpe配置

#先备份
cp /usr/local/nagios/etc/nrpe.cfg{,.bak}
#将hda1改为sda
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda
#启动nrpe
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

8.修改httpd配置

#先备份
cp /etc/httpd/conf/httpd.conf{,.bak}
vim /etc/httpd/conf/httpd.conf
#在文件最后添加

ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"
<Directory "/usr/local/nagios/sbin">
AuthType Basic
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthUserFile /usr/local/nagios/etc/htpasswd
Require valid-user
</Directory>
Alias /nagios "/usr/local/nagios/share"
<Directory "/usr/local/nagios/share">
AuthType Basic
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "nagios Access"
AuthUserFile /usr/local/nagios/etc/htpasswd
Require valid-user
</Directory>

#启动httpd
systemctl restart httpd

参考: http://blog.51cto.com/13323775/2085624

9.修改nagios配置

htpasswd -c /usr/local/nagios/etc/htpasswd admin

nagios-4.0.8 安装部署的更多相关文章

  1. Storm-0.9.0.1安装部署 指导

    可以带着下面问题来阅读本文章: 1.Storm只支持什么传输 2.通过什么配置,可以更改Zookeeper默认端口 3.Storm UI必须和Storm Nimbus部署在同一台机器上,UI无法正常工 ...

  2. kafka_2.11-2.0.0_安装部署

    参考博文:kafka 配置文件参数详解 参考博文:Kafka[第一篇]Kafka集群搭建 参考博文:如何为Kafka集群选择合适的Partitions数量 参考博文:Kafka Server.prop ...

  3. 大数据篇:DolphinScheduler-1.2.0.release安装部署

    大数据篇:DolphinScheduler-1.2.0.release安装部署 1 配置jdk #查看命令 rpm -qa | grep java #删除命令 rpm -e --nodeps xxx ...

  4. [DPI][suricata] suricata-4.0.3 安装部署

    suricata 很值得借鉴.但是首先还是要安装使用,作为第一步的熟悉. 安装文档:https://redmine.openinfosecfoundation.org/projects/suricat ...

  5. Zabbix,Nagios,OneAPM Servers 安装部署大比拼

    怎样高速实现对 Linux server的监控? 做过server监控的开发人员差点儿都知道 Zabbix 和 Nagios ,他们都是提供系统监控以及网络监控功能的开源解决方式.资历比較老.在不久前 ...

  6. zabbix4.0.1 安装部署

    zabbix安装部署 目录 一.环境准备... 3 1.1.版本:... 3 1.2.部署环境... 3 二.安装部署... 3 2.1.zabbix安装... 3 2.1.1.下载zabbix的rp ...

  7. presto 0.166安装部署

    系统:linux java:jdk 8,64-bit Connector:hive 分布式,node1-3 node1:Coordinator . Discovery service node2-3: ...

  8. Hbase-2.0.0_01_安装部署

    该文章是基于 Hadoop2.7.6_01_部署 进行的 1. 主机规划 主机名称 IP信息 内网IP 操作系统 安装软件 备注:运行程序 mini01 10.0.0.11 172.16.1.11 C ...

  9. Hadoop1.0.3安装部署

    0x00 大数据平台相关链接 官网:http://hadoop.apache.org/ 主要参考教程:http://www.cnblogs.com/xia520pi/archive/2012/05/1 ...

随机推荐

  1. solidity 语法学习

    基于 cryptozombies.io ZombieFactory pragma solidity ^0.4.19; contract ZombieFactory { // 事件, web3.js 可 ...

  2. Vue 框架-07-循环指令 v-for,和模板的使用

    Vue 框架-07-循环指令 v-for,和模板的使用 本章主要是写一些小实例,记录代码,想要更详细的话,请查看 官方文档:https://cn.vuejs.org/v2/guide/#%E6%9D% ...

  3. 前端模块化方案全解(CommonJS/AMD/CMD/ES6)

    模块化的开发方式可以提高代码复用率,方便进行代码的管理.通常一个文件就是一个模块,有自己的作用域,只向外暴露特定的变量和函数.目前流行的js模块化规范有CommonJS.AMD.CMD以及ES6的模块 ...

  4. centos7 安装mariadb最新版并配置

    打开http://mirrors.aliyun.com/,查找mariadb,然后拼装地址http://mirrors.aliyun.com/mariadb/yum打开,点开你想要的版本,选择你的操作 ...

  5. 如何进行 Python性能分析,你才能如鱼得水?

    [编者按]本文作者为 Bryan Helmig,主要介绍 Python 应用性能分析的三种进阶方案.文章系国内 ITOM 管理平台 OneAPM 编译呈现. 我们应该忽略一些微小的效率提升,几乎在 9 ...

  6. spring配置datasource

    1.使用org.springframework.jdbc.datasource.DriverManagerDataSource  说明:DriverManagerDataSource建立连接是只要有连 ...

  7. ext button 属性

    var buttonName = new Ext.Button({               id:"buttonName",               text:" ...

  8. [翻译] ASFTableView

    ASFTableView A customizable Web like multi column table view for iOS with header and inner rows. 一个类 ...

  9. 基于NSString处理文件的高级类

    基于NSString处理文件的高级类 我已经把处理文件的类简化到了变态的程度,如果你还有更简洁的方法,请告知我,谢谢! 使用详情: 源码: // // NSString+File.h // Maste ...

  10. JAVA入门之基础语言

    在上一章文章中,读者已经了解了如何搭建Java 开发环境及Java 程序的开发过程.从本篇文章开始讲解Java 的基本语言.这些基本语言的语法和其他一些编程语言相比有些是类似的,但还有很多不同之处,读 ...