您的位置:首页 > 数据库 > Oracle

nagios监控oracle运行状况

2013-03-05 16:41 218 查看
nrpe安装脚本

nagios-plugins-1.4.13.tar.gz

nrpe-2.8.tar.gz

源码包文件提前下载好

[root@dd]more install.sh

#!/bin/bash

tar -xvzf nagios-plugins-1.4.13.tar.gz

cd nagios-plugins-1.4.13

./configure

make

make install

groupadd nagios

useradd -g nagios -s /sbin/nologin nagios

echo !@NA#$gI%o^S | passwd nagios --stdin

cd ..

tar -xvzf nrpe-2.8.tar.gz

cd nrpe-2.8

./configure

make all

make install-plugin

make install-daemon

make install-daemon-config

echo "OK!"

[root@dd]

修改 nrpe文件

vim /usr/local/nagios/etc/nrpe.cfg

#nrpe_user=nagios

nrpe_user=oracle ---以oracle用户运行

allowed_hosts=127.0.0.1,192.169.169.60 --添加监控允许IP

修改check_oracle插件脚本

vim /usr/local/nagios/libexec/check_oracle

添加两行

#! /bin/sh

#

# latigid010@yahoo.com

# 01/06/2000

#

# This Nagios plugin was created to check Oracle status

#

ORACLE_HOME=/opt/oracle/product/10g

PATH=$ORACLE_HOME/bin:$PATH

vim +257 /usr/local/nagios/libexec/check_oracle

257 ON a.tablespace_name=b.tablespace_name WHERE a.tablespace_name=upper('${5}');---方便监控

修改 /usr/local/nagios/etc/nrpe.cfg 文件

。加入以下内容:

#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 c

ommand[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

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

二、 配置 nrpe 服务

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

#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

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

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

三、配置 Nagios 服务端

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

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

define command {

command_name check_nrpe

command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$

}

3.在 nagios/etc/objects 添加oracle 主机配置文件。oracle.cfg 。

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

}

效果图:

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

备注:

图中 Tablespace check 还没有细调,用了错误的 table 名。

通过修改脚本还可以监视临时表空间。

CRITICAL - ORA-28009: connection as SYS should be as SYSDBA or SYSOPER

[root@dd]/usr/local/nagios/libexec/check_oracle --tablespace duxiu sys oracle USERS 90 80-------勿用sys用户

---------------------------------------------------

监控效果如下

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: