Operating System - HP-UX
1833772 Members
2189 Online
110063 Solutions
New Discussion

Microsoft Application Server and HP/UX ServiceGuard

 
Jim Rayhorn
Occasional Contributor

Microsoft Application Server and HP/UX ServiceGuard

How would you monitor/restart a service (application) running on a Microsoft server in the event of a ServiceGuard failover on a backend HP/UX database server?

I am working on a HA solution for a two-tiered application. The first tier consists of a number of Windows application servers whose applications create a persistent connection to the database upon startup. The second tier is an Oracle database server (HP-UX) that we will be clustering. I am trying to identify options for automatically restarting the application when the connection to the database is broken (due to a failover or other event).

Thanks,

Jim
9 REPLIES 9
Jeff Schussele
Honored Contributor

Re: Microsoft Application Server and HP/UX ServiceGuard

Hi Jim,

My initial thoughts would be that this should be monitored from the app side. Something like a service that periodically polls the server to see that the destination port is still active & accepting requests. Something as simple as
telnet hostname 1521
that would determine that Oracle is still up & accepting requests.
It would be much easier to restart the app on the server that's running it than from the server it's attaching to.

My 2 cents,
Jeff
PERSEVERANCE -- Remember, whatever does not kill you only makes you stronger!
Christopher Caldwell
Honored Contributor

Re: Microsoft Application Server and HP/UX ServiceGuard

For applications that require database connectivity, we generally program the application to attempt to automatically reconnect to the database. We detect the error of "missing connection", and we attempt to reconnect - with built-in retries.

As an alternative, you could script the remote restart of the service in the package control script.
Jim Rayhorn
Occasional Contributor

Re: Microsoft Application Server and HP/UX ServiceGuard

Thanks for the quick replies. Are you aware of an Openview or ServiceGuard (or, Insight Manager...) agent that will run on Microsoftn and look for events of interest that could be used to trigger a restart?
Mel Burslan
Honored Contributor

Re: Microsoft Application Server and HP/UX ServiceGuard

Even though there is a serviceguard component in your question, in my opinion, it could be better answered in a windows centric forum.

Together with not being a windows administrator, the concept of remote program execution is not an unknown in windows environment, otherwise this many malware could not infest the Redmond's finest OS. So, in your cluster control script, i.e., /etc/cmcluster//.cntl, you will see a section marked as

# START OF CUSTOMER DEFINED FUNCTIONS
...
# END OF CUSTOMER DEFINED FUNCTIONS

in the proper places in this section, you will just need to place remote execution commands to restart your windows application. Details of this activity eludes me as my administrative knowledge of windows environment is next to none.

Or, you can poll the cluster from your windows machine, using a simple telnet application and some windws scripting, again details should be asked to a windows professional. But, you can get the output of a "cmviewcl -v" command in a text file. And using your favorite text processor, let it be perl, php, vbscript or what-have-you, one can figure out if the oracle package is running on a different node compared to thel previous execution of this script. If you run them frequently enough, you can catch the failover in a matter of secconds and resatrt your apps locally on windows boxes.

Hope this helps
________________________________
UNIX because I majored in cryptology...
Jim Rayhorn
Occasional Contributor

Re: Microsoft Application Server and HP/UX ServiceGuard

Thanks everyone for your replies. I'm not a Windows expert either (by any stretch of the imagination).

I'll post this question also to the Microsoft forum and see what information I get. I would think this is a pretty common problem in our world of multi-tiered applications.
Steven E. Protter
Exalted Contributor

Re: Microsoft Application Server and HP/UX ServiceGuard

Shalom,

if the front end is Windows Server 2003, clustering is built in.

there is an ugly, gui facility to create clustering and monitoring to keep the application up.

If SG is configured with a floating ip, a database failoer should be transparent to all.

SEP
Steven E Protter
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
Mel Burslan
Honored Contributor

Re: Microsoft Application Server and HP/UX ServiceGuard

Jim,

There is a windows executable for serviceguard manager, which lets you drag and drop packages among the nodes of a cluster to move them from one to the other. It is the windows GUI front end to the gory command line for the point-n-click happy admins. I have seen our HP consultant use it a few times. I am sure it has some nice dll files associated with it, with hooks into the cmcld on the unix side.

Maybe you can inquire about it to your HP account support engineer and see if it is something that can be integrated into your solution.
________________________________
UNIX because I majored in cryptology...
Serviceguard for Linux
Honored Contributor

Re: Microsoft Application Server and HP/UX ServiceGuard

There are no dll's available like those that Mel mentioned in his second response.

I believe most do as Jeff suggested. Since the IP address used for accessing the DB fails over, then polling the DB through that mechanism will tell you when it is back up.

Remember, what you care about is when the DB has recovered and can accept transactions. Knowing when it has started on the SG node is generally insufficient information.

Re: Microsoft Application Server and HP/UX ServiceGuard

Jim,

Have a look at this thread:

http://forums1.itrc.hp.com/service/forums/questionanswer.do?threadId=1019274

This isn't a million miles away from waht you are trying to do...

HTH

Duncan

I am an HPE Employee
Accept or Kudo