一个IP地址后面的IIS Web场中的多个Web服务器

我有4个Web服务器(Windows Server 2008 R2)和一个公共IP地址。

他们都需要成为networking农场的一部分(因此,网站的请求分布在所有服务器上)。

两个问题:

1)这是可能的,如何,或者我必须有4个公共IP地址?

2)我可以在另外一台主机头上托pipe另一个站点,但只使用一个公共IP地址?

另一组词(和一个更多的企业答复恕我直言):负载平衡器….

市场上有各种各样的自由和开放源代码以及封闭源代码。 请参阅HA代理/ jetNEXUS。 你也可以使用Apache的mod-proxy-lb来做到这一点。

我反对NLB的观点是,依靠交换结构来传播负载是一件肮脏的事情。 虽然它与Windows服务器免费捆绑在一起。 Apache也不需要花钱,可以添加更多的function和性能。

1个词:聚类。

看看微软的“networking负载平衡”服务。

你的两个最好的select,对你select的操作系统最“原生”的选项是:

  • networking负载平衡 (NLB)和
  • 应用程序请求路由 (ARR)。

NLB工作在IP层,ARR工作在HTTP层。 如果你阅读上面链接的文档,发现不容易遵循,那么也许你应该咨询一个曾经从事这些工作的人。 负载均衡安装本身并不是很复杂,但是有大量的小事情可能会出错,并且与直觉相反。

2)我可以在另外一台主机头上托pipe另一个站点,但只使用一个公共IP地址?

不,也许你可以通过将传入的HTTP请求广播到所有4个服务器,然后configuration一个服务器来响应frankenstein。 但是,这是一团糟,这是如何做到这一点,违背了所有的惯例。 获取多个IP地址并为每个网站指定一个IP地址,或者让所有4个服务器响应并使用基于HTTP 1.1名称的虚拟主机 。

回答你的问题:

1)使用免费的负载平衡器。 我相信Citrix Netscaler现在甚至有一个免费的虚拟机设备(有限制 – 但也许它会为你工作)

2)是的,你可以在同一个IP地址上使用主机头和主机。

对于#1,如果你真的想 – 你可以使用DNS循环 – 穷人的负载平衡。 简单但容易。 尽pipe如此,你不会承担同样的负担。 我会设置您的TTL(生存时间)为5分钟,任何较低的DNS DNScaching都不会因为stream量的原因而被尊重。 这样,如果服务器坏了,你可以从DNS中删除IP,并且应该在5分钟后停止去那个服务器。 减less停电的时间。

我讨厌NLB等 – 如果一个真正的LB(F5或Netscaler)是不负担得起的 – 尝试所build议的免费的,或尝试DNS,如果你需要立即启动和运行,尽快你在工作平衡器。 也许有一个VM设备在那里。