1、下载所需文件nagios-3.4.3.tar.gz,nagios-plugins-1.4.15.tar.gz,nrpe-2.14.tar.gz,sendEmail-v1.56.tar.gz

下载地址:http://pan.baidu.com/s/1ing0G

2、安装所需的依赖包

yum -y install httpd php gcc glibc glibc-common gd gd-devel openssl-devel perl make 

3、配置用户

useradd nagios
groupadd nagcmd
usermod -a -G nagcmd nagios
usermod -a -G nagcmd apache

4、安装nagios-3.4.3.tar.gz

tar zxvf nagios-3.4..tar.gz
cd nagios
./configure --prefix=/usr/local/nagios --with-command-group=nagcmd --with-nagios-user=nagios --with-nagios-group=nagios
make all
make install
make install-init
make install-commandmode
make install-config
make install-webconf htpasswd -c /usr/local/nagios/etc/htpasswd.users admin #访问页面用的 chkconfig --add nagios
chkconfig nagios on

修改nagios配置文件cgi.cfg,将use_authentication=1改为use_authentication=0

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

5、安装nagios-plugins-1.4.15.tar.gz

tar zxvf nagios-plugins-1.4..tar.gz
cd nagios-plugins-1.4.
./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios
make && make install chown -R nagios.nagios /usr/local/nagios/

6、安装nrpe-2.14.tar.gz

tar zxvf nrpe-2.14.tar.gz
cd nrpe-2.14
./configure
make all
make install-plugin

7、安装 sendEmail-v1.56.tar.gz,当主机或服务宕掉或恢复时发送邮件

参考:http://www.cnblogs.com/kgdxpr/p/3326190.html

8、开始配置

修改主配置文件

vi /usr/local/nagios/etc/nagios.cfg

配置文件说明

commands.cfg    命令定义配置文件

contacts.cfg        定义联系人

timeperiods.cfg   定义监控时间段的配置文件

templates.cfg      定义主机和服务的一个模板配置文件

hosts.cfg             定义主机配置文件

services.cfg         定义服务配置文件

配置commands.cfg文件

vi /usr/local/nagios/etc/objects/commands.cfg

先修改发送邮件的命令

define command{
command_name notify-host-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /usr/local/bin/sendEmail -f dsideal_lxyy@.com -t kgdxpr@.com -s smtp..com -u "** $NOTIFICATIONTYPE$ alert -$HOSTADDRESS$/$HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" -xu dsideal_lxyy -xp -m test
} define command{
command_name notify-service-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$\n" | /usr/local/bin/sendEmail -f dsideal_lxyy@.com -t kgdxpr@.com -s smtp..com -u "** $NOTIFICATIONTYPE$ alert -$HOSTADDRESS$/$HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" -xu dsideal_lxyy -xp -m test
}

增加一个命令(用来监控memcache的端口)

define command{
command_name check_port
command_line $USER1$/check_tcp -H $HOSTADDRESS$ -p $ARG2$
}

配置hosts.cfg文件

vi /usr/local/nagios/etc/objects/hosts.cfg

增加一个主机(注意:需要把注释删掉)

define host{
use linux-server #调用的是templates.cfg中的配置
host_name memcached #主机名
alias memcached_server #描述
address 10.10.3.13 #IP地址
}

配置services.cfg文件

vi /usr/local/nagios/etc/objects/services.cfg

增加一个服务(注意:需要把注释删掉)

define service {
use generic-service #调用的是templates.cfg中的配置
host_name memcached #主机名,调用的是hosts.cfg中的配置
service_description test_service_description #说明
check_command check_port #用的命令,调用的是commands.cfg文件中的配置
}

9、启动Apache和nagios

为了不影响实验的结果,请关闭iptables和selinux

service iptables stop

vi /etc/sysconfig/selinux    将SELINUX=enforcing改为SELINUX=disabled (需要重启)
启动Apache前先修改一下配置,不修改的话启动时会报异常。

vi /usr/local/apache/conf/httpd.conf 找到#ServerName www.example.com:80 这行,把注释拿掉,然后改成ServerName localhost:80

chkconfig httpd on
service httpd start
service nagios start

10、访问:http://IP/nagios
用户名和密码是上面设置过的。

