支持从存储区域网络启动(SAN)

本文介绍从存储区域网络(SAN)启动 Windows 服务器的支持性。

原始 KB 数: 305547

详细信息

如果 SAN 供应商支持启动 Windows 服务器的特定硬件平台,则 Microsoft支持从存储区域网络(SAN)启动。 SAN 和主机总线适配器(HBA)必须根据 SAN 供应商的准则进行配置,SAN 供应商 必须 充当与启动相关的问题的主要联系点。 之所以存在此要求,是因为从 SAN 启动很复杂,供应商需要支持特定配置,因为 SAN 供应商提供了 SAN 启动可支持性声明。 请务必注意,本文中包含的信息不应是从 SAN 启动所需的项的包容性列表。 SAN 供应商必须提供有关如何使其硬件(存储系统、交换机、主机总线适配器等)正常工作的特定步骤、驱动程序、固件修订和资源。

配置

必须解决以下问题,以便多台计算机能够从 SAN 成功启动:

  • 若要从 SAN 启动多台计算机,必须在交换机环境中配置 SAN,或者必须直接从每个主机连接到存储子系统的光纤通道端口之一。 从 SAN 启动多个服务器时,不支持使用光纤通道 - 仲裁循环(FC-AL),因为它不允许附加到 SAN 的主机彼此正确隔离。 切换环境允许主机彼此分开。 仅当从 SAN 启动单个服务器时,才支持启动具有光纤通道仲裁循环拓扑的 SAN。

  • 主机必须具有从其启动的磁盘的独占访问权限。 SAN 上的任何其他主机都不应能够检测或有权访问同一逻辑磁盘。 这可以通过使用逻辑单元数(LUN)管理(如 LUN 掩码、分区或这些方法的某种组合)来实现。 LUN 管理通常在交换机、存储子系统和/或主机总线适配器(HBA)级别配置,而不是在 Windows 中配置。 Windows 不提供映射 LUN 的功能。

  • 多路径软件和多个 HBA 可改善从路径故障中恢复的机会。 在单个主机中拥有多个 HBA 的目的是使冗余和(可能)提高吞吐量。 但是,如果发生故障并丢失了 SAN 的路径,则可能会有一段时间无法访问 SAN 上的驱动器。 此路径失败可能会导致 Windows 服务器出现问题。 多路径软件的行为在供应商之间差异很大。 检查存储/RAID 系统的 Windows 目录(以前是硬件兼容性列表或 HCL),以确保多路径驱动程序与存储系统位于 Windows 目录中。 如果找不到多路径软件,请联系 SAN 供应商。

  • 如果附加的主机是 Windows 2000 群集解决方案的一部分,则必须对启动过程使用一个 HBA,并为共享存储使用单独的 HBA。

  • 如果附加的主机是 Windows 2000 群集解决方案的一部分,并且正在使用Microsoft多路径 I/O (MPIO) 功能,则需要四个 HBA。

故障排除

本部分介绍几个可能阻止 Windows 服务器从 SAN 成功启动的问题:

  • 配置 SAN 时,一个常见问题是,多个主机可能有权访问同一逻辑磁盘。 这通常是因为未使用适当的 LUN 管理。 Windows 的默认行为是附加并装载它检测到 HBA 驱动程序何时加载的每个逻辑单元。 如果多个主机装载同一磁盘,则文件系统可能会损坏。 由 SAN 配置决定,以确保一次只能有一个主机访问特定的逻辑磁盘。 访问同一逻辑磁盘的多个主机的症状如下:
    磁盘管理在多个主机上显示相同的逻辑磁盘。 即插即用在添加或配置新逻辑磁盘时,可能会在多个主机上出现新硬件的通知。 尝试使用“我的计算机”或“Windows 资源管理器”访问逻辑磁盘时,可能会收到“拒绝访问”、“设备未就绪”或类似错误消息,指示其他主机有权访问同一逻辑磁盘。

  • 计算机停止响应(挂起)或响应时间缓慢。 这可以指示页面文件存在较高的延迟,这可能伴随着系统日志中的事件,例如:

    事件 ID:51
    事件类型: 警告
    事件源:磁盘
    说明:在分页操作期间在设备 \Device\Harddisk0\DR0 上检测到错误。

    事件 ID:11
    来源:%HBA_DRIVER_NAME%
    说明:驱动程序在 Device\ScsiPort0 上检测到控制器错误。

    事件 ID:9
    来源:%HBA_DRIVER_NAME%
    说明:设备 \Device\ScsiPort0 未在超时期限内响应。

    如果前面的错误消息位于系统日志中,则表明 Windows 正在尝试访问磁盘,并出现问题。 如果引用的磁盘位于 SAN 上,则可能表示存在延迟问题。 如果显示事件 ID 51,则表明内存管理器尝试将数据复制到内存或从内存复制并出现问题。 页面文件延迟问题的另一个指标是,如果 Windows 服务器出现系统故障,并且以下错误消息之一显示在蓝屏上:

    0x00000050 PAGE_FAULT_IN_NONPAGED_AREA

    0x0000000A IRQL_NOT_LESS_OR_EQUAL

    可能的解决方法是将页面文件放置在主机的本地硬盘上。 Windows 需要对页面文件进行可靠的访问,因为数据已分页或内存不足。 将页面文件设置为主机本地可确保访问不受 SAN 上的其他设备和主机的影响。

    注意

    如果页面文件与启动分区(通常为 c:\Windows 或 c:\WINNT)不在同一分区上,则不会创建Memory.dmp文件。 Memory.dmp文件用于对出现 STOP 错误的 Windows 计算机进行故障排除。 有关如何为故障转储配置计算机的信息,请参阅 Windows 帮助。

有多种方法可以解决上述问题。 第一种方法是尝试将时间与 SAN 上发生的任何事件相关联。 例如,HostA 正在执行大型复制操作,HostB 报告错误 9s,这可能意味着无法进行适当的 LUN 管理。 另一个示例是当 HostA 重新启动时,HostB 生成错误。 这可能表示正在使用 FC-AL,HostB 正受到 HostA 中的循环初始化基元(LIP)序列的影响。 通常可以通过重新配置 SAN 来纠正这些错误,这需要硬件供应商的帮助。 可以通过将页面文件放置在 Windows 服务器的本地硬盘上来解决任何类型的延迟问题,但同样,这会禁用创建内存转储。 需要了解的一个关键点是,SAN 的硬件供应商将拥有有关正确配置的最大信息,并且必须是所有配置问题和问题的第一个联系点。