Operating System - HP-UX
1828888 Members
2699 Online
109985 Solutions
New Discussion

Re: Service Guard and Oracle

 
Teresa Auteri
New Member

Service Guard and Oracle

1. Can Service Guard monitor Oracle processes to detect when the database fails ? Then failover to a different server and a backup database ?
The backup database is a sync'd copy of the production database sitting on a disk array. The backup database is up and active on the server they want to failover to.
5 REPLIES 5
Sanjay_6
Honored Contributor

Re: Service Guard and Oracle

Hi Teresa,

The way service guard normally work is this,

Service guard running with an oracle database. Oracle database processes monitored by service Guard. If there is a problem with the database and the oracle database process is killed / dies off, the database package will be failed over to the standby node and the database gets started on the failover node.

The sort of situation you are talking about is more like an OPS (Oracle Parallel Server ) configuration, where oracle datbase is running on both the service guard nodes. If the oracle database dies on one node, the same is started automatically on the other node from where the database died on the first node.

Hope this helps.

regds
Mladen Despic
Honored Contributor

Re: Service Guard and Oracle

With the right control script you should be able to do anything similar to what you describe. You will need to configure the following parameters in the package config file:

SERVICE_NAME
SERVICE_FAIL_FAST_ENABLED
SERVICE_HALT_TIMEOUT

as well as the following in the package control script:

SERVICE_NAME[0]
SERVICE_CMD[0]
SERVICE_RESTART[0]

By defining SERVICE_CMD[0], you can make use of any custom made script. Perhaps the Master Toolkit can be used as a starting point.

HTH,

Mladen
John Poff
Honored Contributor

Re: Service Guard and Oracle

Hello,

We started to setup our Oracle instance in a package with the Oracle processes monitored for failover, but then we realized that if we took down the database for a cold backup, the monitor process would tell ServiceGuard to failover the package. Oops! Now, if you plan to keep Oracle up all the time and never take it down, monitoring the processes for failure will work just fine.

JP
Mladen Despic
Honored Contributor

Re: Service Guard and Oracle

If you want to reduce the complexity of the control scripts, and reduce the number of potential bugs by creating a simpler solution, you can also try "HA Monitors" (addition to EMS - a separate product) to create package dependencies.

So if your main Oracle application is in packageA, and your Oracle backup is in packageB, you can configure the following in your packageB config file:

RESOURCE_NAME /cluster/package/package_status/packageA
RESOURCE_POLLING_INTERVAL 60
RESOURCE_START AUTOMATIC
RESOURCE_UP_VALUE != UP

So, when packageA halts, packageB will start automatically (on its default node). You will still need to define "SERVICE" in the packageA config and control script in order to halt packageA when the right conditions are detected.

Warning: you will also need the latest patches for HA Monitors
Mladen Despic
Honored Contributor

Re: Service Guard and Oracle

The Knowledge Base article "UXSGKBAN00000602", titled

"Outline for configuring a complex ServiceGuard package"

contains the basics.

You can avoid the problem described by John if you configure a check for a flag file in your script. See

"UXSGKBQA00000030"

for more information.

Mladen