monitoring oracle databases with opsview

21

Upload: opsview

Post on 27-May-2015

1.143 views

Category:

Sports


0 download

DESCRIPTION

This ‘how to’ presentation describes how to monitor Oracle databases using Opsview

TRANSCRIPT

Page 1: Monitoring Oracle Databases with Opsview
Page 2: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence 2

Monitoring Oracle with Opsview

Page 3: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence3

About• This ‘how to’ presentation describes how to monitor Oracle databases

using Opsview• If you don’t already have Opsview installed, visit our website and

download Opsview Core (free), Opsview Pro (30 day trial) or request a trial to Opsview Enterprise.

Page 4: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence4

Introduction• In our example scenario, we are testing against “Oracle

Database 11g Express Edition”, however the monitoring should be uniform across all Oracle database platforms. Our Opsview server is running on Ubuntu 10.04 32-bit, however this document can be altered to fit RHEL/CentOS/SLES etc and also 32/64 bit with some slight changes.

Page 5: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence5

Installation• Installation of the Oracle monitoring plugin requires

installation of the Oracle “Instant Client”, along with the “alien” package and the check_oracle_health plugin we will be using.

• The steps needed are outlined later in this document.

Page 6: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence6

Installation• Firstly, we will need to install our “alien” package, which we

will need to convert the Oracle InstantClient files from .rpm to .deb (if we are installing on Debian/Ubuntu, if we are installing on CentOS/RHEL for example, we can leave it in the native .rpm format).

• To do this, run “apt-get install alien”, for example – or if you prefer, download the offline version and run a “dpkg –I alien…deb”.

Page 7: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence7

Installation• Next, we will need to download the 3 Oracle client files and

install them from the link:

http://www.oracle.com/technetwork/topics/linuxsoft-082809.html

• The files we need are:

oracle-instantclient11.2-basic-11.2.0.3.0-1.i386.rpmoracle-instantclient11.2-devel-11.2.0.3.0-1.i386.rpmoracle-instantclient11.2-sqlplus-11.2.0.3.0-1.i386.rpm

• However the file names may be slightly different, depending on version number and architecture (32 vs 64 bit). You may need to sign up for a www.oracle.com account if you do not already have one.

Page 8: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence8

Installation• Now that we have the 3 RPM’s above, we will need to install

them. On CentOS/RHEL, this is easily done via “rpm --ivh oracle…rpm”, in the order of “basic”, then “devel”, then “sqlplus”. If we are installing on Debian/Ubuntu, we will need to convert the .rpm to .deb using alien and then install, as below:

sudo alien --to-deb oracle-instantclient11.2-basic-11.2.0.3.0-1.i386.rpmdpkg -i oracle-instantclient11.2-basic_11.2.0.3.0-2_i386.debsudo alien --to-deb oracle-instantclient11.2-devel-11.2.0.3.0-1.i386.rpmdpkg -i oracle-instantclient11.2-devel_11.2.0.3.0-2_i386.debsudo alien --to-deb oracle-instantclient11.2-sqlplus-11.2.0.3.0-1.i386.rpmdpkg -i oracle-instantclient11.2-devel_11.2.0.3.0-2_i386.deb

Page 9: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence9

Installation• Next, we will need to set the bash variables of our user

running the oracle client. To do this, we must edit the “~.bashrc” file, and add the lines below:

export ORACLE_HOME=/usr/lib/oracle/11.2/clientexport PATH=$PATH:$ORACLE_HOME/binexport LD_LIBRARY_PATH=$ORACLE_HOME/lib

• This points our variables to the correct location. Once set, we will need to load them into the active config via the command “source ~/.bashrc”.

Page 10: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence10

Installation• 6Next, we will need to download the DBD::Oracle file needed

to run the script. We can get this via the cpan CLI command, or via the link

http://search.cpan.org/CPAN/authors/id/P/PY/PYTHIAN/DBD-Oracle-1.44.tar.gz

• Once we have downloaded the file to our Opsview system, we will need to extract, and then compile, as below:

tar –zxvf DBD-Oracle-1.44.tar.gzcd DBD-Oracle-1.44perl MakeFile.PLmakesudo make install

Page 11: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence11

Installation• Now that we have installed DBD::Oracle, we will need to

download and compile the plugin we will be using to monitor Oracle; called check_oracle_health (current version at writing is 1.7.3). To do this, we will need to run the commands below:

cd /tmpwget http://labs.consol.de/wp-content/uploads/2011/09/check_oracle_health-1.7.3.tar.gztar –zxvf check_oracle_health-1.7.3.tar.gzcd / check_oracle_health-1.7.3./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios --with-perl=/usr/bin/perl --with-statefiles-dir=/tmpmakesudo make install

