Oracle Database 監控:zabbix(一)

https://github.com/netrusov/ZabbixDBA 

[root@amb01 ~]# unzip ZabbixDBA-master.zip
[root@amb01 ~]# mkdir /opt/zdba
[root@amb01 ~]# cp -r ZabbixDBA-master/* /opt/zdba

[root@amb01 ~]# cd /opt/zdba
[root@amb01 zdba]# cp init.d/zdba /etc/init.d/
[root@amb01 zdba]# chmod 755 /etc/init.d/zdba 
[root@amb01 zdba]# chkconfig --add zdba

[root@amb01 ~]# su - oracle
[oracle@amb01 ~]$ sqlplus / as sysdba
SQL> create user zabbix identified by zabbix default tablespace system temporary tablespace temp profile default account unlock;
SQL> grant connect to zabbix;
SQL> grant resource to zabbix;
SQL> alter user zabbix default role all;
SQL> grant select any table to zabbix;
SQL> grant create session to zabbix;
SQL> grant select any dictionary to zabbix;
SQL> grant unlimited tablespace to zabbix;
SQL> grant select any dictionary to zabbix;
SQL> grant select on v_$session to zabbix;
SQL> grant select on v_$system_event to zabbix;
SQL> grant select on v_$event_name to zabbix;
SQL> grant select on v_$recovery_file_dest to zabbix;

[root@amb01 zdba]# vi conf/config.pl 
{
  zabbix => {
    host    => '192.168.40.35',
    port    => 10051,
    timeout => 30,
  },
  daemon => {
    sleep      => 60,
    split_logs => 1
  },
  db => {
    default => {
      user       => 'zabbix',
      pass       => 'zabbix',
      query_list => 'query.props.pl',
      sleep      => 60,
      retry_step => 1,
    },
    list   => [qw|ambdb01|],
    ambdb01 => {
      dsn        => 'DBI:Oracle:host=192.168.40.41;port=1521;sid=amb01',
      query_list => [qw|query.props.pl|],
      sleep      => 60,
    },
  },
}

安裝perl模塊
[root@amb01 zdba]# cat cpanfile 
requires "Carp" => "0";
requires "Data::Dumper" => "0";
requires "DBI" => "0";
requires "English" => "0";
requires "FindBin" => "0";
requires "forks" => "0";
requires "IO::Socket::INET" => "0";
requires "JSON" => "0";
requires "Log::Any::Adapter::Log4perl" => "0";
requires "Log::Log4perl" => "0";
requires "Moo" => "0";
requires "perl" => "5.010";
requires "strict" => "0";
requires "Time::HiRes" => "0";
requires "warnings" => "0";

https://metacpan.org

[root@amb01 ~]# tar zxvf Carp-1.50.tar.gz
[root@amb01 ~]# cd Carp-1.50
[root@amb01 Carp-1.50]# perl Makefile.PL 
[root@amb01 Carp-1.50]# make
[root@amb01 Carp-1.50]# make install

[root@amb01 ~]# tar zxvf Data-Dumper-2.161.tar.gz
[root@amb01 ~]# cd Data-Dumper-2.161
[root@amb01 Data-Dumper-2.161]# perl Makefile.PL 
[root@amb01 Data-Dumper-2.161]# make
[root@amb01 Data-Dumper-2.161]# make install

[root@amb01 ~]# tar zxvf DBI-1.637.tar.gz
[root@amb01 ~]# cd DBI-1.637
[root@amb01 DBI-1.637]# perl Makefile.PL 
[root@amb01 DBI-1.637]# make
[root@amb01 DBI-1.637]# make install

[root@amb01 ~]# tar zxvf forks-0.36.tar.gz
[root@amb01 ~]# cd forks-0.36
[root@amb01 forks-0.36]# perl Makefile.PL
[root@amb01 forks-0.36]# make
[root@amb01 forks-0.36]# make install

[root@amb01 ~]# tar zxvf IO-1.39.tar.gz
[root@amb01 ~]# cd IO-1.39
[root@amb01 IO-1.39]# perl Makefile.PL
[root@amb01 IO-1.39]# make
[root@amb01 IO-1.39]# make install

[root@amb01 ~]# tar zxvf JSON-2.97001.tar.gz
[root@amb01 ~]# cd JSON-2.97001
[root@amb01 JSON-2.97001]# perl Makefile.PL
[root@amb01 JSON-2.97001]# make
[root@amb01 JSON-2.97001]# make install

[root@amb01 ~]# tar zxvf Log-Any-Adapter-Log4perl-0.09.tar.gz
[root@amb01 ~]# cd Log-Any-Adapter-Log4perl-0.09
[root@amb01 Log-Any-Adapter-Log4perl-0.09]# perl Makefile.PL 
[root@amb01 Log-Any-Adapter-Log4perl-0.09]# make
[root@amb01 Log-Any-Adapter-Log4perl-0.09]# make install

