尽管“存储区域网络(Storage Area Network:SAN)”被认为是一种稳定且可靠的技术,可是还是难免发生一些错误。考虑到SAN的复杂程度,检查并解决和 SAN相关的问题的过程常常被认为是令人生畏的一项任务。
在这篇文章里,我将提供一些方法,希望这些方法能够让你在尝试解决和SAN相关问题的时候好过一点。
当你尝试检查一个SAN并且解决相关问题的时候,你也许会发现大多数情况下问题并不是由SAN引起的。我来解释这是为什么。
首先请假设你拥有一台独立的PC,而该PC使用的一个SCSI硬盘驱动器。接着再假设某一天你突然发现无法读取该硬盘上的数据了。造成这个问题的原因有很多,有可能是磁盘驱动器本身坏了,当然还可能是你的数据线出现了问题,或者磁盘控制器坏了; 还有可能是硬盘上的数据被清除,分区被删除或者是损坏。我想告诉你的是,从无法访问磁盘上的数据这个现象并不能推出一定就是硬盘本身出现了问题,因为还存在着很多非硬盘本身的原因。
现在我们来看看在SAN上发生的类似的情况。我们知道,SAN只是一个基本的将一台服务器和磁盘阵列或者其他存储设备连接的方法。SAN的工作机制是允许服务器使用SCSI命令来和存储设备进行通讯。
假设服务器突然无法通过SAN读取数据了,除了你的SAN可能出现了问题之外,还可能有一些非SAN的问题,例如你的数据本身出现了错误。除此之外,服务器和存储单元之间的网络连通性、数据被删除、数据损坏、或者数据和服务器分离等等因素也会导致类似的情况。在这种情况下,你应该把 SAN系统当成是直接把存储设备和服务器连接的情况,按照这种思想来解决和SAN相关的问题。
但是如果问题真的来自于SAN本身,那么该怎么办呢?最好的策略是从SAN的中心开始检查问题,然后向边缘扩展。
步骤1:先从光纤通道这一级别开始检查。这么做的原因是,光纤通道的交换机处于SAN的中心位置,并且它也是保证服务器和存储设备、以及服务器之间和存储设备之间网络连通性的设备。
你应该首先确认中央交换机是否能和服务器以及各个存储设备正常的物理连接。如果你能确定它们之间物理连接正常,那么你就可以确认问题不是出在光纤设备上。在检查光纤设备的时候,你应该注意诸如不稳定的连接、丢失的设备、不正确的区域配置以及不正确的交换机配置等地方。
步骤2:使用一些诊断工具来测试交换机的通讯情况。这一步可以测试存储设备是否和交换机正常通讯。如果没有的话,那么就可以知道问题出在哪个部分。
有可能是交换机和存储设备之间的物理连接中断、也可能是存储软件的配置不正确。而如果交换机可以和存储设备进行通讯,但是无法和服务器通讯,那么问题就出现在交换机和服务器之间的连接上。这就是我推荐你从SAN的中心开始检查问题的原因,只需要一些简单的测试,你就可以排除在SAN中产生问题的一半的可能性(不管这些可能性是来自服务器端还是存储设备端)。
步骤3:如果你能确定问题出现在服务器和交换机之间,那么你的工作就会简单一些。在这种情况下,请检查下面这些可能的情况:
导致问题发生的原因有可能是因为主机的总线适配器出现问题、驱动程序丢失或者配置不正确。除此之外还和你为服务器配置的访问虚拟存储设备的方法有关。你可以使用硬件厂商提供的诊断工具来判断,也可以运行一些协议分析工具来判断网络接口卡(Network Interface Card:NIC)是否工作而确定驱动程序是否工作正常。如果NIC工作正常的话,那么问题就应该出在相关的系统配置上。
简而言之,检查并解决SAN出现的问题的确是一个复杂的工作,不过你可以通过做两件事情来减轻你的工作量。第一:先判断到底是SAN本身的问题还是普通的存储设备问题。第二:从SAN的中心开始检查和解决问题,这样你就可以快速的定位到大多数问题出现的地方。