CentOS6.4 安装Nagios 并监控端口的更多相关文章

  1. centos6.5安装部署zabbix监控服务端和客户端

    部署zabbix服务端需要LNMP环境(nginx,mysql,php),其它数据库也可以,我这里使用mysql,关于LNMP环境部署,可以参考我的另一遍文章:http://www.cnblogs.c ...

  2. CentOS6.4安装Smokeping节点监控软件

    Smokeping:它是rrdtool的作者制作的,在图形显示方面很漂亮,可以用来很好的检测网络状态和稳定性,下面简单说一下Smokeping的安装以及配置方法. 0.首先关闭selinux和防火墙 ...

  3. Nagios+pnp4nagios+rrdtool 安装配置nagios被监控端NRPE配置(二)

    NRPE监控插件基础 NRPE总共由两部分组成: (1).check_nrpe插件,运行在监控主机上. (2).NRPE daemon,运行在远程的linux主机上(通常就是被监控机) 整个的监控过程 ...

  4. Centos 6.x 安装Nagios及WEB管理nagiosql实现windows及linux监控指南

    一.Nagios简介 Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设置,打印机等.在系统或服务状态异常时发出邮件或短信报 ...

  5. Nagios监控平台之一:在Centos上安装Nagios服务

    1.安装依赖包 #yum install httpd httpd-devel php openssl-devel #yum install gcc glibc glibc-common #yum in ...

  6. Nagios 自定义插件与安装使用之监控dead datanodes

    现在我使用nagios来监控hadoop的核心进程,rm,nm,dn,nn,zkfc,jn,zk等,但是有时候进程虽然还在,但是日志不刷新,web ui上可以看到有些datanodes节点已经变为de ...

  7. Nagios 系统监控基本安装配置过程详解

    Nagios 是一款免费的开源 IT 基础设施监控系统,功能强大,灵活性强,能有效监控 Windows.Linux.VMware 和 Unix 主机状态,交换机.路由器等网络设置等.一旦主机或服务状态 ...

  8. 通过yum安装Nagios

    通过yum安装Nagios 2012年04月05日 ⁄ Nagios ⁄ 暂无评论   QQ空间新浪微博腾讯微博人人网更多3   前提先自行安装好Apache+php 测试环境主监控机:CentOS ...

  9. 基于Apache搭建Nagios图形监控

    基于apache 的稍微简单一点么?实验一下子就OK了... 环境: System: [root@losnau etc]# cat /etc/issueRed Hat Enterprise Linux ...

随机推荐

  1. C语言 单引号和双引号的区别

    最近的C语言课在教字符串,貌似N多同学搞不清楚单引号和双引号的区别,有人还以为在C语言里用哪个都可以...其实C语言中的单引号和双引号含义是一点也不一样滴... 1.含义不同. 用单引号引起的一个字符 ...

  2. python 列表转为字典的两个小方法

    1.现在有两个列表,list1 = ['key1','key2','key3']和list2 = ['1','2','3'],把他们转为这样的字典:{'key1':'1','key2':'2','ke ...

  3. 开博一周总结与随谈[thinking of writing blog for one week]

    8天前,就是5月19号,突发奇想,觉得应该开个博客记录下自己的学习笔记和心得,更重要的是做个自我梳理和总结.大致看了下国内的博客,最后选定cnblogs.之所以选则cnblogs是因为平时搜到不少好文 ...

  4. Android 中获得notification的发出时间

    最近做程序时,有一个类似闹钟的功能,用notification唤醒程序后,希望能得到发出这个notification时的具体时间,就是notification右边写着的那个时间.查了notificat ...

  5. Java for LeetCode 066 Plus One

    Given a non-negative number represented as an array of digits, plus one to the number. The digits ar ...

  6. 10.python之socket和socketserver

    1.socket介绍 socket的英文原义是"孔"或"插座".作为BSD UNIX的进程通信机制,取后一种意思.通常也 称作"套接字",用 ...

  7. 转:JavaScript事件冒泡简介及应用

    (本文转载自别处) JavaScript事件冒泡简介及应用   一.什么是事件冒泡 在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理 ...

  8. js 在myeclipse中报错

    转myeclipse中的js文件报错   整理一下,希望帮到 遇到此问题的哥们.姐们. 方法一:myeclipse9 很特殊 和 myeclipse10 不一样,所以myeclipse9 不能使用该方 ...

  9. php 用封装类的方法操作数据库和批量删除

    封装类 <?php class DBDA { public $host="localhost"; //服务器地址 public $uid="root"; ...

  10. php 简单操作数据库

    <?php header("content-type:text/html;charset=utf-8"); /*//造一个连接 $connect = @mysql_conne ...