I don’t think that the dollars are as
important as the availability. This is a client-server application (not a
web service which would be helped by a load balancer) that has the potential to
be used by hundreds of users across campus, and is considered to be “near-critical”.
We can pretty much go in two directions –
one with high availability, and the other with fail-over (automatic). I’m
hoping for comments on both. The emails so far on Windows Server 2003
clustering include some great information. Windows Server 2008
Clustering is said to be officially supported by this vendor.
Has anybody done any of this with any of
the VMWare solutions? I’m interested in comments on their VMWare Infrastructure
products too.
-Nick Kwiatkowski
MSU Telecom Systems
From: MSU Network
Administrators Group [mailto:[log in to unmask]] On Behalf Of
Sent: Friday, March 07, 2008 11:49
AM
To: [log in to unmask]
Subject: Re: [MSUNAG] Server
Uptime/Failover
To support johns observation with
clustering you are using a load balance service as well with in the
cluster. So there is division amongst the connections and if a server in
the cluster become unavailable the client affected would have to reconnect to
the target cluster IP or app name.
This is the difference between high
availability versus Failover. You can purchase hardware for your servers
that will create a seemless failover for any app you run on cluster environment
that cost is a bit much, but it depends on how you measure ROI. If you are in
an environment that does measure ROI or TCO then know that the hardware
solution for FAILOVER will give you a great position when it comes to the
9’s (99.x.x.x) and your apps reliability.
Here are two I know about that are not so
pricy- http://www.kemptechnologies.com/demo.shtml?gclid=CKKWu5m4-5ECFQLwPAodnToTiw
,
If you need that high availability
improvement and you don’t have a big budget Indeed the windows clustering
can help you make a webfarm/appfarm that can be reliable and scalable. I
am sure there are some scripts out there and code snippets to keep apps from
experiencing connection loss delays.
Good luck.
Timo Vasquez- D.S.S. Team Member
Administrative
Information Services
517-353-4420 ext 249
From: MSU Network
Administrators Group [mailto:[log in to unmask]] On Behalf Of schwarzj
Sent: Friday, March 07, 2008 11:07
AM
To: [log in to unmask]
Subject: Re: [MSUNAG] Server
Uptime/Failover
I agree with Mike I
think you are looking at Microsoft clustering. My biggest complaint with
Microsoft Clustering is that it is not totally seamless when failover
occurs. Then again I am not sure if there is a failover clustering method
that is. This link http://support.microsoft.com/kb/171277
explains a little bit about failover time. In my case it just an annoyance
and most of the time users don’t even know a failover occurred, because
we are talking about seconds of time here. Unless, they are in one of my
JAVA based apps at the time of failover and they get kicked out which requires
a restart of the program. I am not sure about DB failover times, but I
thought I would just add that the redundancy is great it just comes with some
snags.
Here also is one of
the more useful guides that I used to setup my cluster.
John
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: [MSUNAG] 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