中国青基会

查看完整版本: 配置 Nagios 监控 Oracle 服务器

cckj 2009-1-31 20:27

配置 Nagios 监控 Oracle 服务器

作者: latteye  原文链接:[url=http://latteye.com/2008/12/config-nagios-monitor-oracle.html#more-499]http://latteye.com/2008/12/config-nagios-monitor-oracle.html#more-499[/url]

配置 Nagios 监控 Oracle 服务器

环境:Oracle 10g
          CentOS 5.2 x86_64

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

注意点:
        1.由于 nagios 脚本需要读取 oracle 相关文件。所以运行 nagios 的用户需要定义为 oracle 服务用户。并且修改 /etc/xinted.d/nrpe 中的配置。[code]service nrpe
{
        flags           = REUSE
        socket_type     = stream
        port            = 5666
        wait            = no
        user            = oracle
        group           = nagios
        server          = /usr/local/nagios/bin/nrpe
        server_args     = -c /usr/local/nagios/etc/nrpe.cfg --inetd
        log_on_failure  += USERID
        disable         = no
        only_from       = 192.168.100.62
}[/code]2.给 oracle 用户在 ORACLE_HOME 目录下执行权限。
        [color=Red]chmod –Rf 740 $ ORACLE_HOME/*[/color]

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

          [color=Red]ORACLE_HOME=/u01/oracle/product/10.2.0/db_1
        PATH=$PATH: /u01/oracle/product/10.2.0/db_1/bin[/color]

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

[b]二、配置 nrpe 服务[/b]

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

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

[b]三、配置 Nagios 服务端[/b]

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

define service {
        use             generic-service
        host_name       oracle
        service_description     TNS Check
        check_command   check_nrpe!check_oracle_tns
        }
define service {
        use             generic-service
        host_name       oracle
        service_description     DB Check
        check_command   check_nrpe!check_oracle_db
        }
define service {
        use             generic-service
        host_name       oracle
        service_description     Login Check
        check_command   check_nrpe!check_oracle_login
        }
define service {
        use             generic-service
        host_name       oracle
        service_description     Cache Check
        check_command   check_nrpe!check_oracle_cache
        }
define service {
        use             generic-service
        host_name       oracle
        service_description     Tablespace Check
        check_command   check_nrpe!check_oracle_tablespace
        }[/code][b]4.验证配置文件无误后重启 nagios 服务。[/b]

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


效果图:

[url=http://latteye.com/wp-content/images/Nagios_1228211757147.png][img]http://latteye.com/wp-content/images/_Nagios_1228211757147.png[/img][/url]

NRPE 以及 Nagios-Plugin 安装文件见附件包内。NRPE 官方文档也包含在附件包呢。

[b]备注:[/b]
图中 Tablespace check 还没有细调,用了错误的 table 名。
通过修改脚本还可以监视临时表空间。

Google Doc 共享
[url=http://docs.google.com/Doc?id=dfg4v6m3_104gf3bjfjx]http://docs.google.com/Doc?id=dfg4v6m3_104gf3bjfjx[/url]
页: [1]
查看完整版本: 配置 Nagios 监控 Oracle 服务器
Baidu