Nagios主動監控oracle資料庫check_oracle_health

Michael_DD發表於2014-11-10
Nagios主動監控oracle資料庫check_oracle_health


Nagios的Oracle監控外掛 check_oracle_health

=====================================================
(nagios 伺服器端配置)

1 安裝check_oracle_health
  下載:check_oracle_health-1.6.3.tar

tar zxvf check_oracle_health-1.6.3.tar.gz

cd check_oracle_health-1.6.3
./configure --prefix=/usr/local/nagios/ --with-nagios-user=nagios --with-nagios-gourp=nagios --with-mymodules-dir=/usr/local/nagios/libexec/ --with-mymodules-dyn-dir=/usr/local/nagios/libexec/

#指定使用者、使用者組以及目標路徑等
make all

make install


2、設定系統環境變數

在root下,編輯.bash_profile,插入oracle使用者的環境變數,要和oracle使用者的.bash_profile檔案中設定的一樣

[root@sznagiosapp4 ~]# cat .bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin:/opt/Navisphere/bin

export PATH

export ORACLE_BASE=/app/oracle
export ORACLE_HOME=$ORACLE_BASE/ora11g
export ORACLE_SID=orcl
export ORACLE_OWNER=oracle
export ORACLE_TERM=vt100
export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export CLASSPATH
PATH=$PATH:/usr/sbin; export PATH
PATH=$PATH:/usr/bin; export PATH
[root@sznagiosapp4 ~]#


3、安裝perl的oracle外掛

① wget

    tar zxvf DBI-1.609.tar.gz

    cd DBI-1.609

    perl Makefile.PL
    make all

    make install
② wget 

    tar -zxvf DBD-Oracle-1.24a.tar.gz
    cd DBD-Oracle-1.24
    perl Makefile.PL             #此處如果之前不設定root的oracle環境變數會報錯

    make all

    make install

③ 如果在執行指令碼時報錯

    Can't locate Time/HiRes.pm in @INC (@INC contains: /usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi
    wget
    tar zxvf Time-HiRes-01.02.tar.gz

    cd Time-HiRes-01.02
    perl Makefile.PL
    make all
    make install


4  配置tnsnames.ora

增加監控Oracle的tns

=====================================================
(資料庫端)
只需要開啟的表dbsnmp使用者
SQL> alter user dbsnmp account unlock;

User altered.

SQL> alter user dbsnmp identified by 123456;

User altered.

SQL> exit



=====================================================

(測試與應用)

配置資料庫監控使用者test   123456
test使用者系統許可權
SQL> select * from user_sys_privs;

USERNAME                       PRIVILEGE                                ADM
------------------------------ ---------------------------------------- ---
test                           CREATE PROCEDURE                         NO
test                           UNLIMITED TABLESPACE                     NO
test                           SELECT ANY DICTIONARY                    NO
test                           CREATE TABLE                             NO


cd /usr/local/nagios/libexec

#檢查資料庫連線時間
./check_oracle_health --connect=orcl --user=dbsnmp --password=123456 --warning $ARG4$ --critical $ARG5$ --mode connection-time

#資料庫監聽
./check_oracle_health --connect=orcl --mode=tnsping

#全庫資料量
./check_oracle_health --connect=$ARG1$ --user=$ARG2$ --password=$ARG3$ --warning $ARG4$ --critical $ARG5$ --mode used-spaces

#表空間使用率
./check_oracle_health --connect=$ARG1$ --user=$ARG2$ --password=$ARG3$ --warning $ARG4$ --critical $ARG5$ --mode tablespace-usage

#鎖等待時間
./check_oracle_health --connect=$ARG1$ --user=$ARG2$ --password=$ARG3$ --warning $ARG4$ --critical $ARG5$ --mode lock-times

#鎖等待數量
./check_oracle_health --connect=$ARG1$ --user=$ARG2$ --password=$ARG3$ --warning $ARG4$ --critical $ARG5$ --mode lock-numbers

#長事務
./check_oracle_health --connect=$ARG1$ --user=$ARG2$ --password=$ARG3$ --warning $ARG4$ --critical $ARG5$ --mode long-transactions

#無效物件數
./check_oracle_health --connect=$ARG1$ --user=$ARG2$ --password=$ARG3$ --warning $ARG4$ --critical $ARG5$ --mode invalid-objects

#程式使用率
./check_oracle_health --connect=$ARG1$ --user=$ARG2$ --password=$ARG3$ --warning $ARG4$ --critical $ARG5$ --mode connected-users

等等。。。。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29500582/viewspace-1327025/,如需轉載,請註明出處,否則將追究法律責任。

相關文章