• With these commands, we are configuring the plugin with the full paths to our Perl files, and our nagios files. The make/make install then compiles the plugin, and automatically moves it to the plugin directory (located at /usr/local/nagios/libexec).

Page 12: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence12

Installation• We can now test our plugin. First, let’s go to the plugin

directory above; “cd /usr/local/nagios/libexec”. Now we can run the plugin against our oracle host using a simple tnsping, as below:

smarsh@demo:/usr/local/nagios/libexec$ ./check_oracle_health --connect=192.168.12.126 --mode=tnspingOK - connection established to 192.168.12.126

• Where “--connect=192…” is the location we specify our Oracle server, and “--mode=” is where we specify what we’d like to do, in this case a “tnsping”. As above, we should get a “OK – connection established” message, if not, or we get timeouts, please check to ensure that the ports are open on the firewall to allow connectivity.

Page 13: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence13

Installation• Now that we have the plugin installed and tested working, we

can begin the simpler task of configuring Opsview to utilize the plugin.

• Log into your Opsview installation, and click on “SETTINGS -> ATTRIBUTES” and click on the green “plus icon” in the top left. We will need to create 2 attributes, a “Oracle User” and an “Oracle Password”, which are the credentials we will use to login to the Oracle server.

Page 14: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence14

Installation• NB: We could specify these manually in the service check, but

the problem would arise if you wanted to monitor 2 Oracle servers with different credentials, you would need 2 different service checks as we hard coded them. This way is much more elegant. Visit our Opsview Configuration section for more information on attributes.

• Once we have added our attributes, we should have a screen as below:

Page 15: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence15

Installation• Next, lets go to “SETTINGS -> SERVICE CHECKS”, and then

the green “plus icon” in the top left. In the service check template, we can now begin to create our new service checks. In our example, we are going to monitor how much free space in MB we have in the “SYSTEM” tablespace, using the command:

“check_oracle_health --connect=$HOSTADDRESS$ --user=%ORAUSER% --password=%ORAPWD% --name=system --mode=tablespace-free --units=MB”

Page 16: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence16

Installation• As you can see, we have entered our new attributes into the

service check. We can populate the service check to our liking, however the important point at this stage is to choose “check_oracle_health” in the plugins section, and enter:

“--connect=$HOSTADDRESS$ --user=%ORAUSER% --password=%ORAPWD% --name=system --mode=tablespace-free --units=MB”

…in the arguments section, so we have a screen as below:

• Click on “submit changes”, and our new service check, in our example called “Oracle - Tablespace Free”, is created.

Page 17: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence17

Installation• Next we need to add our Oracle host and add the new service

check to it. To begin, navigate to “SETTINGS > HOSTS” and click the green plus icon in the top left.

• As per the standard way, enter the hostname/IP of the Oracle server in “Primary Hostname/IP”, and the verbose name we will reference it as, in the “Host Title” name; in our example we are going to refer to it as “Oracle”.

• Once we have configured the “HOST” tab, we will next need to move onto the “Monitors” tab, and select our new service check, as below:

Page 18: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence18

Installation• Finally, we will need to click on the “ATTRIBUTES” tab, and

add 2 new attributes; one for oracle user and one for oracle password, and populate with the correct details for the oracle host, as below:

• These values will be pulled into any service check ran against this host, that references the attributes %ORAPWD%, for example.

• Click on submit, and our new Oracle host with our new service checks will be created.

Page 19: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence19

Installation• Finally, we will need to apply our changes. To do this, navigate

to “SETTINGS > APPLY CHANGES” and click “reload configuration”.

• Our new host and service checks will now be active and running. To view them, navigate to “MONITORING > HOSTS” and click on your new host, Oracle, to view the service checks.

Page 20: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence20

Installation• In our demo environment, we have the below service checks

configured:

• However, there are many more to add and they are all available if you run the command “./check_oracle_health -h". Most are simply option changes after “--mode=”, and you add them exactly the same method as we did in the earlier steps.

Page 21: Monitoring Oracle Databases with Opsview

Wednesday 12 April 2023 © Opsview Ltd. Commercial in Confidence21

About OpsviewOpsview delivers a single unified view of the health of all your distributed physical, virtual and hybrid cloud systems.

We give DevOps staff all the tools they need to get their jobs done faster, easier and for less.

• Opsview Enterprise offers large enterprises (+100 devices) and MSPs a certified, professionally supported network monitoring solution with enhanced functionality such as dynamic dashboards and reports

• SMEs looking for feature-rich dashboards to monitor the performance of their on-premise, virtualized or cloud apps choose Opsview Pro

• Opsview Core is our free, open source monitoring tool - you can test and customize it how you want