前面讨论过的三种基本SAN拓扑结构主要来源于底层的光纤路径技术。目前该技术是用于建立SAN的主要方法。然而,这些并不是可用于建设SAN的主要的拓扑结构。本节将介绍其他目前使用的拓扑结构,以及那些源于仍在研究的新技术所部署的结构。
1.SAN中的高可用性集群
SAN最重要的特征之一在于多个服务器访问所有SAN上的设备或子系统的能力。该特征的一个应用是高可用性或HA存储在集群系统中的应用。有许多关于集群是什么,以及该如何被实现的说法。当一个服务器失效时,如何将应用程序由一个服务器转移到另外一个服务器上?许多围绕集群进行的讨论都必须面临这样一个问题。接下来的问题是,高可用的集群如何增强其存储的高可用性。
和昂贵的大型机或其他特殊的冗余系统(如由Tandem计算机公司建造的系统)相比,集群的特点在于使用相对便宜的冗余系统获得相对较高的系统和数据可用性。最基本的集群有两个系统,其中一个被设置为运行所有应用程序的主系统,而另外一个被设计成为从系统。当主系统失效时,从系统将停止等待,并接管主系统的应用。SAN技术允许服务器共享一个极其简单的交叉连接中的相同存储设备或子系统,如图所示。
在图中,有一点必须注意的是,此处没有使用网络交换机或集线器。这种SAN可以使用或不使用集线器和交换机。这里,所有服务器都具有双重主机控制器,而且所有子系统具有双重子系统控制器。因此该系统可以提供SAN上所有4个节点之间的连接。设备级冗余由子系统控制器来管理,它能使用奇偶RAID或镜像设备来防止发生设备丢失的情况。
主服务器使用子系统中的可用存储器。如果它失效,则从服务器将开始访问所有的子系统。然而需要注意的是,主机I/O控制器、子系统或线缆上的失效将导致一个有趣的问题。例如,如果主服务器上的主机I/O控制器A失效,它将无法连接到存储子系统1。在这种情况下,会发生两种情况:所有的服务都被转交给从服务器,或者从服务器拾起子系统1上的工作。试图使用I/O路径来标识受影响的应用是不容易的,因此更常见的情况是,集群会将其所有的工作移交给从服务器。
一旦从服务器开始运行,它到任意一个子系统的数据通路的失效将会导致数据的不可访问。这种失效可能发生在主机I/O控制器、SAN节点或子系统控制器中。有一种方法能避免这种可能出现的失效,即使用和多端口存储子系统相连接的双端口主机I/O控制器(如果它们可用的话)。这些多端口存储子系统能在任何主机I/O控制器和任何系控制器之间提供通路。图中对此进行了说明。对在1999年可使用的产品而言,这种方案并不十分现实。因为在这种SAN失效解决方案中,所需的多端口主机I/O控制器和设备驱动器还没有出现。