nagios監控oracle
本人最近在弄nagios,想用nagios監控oracle,看了網上的很多教程,步驟都是如下。
1.由於 nagios 腳本需要讀取 oracle 相關文件。所以運行 nagios 的用戶需要定義為 oracle 服務用戶。並且修改 /etc/xinted.d/nrpe 中的配置。
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
}
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 文件。加入以下內容:
#Check Oracle
command=/usr/local/nagios/libexec/check_oracle --tns orcl
command=/usr/local/nagios/libexec/check_oracle --db orcl
command=/usr/local/nagios/libexec/check_oracle --login orcl
command=/usr/local/nagios/libexec/check_oracle --cache orcl system lkjsdf 80 90
command=/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
}
4.驗證配置文件無誤后重啟 nagios 服務。
但是這樣配置后還是不能監控,因為這文檔裡面沒有寫怎麼在command.cfg文檔裡面怎麼配置check_oracle_tablespace,check_oracle_cache,check_oracle_login這些插件的,這些插件在nagios默認的插件裡面也沒有,請問配置過的大蝦這些插件在哪裡下載的,還有在command.cfg文件裡面怎麼配置的。
在線等,多謝!
《解決方案》
因為你是通過nrpe去監控的
所以第一步,你要先確認你nrpe配置文件里設置的command能不能執行
用你起nrpe進程的用戶執行
/usr/local/nagios/libexec/check_oracle --tns orcl
看結果是什麼
如果正確的話,在nagios端先用命令行check_nrpe測試一下
分解一下,看看問題在哪先
《解決方案》
《解決方案》
這個監控俺沒用過