[root@amb01 ~]# tar zxvf Log-Log4perl-1.49.tar.gz
[root@amb01 ~]# cd Log-Log4perl-1.49
[root@amb01 Log-Log4perl-1.49]# perl Makefile.PL 
[root@amb01 Log-Log4perl-1.49]# make
[root@amb01 Log-Log4perl-1.49]# make install

[root@amb01 ~]# tar zxvf Module-Runtime-0.016.tar.gz
[root@amb01 ~]# cd Module-Runtime-0.016
[root@amb01 Module-Runtime-0.016]# perl Makefile.PL
[root@amb01 Module-Runtime-0.016]# make
[root@amb01 Module-Runtime-0.016]# make install

[root@amb01 ~]# tar zxvf Moo-2.003004.tar.gz
[root@amb01 ~]# cd Moo-2.003004
[root@amb01 Moo-2.003004]# perl Makefile.PL 
[root@amb01 Moo-2.003004]# make
[root@amb01 Moo-2.003004]# make install

[root@amb01 ~]# tar zxvf Time-HiRes-1.9758.tar.gz
[root@amb01 ~]# cd Time-HiRes-1.9758
[root@amb01 Time-HiRes-1.9758]# perl Makefile.PL
[root@amb01 Time-HiRes-1.9758]# make
[root@amb01 Time-HiRes-1.9758]# make install

[root@amb01 ~]# tar zxvf List-MoreUtils-0.428.tar.gz
[root@amb01 ~]# cd List-MoreUtils-0.428
[root@amb01 List-MoreUtils-0.428]# perl Makefile.PL 
[root@amb01 List-MoreUtils-0.428]# make
[root@amb01 List-MoreUtils-0.428]# make install

[root@amb01 ~]# tar zxvf Exporter-Tiny-1.002001.tar.gz
[root@amb01 ~]# cd Exporter-Tiny-1.002001
[root@amb01 Exporter-Tiny-1.002001]# perl Makefile.PL
[root@amb01 Exporter-Tiny-1.002001]# make
[root@amb01 Exporter-Tiny-1.002001]# make install

[root@amb01 ~]# tar zxvf Sys-SigAction-0.23.tar.gz
[root@amb01 ~]# cd Sys-SigAction-0.23
[root@amb01 Sys-SigAction-0.23]# perl Makefile.PL 
[root@amb01 Sys-SigAction-0.23]# make
[root@amb01 Sys-SigAction-0.23]# make install

[root@amb01 ~]# tar zxvf Acme-Damn-0.08.tar.gz
[root@amb01 ~]# cd Acme-Damn-0.08
[root@amb01 Acme-Damn-0.08]# perl Makefile.PL
[root@amb01 Acme-Damn-0.08]# make
[root@amb01 Acme-Damn-0.08]# make insall

[root@amb01 ~]# rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
[root@amb01 ~]# rpm -ivh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm
[root@amb01 ~]# rpm -ivh oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm

[root@amb01 ~]# vim /root/.bash_profile
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export PATH=$PATH:$ORACLE_HOME/bin 
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/usr/local/lib 

[root@lepus ~]# source /root/.bash_profile

[root@amb01 ~]# tar zxvf DBD-Oracle-1.74.tar.gz
[root@amb01 ~]# cd DBD-Oracle-1.74
[root@amb01 DBD-Oracle-1.74]# perl Makefile.PL
[root@amb01 DBD-Oracle-1.74]# make
[root@amb01 DBD-Oracle-1.74]# make install

崩潰中......

[root@amb01 ~]# yum install -y perl-CPAN
[root@amb01 ~]# perl -MCPAN -e shell    
cpan[1]> install Log::Any::Adapter
cpan[2]> install Devel::GlobalDestruction
cpan[3]> install Role::Tiny

[root@amb01 ~]# service zdba start
Starting ZabbixDBA service:  ZabbixDBA started 

[root@amb01 ~]# cat /opt/zdba/log/zdba.log     
[2018/09/11 10:04:16][INFO ] [27] starting ZabbixDBA (version 3.2.0)
[2018/09/11 10:04:16][INFO ] [53] starting thread for database 'ambdb01'

[root@amb01 ~]# cat /opt/zdba/log/ambdb01.log 
[2018/09/11 10:04:16][INFO ] [ZDBA::monitor:50] starting monitoring of 'ambdb01'
[2018/09/11 10:04:16][INFO ] [ZDBA::DBIx::connect:47] connected to 'DBI:Oracle:host=192.168.40.41;port=1521;sid=amb01'
[2018/09/11 10:04:20][INFO ] [ZDBA::monitor:151] completed fetching data on 'ambdb01' (elapsed 4e-06)

Zabbix Server
一,導入模板
二,創建主機並關聯模板
三,大功告成



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章