使用nagios监控oracle

运维 系统运维
这篇文章主要讲述的是如何使用nagios监控oracle。Nagios是提供了一个可选的基于WEB界面,方便于系统管理人员查看网络状态,各种系统问题,以及日志等,能够运行在Linux/Unix平台上。本文讲述的是使用nagios监控oracle。

  使用nagios监控oracle

 

  环境:Oracle 10g

  CentOS 4.6 i386

  Nagios 3.06

  一、在 Oracle 所在服务器上安装 NRPE

  1.   #useradd nagios  
  2.  
  3.   # wget http://nchc.dl.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz  
  4.  
  5.   # tar xvfz nrpe-2.12.tar.gz  
  6.  
  7.   # cd nrpe-2.12  
  8.  
  9.   # ./configure --prefix=/usr/local/nagios  
  10.  
  11.   # make all  
  12.  
  13.   # make install-plugin  
  14.  
  15.   # make install-daemon  
  16.  
  17.   # make install-daemon-config  
  18.  
  19.   # make install-xinetd  
  20.  

  注意点:

  1.由于 nagios 脚本需要读取 oracle 相关文件。所以运行 nagios 的用户需要定义为 oracle 服务用户。并且修改 /etc/xinted.d/nrpe 中的配置。

  1.   service nrpe  
  2.  
  3.   {  
  4.  
  5.   flags = REUSE 
  6.  
  7.   socket_type = stream 
  8.  
  9.   port = 5666 
  10.  
  11.   wait = no 
  12.  
  13.   user = oracle 
  14.  
  15.   group = nagios 
  16.  
  17.   server = /usr/local/nagios/bin/nrpe  
  18.  
  19.   server_args = -c /usr/local/nagios/etc/nrpe.cfg --inetd  
  20.  
  21.   log_on_failure += USERID  
  22.  
  23.   disable = no 
  24.  
  25.   only_from = 127.0.0.1 10.0.0.99  
  26.  
  27.   }  
  28.  

  2.将nagios服务器上libexec目录中的check_oracle和utils.sh拷贝到oracle服务器的libexec目录中,并修改 check_oracle 脚本。将 $ORACLE_HOME 以及 $PATH 手动加入。

  1.   ORACLE_HOME=/home/oracle/OraHome_1  
  2.  
  3.   PATH=$PATH:$ORACLE_HOME/bin  
  4.  

  二、 配置 nrpe 服务

  修改 /usr/local/nagios/etc/nrpe.cfg 文件。加入以下内容:

  1.   #Check Oracle  
  2.  
  3.   command[check_oracle_tns]=/usr/local/nagios/libexec/check_oracle --tns sid user password  
  4.  
  5.   command[check_oracle_db]=/usr/local/nagios/libexec/check_oracle --db sid user password  
  6.  
  7.   command[check_oracle_login]=/usr/local/nagios/libexec/check_oracle --login sid user password  
  8.  
  9.   command[check_oracle_cache]=/usr/local/nagios/libexec/check_oracle --cache sid user password 80 90  
  10.  
  11.   command[check_oracle_tablespace]=/usr/local/nagios/libexec/check_oracle --tablespace sid user password USERS 90 80  
  12.  

  具体参数写法请参考 check_oracle –help。

  添加nrpe端口号:

  1.   vi /etc/services  
  2.  

  添加这个

  1.   nrpe 5666/tcp # NRPE  
  2.  

  配置完成后,重启 xinetd 服务。

  1.   # service xinetd restart  
  2.  

  测试nrpe:

  1.   ./check_nrpe -H 127.0.0.1  
  2.  
  3.   NRPE v2.12  
  4.  

  说明nrpe安装成功。

  三、配置 Nagios 服务端

  1.安装 nrpe 脚本支持。—参考官方文档。

  2.在nagios服务器端添加 nrpe 命令配置。修改 nagios/etc/objects/command.cfg 文件:

  1.   define command {  
  2.  
  3.   command_name check_nrpe  
  4.  
  5.   command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$  
  6.  
  7.   }  
  8.  

  3.在nagios服务器端添加oracle主机配置文件,在 nagios/etc/objects 添加oracle 主机配置文件:oracle.cfg 。

  1.   define host {  
  2.  
  3.   use linux-server  
  4.  
  5.   host_name oracle  
  6.  
  7.   alias Oracle 10g  
  8.  
  9.   address 10.0.0.109  
  10.  
  11.   }  
  12.  
  13.   define service {  
  14.  
  15.   use generic-service  
  16.  
  17.   host_name oracle  
  18.  
  19.   service_description TNS Check  
  20.  
  21.   check_command check_nrpe!check_oracle_tns  
  22.  
  23.   }  
  24.  
  25.   define service {  
  26.  
  27.   use generic-service  
  28.  
  29.   host_name oracle  
  30.  
  31.   service_description DB Check  
  32.  
  33.   check_command check_nrpe!check_oracle_db  
  34.  
  35.   }  
  36.  
  37.   define service {  
  38.  
  39.   use generic-service  
  40.  
  41.   host_name oracle  
  42.  
  43.   service_description Login Check  
  44.  
  45.   check_command check_nrpe!check_oracle_login  
  46.  
  47.   }  
  48.  
  49.   define service {  
  50.  
  51.   use generic-service  
  52.  
  53.   host_name oracle  
  54.  
  55.   service_description Cache Check  
  56.  
  57.   check_command check_nrpe!check_oracle_cache  
  58.  
  59.   }  
  60.  
  61.   define service {  
  62.  
  63.   use generic-service  
  64.  
  65.   host_name oracle  
  66.  
  67.   service_description Tablespace Check  
  68.  
  69.   check_command check_nrpe!check_oracle_tablespace  
  70.  
  71.   }  
  72.  

  报错了“CHECK_NRPE: Error - Could not complete SSL handshake.

  ”,原来nrpe还需要ssl的支持,用yum安装openssl即可。

  安装完openssl全都绿了,OK!使用nagios监控oracle就讲述到这里了。

【编辑推荐】

Ubuntu安装运行Nagios

运维监控Nagios

验证Nagios的工作状态(图)

责任编辑:zhaolei 来源: sina
相关推荐

2011-03-24 10:08:39

Nagios监控oracle

2011-03-25 16:10:58

oraclenagios

2011-03-23 15:13:08

Nagios监控oracle

2011-03-21 14:53:27

Nagios监控Linux

2011-03-22 14:29:19

Nagios监控

2011-03-22 09:07:13

Nagios监控memcached

2011-03-23 15:13:08

Nagios监控Oracle

2011-03-22 13:43:08

2011-03-23 10:17:25

Nagios监控

2011-04-06 14:24:21

Nagios监控Linux

2011-03-21 14:53:27

Nagios监控Linux

2011-03-21 14:53:36

Nagios监控Linux

2011-04-06 14:24:20

Nagios监控Linux

2011-04-06 14:24:27

Nagios监控Linux

2011-03-04 10:47:06

Nagios监控Sphinx

2011-03-28 17:18:57

nagios监控iostat

2011-03-21 14:43:42

2012-02-22 22:21:15

nagios开源

2011-03-25 09:34:34

Nagios网络监控

2011-03-28 17:35:44

NagiosNRPE监控
点赞
收藏

51CTO技术栈公众号