It sounds like a Microsoft Windows Server Cluster is what you
would need.
http://www.microsoft.com/windowsserver2003/enterprise/clustering.mspx
From: MSU Network
Administrators Group [mailto:[log in to unmask]] On Behalf Of Kwiatkowski,
Nicholas
Sent: Friday, March 07, 2008 8:29 AM
To: [log in to unmask]
Subject: Server Uptime/Failover
Nag List,
Looking for your opinion on how to increase one of our applications
uptime. Fist a little background:
Our vendor recently came out with a new version of a previously rock-solid
application/service. Prior versions were internal to our phone system,
actually sitting on a programmable circuit-pack within the switch. Pretty
much it boiled down to that as long as the PBX was up, this application stayed
up as well. While this particular application is not deemed
'CRITICAL' by our group (that designation is really only for
life-saving/emergency services), it is pretty much deemed near-critical.
With this most recent release, the vendor has decided to externalize the
application, having it sit on a Windows 2000/2003 server. That offers us
many advantages, such as being able to throw more powerful equipment at it, and
allowing it to integrate with our existing backup solution. However, as this
application got externalized, it no longer has the resiliency / uptime that it
once had. It is no longer the case that this application would work just
as long as the PBX was up.
My question to the NAG list is this: How does one create a server
environment (in Windows) that allows for automatic failover should this
equipment or software fail? I am really looking for a solution that would
allow the application on Server-A to run, and should it fail, Server-B would
pick up without manual intervention. We would also need something that
would be able to share a common IP address (as we don't want to re-home all the
clients manually if/when the failure occurs).
The application is a standard Windows Services written in C++. It uses
Sybase as it's DB in the background. It uses TCP/IP sockets
to communicate to the end-clients. My standard solution of using an
HTTP Load balancer or Java Application clustering won't seem to work in
this case.
I
am more personally in-tune with the Linux/Unix world as far as this goes, and
haven't really been keeping up on it in the Windows side of the house.
The vendor has suggested looking at EMC AutoStart, however in talking with EMC,
they won't officially support Sybase DB's, and their solution may cause
corruption to the DB.
Thanks
for the help!
-Nick
Kwiatkowski
MSU
Telecom Systems, P&E Group