|
Home > Archive > IIS Server > June 2005 > NLB failover
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
|
|
|
| I am using NLB to loadbalance two web servers. Having NLB only failover if
the machine is down is not very useful and so I am looking for an easy way to
monitor a url on each webserver and then script NLB to start/stop if the
website is up/down. I have read lots of posts on this subject and I am
confused because it seems there is no built in Windows 2003 utility that will
do this. The tool httpmon looks like what I am looking for but it is for
win2000 and I have not seen any references to it or a suitable replacement in
win2003. Where did it go and why? I do not use IIS for the websites so I
don't know if IIS has something like this built in to handle this. Am I
completely missing something here? I know that MSCS detects application
failure and can failover but from what I can tell it has no concept of any
type of loadbalancing feature. It seems to me that this would be a very
common scenario and there would be a mainstream way to do this without me
hacking together a script to do it. Anybody have any suggestions?
| |
| Jeff Cochran 2005-06-26, 2:47 am |
| On Fri, 24 Jun 2005 14:37:03 -0700, "PaulD"
<PaulD@discussions.microsoft.com> wrote:
>I am using NLB to loadbalance two web servers. Having NLB only failover if
>the machine is down is not very useful and so I am looking for an easy way to
>monitor a url on each webserver and then script NLB to start/stop if the
>website is up/down. I have read lots of posts on this subject and I am
>confused because it seems there is no built in Windows 2003 utility that will
>do this. The tool httpmon looks like what I am looking for but it is for
>win2000 and I have not seen any references to it or a suitable replacement in
>win2003. Where did it go and why? I do not use IIS for the websites so I
>don't know if IIS has something like this built in to handle this. Am I
>completely missing something here? I know that MSCS detects application
>failure and can failover but from what I can tell it has no concept of any
>type of loadbalancing feature. It seems to me that this would be a very
>common scenario and there would be a mainstream way to do this without me
>hacking together a script to do it. Anybody have any suggestions?
NLB doesn't "fail over" in this manner. NLB sends the request to the
server that's available. Both servers can answer the request on a
shared IP. You don't need to monitor the NLB or web site for
failover, it just happens due to the heartbeat signal between servers.
Jeff
| |
| Bernard Cheah [MVP] 2005-06-26, 2:48 am |
| NLB is network load balancing and it's not application aware. hence if the
network is up, it is consider up. But you web app might be down, etc. You
can still use httpmon I guess, or you can get some thirdparty monitoring
apps to monitor and trigger the procedures. (e.g. remove the bad node from
the NLB host list)
--
Regards,
Bernard Cheah
http://www.microsoft.com/iis/
http://www.iiswebcastseries.com/
http://www.msmvps.com/bernard/
"PaulD" <PaulD@discussions.microsoft.com> wrote in message
news:ADB45AB8-77E1-4B71-AB0A-E675E643D7A4@microsoft.com...
>I am using NLB to loadbalance two web servers. Having NLB only failover if
> the machine is down is not very useful and so I am looking for an easy way
> to
> monitor a url on each webserver and then script NLB to start/stop if the
> website is up/down. I have read lots of posts on this subject and I am
> confused because it seems there is no built in Windows 2003 utility that
> will
> do this. The tool httpmon looks like what I am looking for but it is for
> win2000 and I have not seen any references to it or a suitable replacement
> in
> win2003. Where did it go and why? I do not use IIS for the websites so
> I
> don't know if IIS has something like this built in to handle this. Am I
> completely missing something here? I know that MSCS detects application
> failure and can failover but from what I can tell it has no concept of any
> type of loadbalancing feature. It seems to me that this would be a very
> common scenario and there would be a mainstream way to do this without me
> hacking together a script to do it. Anybody have any suggestions?
| |
|
| Thanks Jeff. NLB works as you described only when the network on a host
machine becomes unavailable due to the machine locking up, a bad cable or the
machine being shutdown/powered off. However, NLB isn't aware of websites on
the host machine or any applications for that matter. If a website on a host
machine is unresponsive, NLB will continue to send requests to the site.
What I am trying find out is what the recommened utility is to monitor
applications/websites on an NLB cluster and issue stop commands on the
cluster host when the app/website is down.
"Jeff Cochran" wrote:
> On Fri, 24 Jun 2005 14:37:03 -0700, "PaulD"
> <PaulD@discussions.microsoft.com> wrote:
>
>
> NLB doesn't "fail over" in this manner. NLB sends the request to the
> server that's available. Both servers can answer the request on a
> shared IP. You don't need to monitor the NLB or web site for
> failover, it just happens due to the heartbeat signal between servers.
>
> Jeff
>
| |
|
| Bernard - I have tried httpmon but it seems to only work for http sites on
port 80. I need something that will let you specify the port or whole url.
I've seen some of your other posts where you have recommended ipsentry and I
have tried that out. It and others all seem like a lot of product for what I
am trying to accomplish. Do you know of any lightweight products (similar to
httpmon) that would do this? Httpmon is nice since it will issue the
stop/start commands to the cluster for you where with most 3rd part apps you
have to write a script that will do it based on some alert. Do you know if
MOM has any plugins that can accomplish this?
Thanks
PaulD
"Bernard Cheah [MVP]" wrote:
> NLB is network load balancing and it's not application aware. hence if the
> network is up, it is consider up. But you web app might be down, etc. You
> can still use httpmon I guess, or you can get some thirdparty monitoring
> apps to monitor and trigger the procedures. (e.g. remove the bad node from
> the NLB host list)
>
> --
> Regards,
> Bernard Cheah
> http://www.microsoft.com/iis/
> http://www.iiswebcastseries.com/
> http://www.msmvps.com/bernard/
>
>
> "PaulD" <PaulD@discussions.microsoft.com> wrote in message
> news:ADB45AB8-77E1-4B71-AB0A-E675E643D7A4@microsoft.com...
>
>
>
| |
| Jeff Cochran 2005-06-28, 5:54 pm |
| On Tue, 28 Jun 2005 07:15:03 -0700, "PaulD"
<PaulD@discussions.microsoft.com> wrote:
>Thanks Jeff. NLB works as you described only when the network on a host
>machine becomes unavailable due to the machine locking up, a bad cable or the
>machine being shutdown/powered off. However, NLB isn't aware of websites on
>the host machine or any applications for that matter. If a website on a host
>machine is unresponsive, NLB will continue to send requests to the site.
>
>What I am trying find out is what the recommened utility is to monitor
>applications/websites on an NLB cluster and issue stop commands on the
>cluster host when the app/website is down.
Gotcha. I see HTTPMon didn't suit your needs, which would probably be
my choice as well. Application level failover isn't a cheap option,
and it's why products such as Application Center exist.
You might try scripting a NLB stop when the script fails to retrieve a
specific file from a URL, though I can't imagine that would be very
robust and there would certainly be time delays. What's Up Gold can
do application monitoring on SQL Server I know, but I haven't looked
at it in quite a while. I think Ipswitch still gives 30 day trials on
it. I didn't think IPSentry would do this, but I haven't looked at it
recently either.
Unfortunatley, I haven't seen any inexpensive options beyong HTTPMon
for this. Maybe configuring a port 80 URL to monitor would at least
get you part way there.
Jeff
[vbcol=seagreen]
>"Jeff Cochran" wrote:
>
| |
| Aragorn 2005-06-29, 5:53 pm |
| Hi,
What we have found works nicely is to script your monitoring application to
perform a "wlbs /stop" when it detects a problem. Ensure you set a flag to
highlight the fact that you have a problem. Some other process then monitor
the situation as long is the flag is set and if it detects that the service
has recovered it then clears the flag and perform a "wlbs /start".
--
Regards,
--
Aragorn
"PaulD" <PaulD@discussions.microsoft.com> wrote in message
news:ADB45AB8-77E1-4B71-AB0A-E675E643D7A4@microsoft.com...
>I am using NLB to loadbalance two web servers. Having NLB only failover if
> the machine is down is not very useful and so I am looking for an easy way
> to
> monitor a url on each webserver and then script NLB to start/stop if the
> website is up/down. I have read lots of posts on this subject and I am
> confused because it seems there is no built in Windows 2003 utility that
> will
> do this. The tool httpmon looks like what I am looking for but it is for
> win2000 and I have not seen any references to it or a suitable replacement
> in
> win2003. Where did it go and why? I do not use IIS for the websites so
> I
> don't know if IIS has something like this built in to handle this. Am I
> completely missing something here? I know that MSCS detects application
> failure and can failover but from what I can tell it has no concept of any
> type of loadbalancing feature. It seems to me that this would be a very
> common scenario and there would be a mainstream way to do this without me
> hacking together a script to do it. Anybody have any suggestions?
|
|
|
|
|