Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

We have many small applications running on a server running Windows Server 2003, such as Windows/NT Services, scheduled tasks, etc.

Recently, the server was changed to a clustered server with two nodes, administered with Microsoft Cluster Administrator, and upon installing an application requiring a reboot, we discovered that the reboot caused a fail-over to the other node of the cluster, and the application was not available on the other node.

Does this imply that we must deploy each application to each node in order to ensure high availability for each application? Does this essentially multiply the effort for applying application updates by the number of nodes in the cluster?

Also, I believe the cluster is set up so that the inactive nodes do not have access to the storage drives, so the cluster would have to be manually switched to each node before the applications could be installed/updated on that node.

This all seems to be counter-intuitive for having high-availability in a production environment, in that simple updates would require switching nodes and potentially reducing availability just to keep the nodes' application versions in sync.

There seems to be a lot of documentation on setting up clusters, but I'm having a hard time finding resources on how to design simple .NET applications for deployment to a clustered server environment. Perhaps I'm not asking the right questions...

Can anyone point me in the right direction?

share|improve this question
    
The right direction is modern technology that does clustering better. Server 2008 R2 or Server 2012, not a decade old OS. –  HopelessN00b May 5 at 8:34
    
Does this imply that we must deploy each application to each node in order to ensure high availability for each application? Does this essentially multiply the effort for applying application updates by the number of nodes in the cluster? - Yes and Yes. How would the application work if there was only a single copy and the host running that copy went down? As you saw, the application went down because it's not installed and running on the failover node. –  joeqwerty May 5 at 14:03
    
This all seems to be counter-intuitive for having high-availability in a production environment, in that simple updates would require switching nodes and potentially reducing availability just to keep the nodes' application versions in sync. - It seems perfectly intuitive to me. If I want my application to be available on nodeA and nodeB then I need to install it on nodeA and nodeB, whether they are active/active or active/passive. –  joeqwerty May 5 at 14:04
    
@HopelessN00bGeniusofnetwork Point taken regarding modern technology as the right direction. Generally speaking, I agree, however, do you happen to know if Server 2008 R2/2012 does in fact do clustering better, or do you simply believe it is likely to do it better? –  Lumirris May 6 at 18:50
    
@joeqwerty I suppose I meant to say that I was surprised that the cost of having high availability with nodes was that you would be manually installing/updated each node of the cluster. In a scenario with many nodes, this seems like it would be creating a great deal more work for whoever is maintaining updates to applications. I would have thought that you could set it up so that one install/update operation on an application would propagate to all nodes. –  Lumirris May 6 at 18:53

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.