天天看点

Failover Cluster(故障转移群集)

故障转移群集中的可伸缩性通常是通过扩展群集内的单个服务器,或向其中添加更多功能来实现的。 了解以下两点是很重要的:故障转移群集必须设计为处理预期负载,各个服务器的大小应当能够适应 CPU、内存和磁盘使用的预期增长。 Failover Cluster 服务器通常是高端多处理器服务器,并且它们被配置为使用多个冗余子系统来获得高可用性。 如果解决方案的资源要求超过了群集中服务器的限制条件,则扩展群集将是极其困难的。

示例

为了帮助您更好地了解如何使用故障转移群集来实现高可用性,下面的讨论分步演示了如何将已经实现的基本解决方案(它包含单个系统,即故障单点)重构为高度可用的解决方案。

非故障转移解决方案

一开始,组织可能只有基本解决方案体系结构(例如,图 1 中略述的体系结构)。虽然该解决方案可能满足最初的可用性要求,但是某些因素(如用户数的增长或需要应用程序停机时间更短)可能迫使您对设计进行更改。

(图1)

在图 1 中,数据层仅包含一台为应用程序层提供服务的数据库服务器 (Database10)。 如果数据库服务器或它运行的软件发生故障,则应用程序服务器将不再能够访问用来为客户端提供服务的数据。 这将使应用程序对客户端不可用。

故障转移群集解决方案

为了提高解决方案的可用性,组织可能决定消除数据层中的单个数据库服务器造成的潜在故障单点。 为此,可以将服务器添加到数据层,并利用现有数据库服务器、新服务器和共享存储设备创建故障转移群集。 在说明该更改的图 2 中,群集由连接到共享存储阵列的两台服务器组成。

图2

第一台服务器 (Database01) 是处理所有事务的活动服务器。 仅当 Database01 发生故障时,处于空闲状态的第二台服务器 (Database02) 才会处理事务。 群集将一个虚拟 IP 地址和主机名 (Database10) 在客户端和应用程序所使用的网络上公开。

注意:您可以将此设计扩展为包括多台活动服务器(除了所示的服务器外),要么使它们共享单个备用服务器,要么将每个活动服务器配置为另一个活动服务器的备用服务器。

注意:您可以将此设计扩展为包括多台活动服务器(除了所示的服务器外),要么使它们共享单个备用服务器,要么将每个活动服务器配置为另一个活动服务器的备用服务器。

Failover Cluster 模式具有的优缺点:

优点

适应计划内的停机时间。故障转移群集可以允许系统有停机时间,而不会影响可用性。 这样,就适应了日常的维护和升级需要。
减少计划外停机时间。 故障转移群集通过消除系统和应用程序级别上的故障单点,减少了与服务器和软件故障有关的应用程序停机时间。

缺点

会增加响应时间。 对于故障转移群集设计来说,由于备用服务器上的负载增长,或需要更新多台服务器的状态信息,因此会增加响应时间。
增加设备成本。故障转移群集所要求的额外硬件很容易使基础结构层的成本加倍。

(http://www.microsoft.com/china/MSDN/library/architecture/patterns/esp/DesFailoverCluster.mspx?mfr=true)

继续阅读