cancel
Showing results for 
Search instead for 
Did you mean: 

HP Service Guard for Oracle

 
SOLVED
Go to solution
psaravan
Occasional Visitor

HP Service Guard for Oracle

We have decided to use HP Service Guard for Oracle fail over. We would like to know the connectivity to Service Guard from the Java/C applictions.
Is there any help documents available for Service guard for Oracle.
12 REPLIES
Serviceguard for Linux
Honored Contributor

Re: HP Service Guard for Oracle

The Oracle toolkit docs are available here:
http://docs.hp.com/en/ha.html#Serviceguard%20for%20Linux%20Toolkits

There are no Serviceguard APIs that are available for general usage. Some users call the CLIs from their own application.
psaravan
Occasional Visitor

Re: HP Service Guard for Oracle

Thank you. I have gone through the required pdf document and understood that.

I believe, the front end applications has to send the db request to Service Guard which is configured with a ip address and service name similar to Oracle. SG returns the oracle connection from any one of the configured database instances.

Does service guard wraps oracle exceptions and sends its own exception or does it simply throw the Oracle Exceptions in case of any oracle exceptions?

Also, how is the credentials validatated (username and password) with the oracle connection. How does SG handles that?

Is there any pdf that explains these connectivity and exception handling to service guard from Java/C client applications?
Neethi Vedamoorthy
Occasional Visitor

Re: HP Service Guard for Oracle

The front end applications have to use ip address which is bound to oracle processes (eg. Listener) for connectivity to Oracle server. Serviceguard will only add the ip address to the machine, but the application connection is taken care by oracle itself. Serviceguard will not act as a mediator for oracle client connections.

Secondly, Serviceguard will not wrap/trap any Oracle exceptions. All oracle exceptions will be taken care by Oracle itself and user has to look for those in Oracle logs. Serviceguard has nothing to do with any Oracle specific exceptions. All that Serviceguard does is to start/stop the application as configured by the user. If there are any failures during application start/stop as part of Serviceguard Oracle package, the logs can be seen in the package log files.

Serviceguard will not handle any user credentials from a front end connection. It is up to Oracle to do so.

You can make use of Serviceguard Developers Toolbox for your application integration in Serviceguard environment.
http://h20392.www2.hp.com/portal/swdepot/displayProductInfo.do?productNumber=SGDTOOLBOX

To reiterate, Serviceguard will not involve itself in Oracle client handling or exception handling. All this has to be done by Oracle. All that Serviceguard does is :
1. Start/stop oracle as per user configuration
2. Monitor oracle processes periodically
3. Failover Oracle to an adoptive node if there is any sort failures on the primary node
4. Add resources such as ip addresses, file systems for Oracle to use.

You can find more information on Serviceguard at:
http://docs.hp.com/en/B3936-90117/index.html

Hope your questions are answered.
psaravan
Occasional Visitor

Re: HP Service Guard for Oracle

Thank you for the information.
So you say that, the applications have to still connect to oracle instance directly to open the connections and not using SG.

Assume, if 2 oracle instances sre configured in the SG. The C / Java applications would have to then write a logic to see if which oracle service is runnning and open the connection. if one connection fails, open the second one.

The SG fail over or any feature is not transparent to the front end applications.

SG is just a service to start/stop oracle services. If some connection goes wrong it will try to start it.
Andrew C Fieldsend
Respected Contributor

Re: HP Service Guard for Oracle

There are a number of ways to run Oracle under ServiceGuard, but essentially your C/Java application makes a connection to an Oracle service (instance) as normal. ServiceGuard ensures that the Oracle service is available on one of the cluster nodes, moving the service IP address with the service so that the application doesn't need to worry about its location as long as it can resolve the IP address.

The only restriction is that a failover will cause a short interruption, so your application may need to restart failed transactions if this is a concern. Under some circumstances, the Oracle client can handle this situation automatically.

As an alternative, have you considered Oracle RAC?
psaravan
Occasional Visitor

Re: HP Service Guard for Oracle

Thank you. What I understand is, for ex:
2 instances of Oracle are configured in the SG and if 1 goes down, immediately the SG makes sure that, the other instance is available in the same address.

The client connects to an instance using the address 192.168.1.1/ora_service_name. Now, if this instance goes down, SG makes sure, the other instance is started in the same address and service name. so that it is transparent to the application and application need not bother about the change.

Also, the time taken for the fail over might take some time and application should make sure, the transactions happening during this time should be handled by some other mean ie either with a retry mechanism or writing to some temporary repository and when the secondary is up, load the repository into the secondary database.
Andrew C Fieldsend
Respected Contributor
Solution

Re: HP Service Guard for Oracle

Your understanding is essentially correct, although there is really only one Oracle instance which can run on more than one cluster node against a shared disk. The downtime during failover is dependant on the time needed to apply the redo logs during the normal startup process, which is controllable by sizing them appropriately.

If this short downtime is a problem, Oracle RAC runs multiple instances in parallel (against the shared disks), and the Oracle client software knows to reconnect to another running instance if the current connection fails. This can give better OLTP performance, depending on the ability to distribute the loads across the servers, as well as rapid failover since there is no wait for the next instance to start (as it's already running).
psaravan
Occasional Visitor

Re: HP Service Guard for Oracle

Thank you very much. Iam clear now. Initially, we suggested RAC to the client. But they had to select some other architecture due to other reason.
Sajjad Sahir
Honored Contributor

Re: HP Service Guard for Oracle

Dear Psaravan

first try to understand service guard
service guard control up to the volume group then to logical volume.ok
Sajjad Sahir
Honored Contributor

Re: HP Service Guard for Oracle

there is one more clarification thereis no hp service guard for oracle.

oracle cluster is different sevice guard is different ok dear
Sajjad Sahir
Honored Contributor

Re: HP Service Guard for Oracle

once u installed service guard extension for rac then u can configure packages for different nodes for fail over
Serviceguard for Linux
Honored Contributor

Re: HP Service Guard for Oracle

A clarification to sajjad's comments.

There is no Serviceguard for Linux Oracle RAC support. That only exists for the HP-UX version of Serviceguard.

There is support for standard (single instance) Oracle with Serviceguard for Linux. Some customers want the simplification and lower cost of single instance.