views:

59

answers:

2
+3  Q: 

NLB and Web Deploy

I have two webservers in a cluster serving a web application.

Using MS Web Deploy to push a new version of the application to one server, and then again to synchronize the files to the other server in the cluster. It seems to be the most ordinary thing to do.

But wouldn't there be a problemm, when one server is deployed with the new version, and the other is not yet finished. Will it not cause troubles, when a page loaded with the new version makes a webservice request and the balancer sends the request to the server with the old version?

What's the best way to avoid this?

I thought about scripting a drainstop of the server, that we deploy to, and make sure only one server is running at a time. But I can't find anyone else, who seems to have written about such a solution. And guess that it doesn't scale very well too.

Another solution could be to shut down all servers when updating. But that doesn't seems very clever.

Any suggestions?

+3  A: 

You could use DFS so that the files are basically instantly copied over to the other server(s).

Also, you could edit the host files of each server so that each server uses it's own hosted services instead of going through NLB and potentially going to another server. There is rarely a reason to go to another server when you are already on a server, it only causes headaches like you mentioned and decreases performance.

Jab
Thank you very much. That comment about editing the host files, seems like a pretty good idea! Do you by any chance have any references to where I might find guidance about such a setup?
asgerhallas
I don't, sorry! That's just how we do it here. We just setup the host files to computer's IP address so that when it makes "external" calls it will use it's local site setup.
Jab