2013年4月4日星期四

配置 Nagios 监控 Oracle 服务器

配置 Nagios 监控 Oracle 服务器

环境:Oracle 10g
          CentOS 5.2 x86_64

一、在 Oracle 所在服务器上安装 NRPE
安装过程参考 Nagios NRPE 文档。

注意点:
        1.由于 nagios 脚本需要读取 oracle 相关文件。所以运行 nagios 的用户需要定义为 oracle 服务用户。并且修改 /etc/xinted.d/nrpe 中的配置。
  1. service nrpe
  2. {
  3.         flags           = REUSE
  4.         socket_type     = stream
  5.         port            = 5666
  6.         wait            = no
  7.         user            = oracle
  8.         group           = nagios
  9.         server          = /usr/local/nagios/bin/nrpe
  10.         server_args     = -c /usr/local/nagios/etc/nrpe.cfg --inetd
  11.         log_on_failure  += USERID
  12.         disable         = no
  13.         only_from       = 192.168.100.62
  14. }
复制代码
2.给 oracle 用户在 ORACLE_HOME 目录下执行权限。
        chmod ?Rf 740 $ ORACLE_HOME/*

        3.修改 check_oracle 脚本。将 $ORACLE_HOME 以及 $PATH 手动加入,避免出现问题。

          ORACLE_HOME=/u01/oracle/product/10.2.0/db_1
        PATH=$PATH: /u01/oracle/product/10.2.0/db_1/bin


这么做是为了确保脚本可以正常执行 sqlplus 以及 tnsping 等命令。

二、配置 nrpe 服务

修改 /usr/local/nagios/etc/nrpe.cfg 文件。加入以下内容:
  1. #Check Oracle
  2. command[check_oracle_tns]=/usr/local/nagios/libexec/check_oracle --tns orcl
  3. command[check_oracle_db]=/usr/local/nagios/libexec/check_oracle --db orcl
  4. command[check_oracle_login]=/usr/local/nagios/libexec/check_oracle --login orcl
  5. command[check_oracle_cache]=/usr/local/nagios/libexec/check_oracle --cache orcl system lkjsdf 80 90
  6. command[check_oracle_tablespace]=/usr/local/nagios/libexec/check_oracle --tablespace orcl system lkjsdf tab 90 80
复制代码
具体参数写法请参考 check_oracle --help。

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

三、配置 Nagios 服务端

1.安装 nrpe 脚本支持。---参考官方文档。
2.添加 nrpe 命令配置。修改 nagios/etc/objects/command.cfg 文件:
  1. define command {
  2.         command_name check_nrpe
  3.         command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
  4. }
复制代码
3.在 nagios/etc/objects 添加oracle 主机配置文件。oracle.cfg 。
  1. define host {
  2.         use             linux-server
  3.         host_name       oracle
  4.         alias           Oracle 10g
  5.         address         192.168.100.63
  6.         }

  7. define service {
  8.         use             generic-service
  9.         host_name       oracle
  10.         service_description     TNS Check
  11.         check_command   check_nrpe!check_oracle_tns
  12.         }
  13. define service {
  14.         use             generic-service
  15.         host_name       oracle
  16.         service_description     DB Check
  17.         check_command   check_nrpe!check_oracle_db
  18.         }
  19. define service {
  20.         use             generic-service
  21.         host_name       oracle
  22.         service_description     Login Check
  23.         check_command   check_nrpe!check_oracle_login
  24.         }
  25. define service {
  26.         use             generic-service
  27.         host_name       oracle
  28.         service_description     Cache Check
  29.         check_command   check_nrpe!check_oracle_cache
  30.         }
  31. define service {
  32.         use             generic-service
  33.         host_name       oracle
  34.         service_description     Tablespace Check
  35.         check_command   check_nrpe!check_oracle_tablespace
  36.         }
复制代码
4.验证配置文件无误后重启 nagios 服务。

./bin/nagios -v etc/nagios.cfg
service nagios restart

没有评论:

发表评论