我想研究高可用性服务器,然后构建一个演示系统(其中包含 HA Web 服务器 - IIS 和 HA 数据库 - SQL Server)。我对高可用性 SQL-Server 有一些经验,但我不知道在系统级别,HA 解决方案与数据库级别是否不同?
我该如何开始研究这个?有什么线索吗?有什么书吗?有什么信息吗?
非常感谢!
答案1
从根本上讲,高可用性就是减少单点故障。您可以构建一个具有主动/备用负载平衡器、多个 Web/应用层、主动/主动数据库复制的机器集群,但是,如果这些机器只有一个网络连接,那么仍然会存在大量故障点。如果这些机器是双宿主的,但您的 ISP 只有一个到会见室的中转运营商,那么就会存在另一个故障点。电源呢,您的机器可能有两个电源,但是,ISP 提供的电源呢,它对您的机架来说是否完全冗余?
您寻求什么级别的可用性?
我读过关于http://www.amazon.com/Blueprints-High-Availability-Evan-Marcus/dp/0471430269/ref=sr_1_1?ie=UTF8&s=books&qid=1267782128&sr=8-1但我有 *Nix 背景,所以无法评论它是否适合 IIS + MSSQL
祝你好运!
答案2
另一个经常被忽视但大量的故障点是恶意活动。kernel.org 上的一次黑客攻击导致它瘫痪了好几个月!看看 PlayStation 网络黑客攻击!不仅仅是 2 小时的停机时间,而是长达数天/数周的停机时间!损失达数百万美元!黑客攻击应该被视为对您的正常运行时间的威胁,就像硬盘/电源故障等一样……
如果您真的非常重视正常运行时间,请了解一下这个世界的黑客攻击面,或许可以找一位计算机安全顾问来测试您的设置。
答案3
IIS 的高可用性与 SQL Server 的高可用性有很大不同。在为 Web 服务器构建高可用性系统时,您需要在负载平衡器后面进行扩展,这样如果任何一台 Web 服务器发生故障,网站仍然在线。负载平衡器实际上应该是一对以主动/被动对工作的负载平衡器。这同样适用于所有路由器、防火墙、网络上行链路等。
答案4
然后构建一个演示系统(其中包含 HA Web 服务器 - IIS 和 HA 数据库 - SQL Server)
这有点偏离了 HA 的要点。你不能将 HA 封装到演示系统中,因为如果这样做,演示系统本身就容易出现中断。
HA 不是解决方案. HA 是一种方法从而找到解决方案。