1. 程式人生 > >check mk 監控 oracle

check mk 監控 oracle

user ret logs cati 執行 chown strong password rec

1、安裝新版check_mk_agent,1.2.5i7版本以上並確定mk_oracle腳本已經安裝完畢

從服務器端拷貝mk_oracle腳本到目標服務器

cp /usr/share/check-mk-agent/plugins/mk_oracle /usr/lib/check_mk_agent/plugins/
ls -lth /usr/lib/check_mk_agent/plugins/mk_oracle

2、數據庫對check_mk用戶賦權:
(1)授予select_catalog_role to check_mk

root@linux# su - oracle
oracle@linux:~> export ORACLE_SID=<SID of an Instance>
oracle@linux:~> sqlplus / as sysdba
sqlplus> create user check_mk identified by secret_password;
sqlplus> grant select_catalog_role to check_mk;
sqlplus> connect check_mk/secret_password
sqlplus> exit
oracle@linux:~> export ORACLE_SID=<SID of an Instance>

(2)ASM相關

root@linux# su - oracle
oracle@linux:~> ps ax | grep pmon | grep ASM
oracle@linux:~> export ORACLE_SID=+ASM1
oracle@linux:~> sqlplus / as sysasm
sqlplus> create user check_mk identified by secret_password;
sqlplus> grant sysdba to check_mk;
sqlplus> exit

3、修改/etc/check_mk/sqlplus.sh文件


vi /etc/check_mk/sqlplus.sh
修改為:

ORACLE_SID=$1
if [ -z "$ORACLE_SID" ] ; then
    echo "Usage: $0 ORACLE_SID" >&2
    exit 1
fi

su - oracle -c "
ORACLE_SID=$ORACLE_SID
ORAENV_ASK=NO
source /home/oracle/.bash_profile
sqlplus -s check_mk/password"

4、編輯/etc/check_mk/mk_oracle.cfg文件
vi /etc/check_mk/mk_oracle.cfg


添加:

#ASMUSER=check_mk:password:sysdba:hostname:port
#DBUSER=check_mk:password:sysdba:hostname:port
ASMUSER=check_mk:password
DBUSER=check_mk:password

拷貝tns文件到/etc/check_mk
cp /u01/app/oracle/11.2.0/dbhome_1/network/admin/tnsnames.ora /etc/check_mk/

5、編輯/etc/check_mk/sqlnet.ora

vi /etc/check_mk/sqlnet.ora
LOG_DIRECTORY_CLIENT = /var/log/check_mk/oracle_client
DIAG_ADR_ENABLED = OFF

SQLNET.WALLET_OVERRIDE = FALSE
WALLET_LOCATION =
 (SOURCE=
  (METHOD = FILE)
  (METHOD_DATA = (DIRECTORY=/etc/check_mk/oracle_wallet))
 )

6、執行驗證語句:

export MK_CONFDIR="/etc/check_mk";/usr/lib/check_mk_agent/plugins/mk_oracle -t

export MK_CONFDIR="/etc/check-mk-agent";/usr/share/check-mk-agent/plugins/mk_oracle -t

輸出:
[root@datahis check_mk]# export MK_CONFDIR="/etc/check_mk";/usr/lib/check_mk_agent/plugins/mk_oracle -t

<<<oracle_instance>>>
<<<oracle_sessions>>>
<<<oracle_logswitches>>>
<<<oracle_undostat>>>
<<<oracle_recovery_area>>>
<<<oracle_processes>>>
<<<oracle_recovery_status>>>
<<<oracle_longactivesessions>>>
<<<oracle_dataguard_stats>>>
<<<oracle_performance>>>
<<<oracle_tablespaces>>>
<<<oracle_rman>>>
<<<oracle_jobs>>>
<<<oracle_ts_quotas>>>
<<<oracle_resumable>>>
<<<oracle_locks>>>
<<<oracle_instance>>>
<<<oracle_asm_diskgroup>>>
-----------------------------------------------
Logincheck to Instance: hisdb  Version: 11.2
The Oracle base remains unchanged with value /u01/app/oracle
Login ok User: CHECK_MK on datahis

出現Login ok 字樣,說明配置成功了

7、權限設定:

chmod 700 /etc/check_mk/sqlplus.sh
chmod 600 /etc/check_mk/mk_oracle.cfg
chown oracle.root /etc/check_mk/sqlplus.sh /etc/check_mk/mk_oracle.cfg

check mk 監控 oracle