3

I have 4 web servers (Windows Server 2008 R2) and just one public IP address.

They all need to be a part of web farm (so the requests for the site are spread over all servers).

Two questions:

1) Is it possible and how, or must I have 4 public ip adresses?

2) Can I host another site with another host header on just ONE of the servers and still use just one public IP address?

4 Answers4

2

Another set of words (and a more enterprise answer IMHO): Load Balancer....

There are various on the market Free and Open Source as well as closed source. See HA Proxy / jetNEXUS. You can use Apache with some mods proxy-lb to do this as well.

My argument against NLB is that it is a dirty hack relying on the switch fabric to spread the load. Althought it is bundled in with windows server for free. Apache costs nothing either and can add much more functionality and performance.

1

1 word: Clustering.

Look at the Microsoft "Network Load Balancing" service.

TheCompWiz
  • 7,349
  • 16
  • 23
1

Your two best options, the options most 'native' to your chosen operating system are:

NLB works on the IP layer, and ARR works on the HTTP layer. If you read the documentation that I linked to above, and find that it's not easy to follow, then maybe you should consult a guy who has worked with these things before. Load balancing installations aren't exactly complicated per se, but there are myriads of little things that can go wrong and be counter-intuitive to troubleshoot.

2) Can I host another site with another host header on just ONE of the servers and still use just one public IP address?

No. Maybe you could frankenstein' something up by broadcasting the incoming HTTP request to all 4 servers, and configure only one server to respond. But it's a mess, and it goes against all conventions for how this is done. Either get multiple IP addresses and dedicate one IP address to each website, or have all 4 servers respond and use HTTP 1.1 name-based virtual hosting.

0

Answers to your questions:

1) Use a free load balancer. I believe Citrix Netscaler even has a free VM appliance now (with limitations - but maybe it will work for you)

2) Yes, you can use a host header and host on the same IP address.

For #1, if you really wanted to - you could use DNS round robin - poor man's load balancing. Simple but easy. You won't gauranttee equal load though. I would set your TTL (time to live) to 5 minutes, any lower not all DNS ISP caching will respect it for traffic reasons. This way if a server goes bad, you can remove the IP from DNS and it SHOULD stop going to that server after 5 minutes. Reducing the length of your outage.

I hate NLB etc - if a true LB (F5 or Netscaler) isn't affordable - try the free ones first as suggested, or try DNS if you need to be up and running today ASAP, while you work on putting in the free load balancer. Maybe there's a VM appliance out there.