Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

25.11. 添加存储设备或路径

添加设备时,请注意系统分配给新设备的设备名称(/dev/sd 名称、main :minor 号和 /dev/disk/by-path 名称)。因此,请确保已删除所有对基于路径的设备名称的旧引用。否则,新设备可能会被误认为是旧设备。

过程 25.13. 添加存储设备或路径

  1. 添加存储设备或路径的第一步是物理启用对新存储设备的访问,或对现有设备的新路径的访问。这是通过对光纤通道或 iSCSI 存储服务器使用特定于供应商的命令来完成的。执行此操作时,请注意将呈现给您的主机的新存储的 LUN 值。如果存储服务器是光纤通道,可记下存储服务器的 全球节点名称 (WWNN),并确定存储服务器上的所有端口是否有单个 WWNN。否则,请注意将用于访问新 LUN 的每个端口的 全球端口名称 (WWPN)。
  2. 接下来,使操作系统知道新的存储设备,或现有设备的路径。建议使用的命令有:
    $ echo "c t l" >  /sys/class/scsi_host/hosth/scan
    
    在上一命令中,h 是 HBA 号,c 是 HBA 上的频道,t 是 SCSI 目标 ID,l 是 LUN。
    注意
    此命令的旧形式 echo "scsi add-single-device 0 0 0 0" > /proc/scsi/scsi 已被弃用。
    1. 在某些光纤通道硬件中,RAID 阵列上新创建的 LUN 可能在执行 循环初始化协议(LIP)操作之前无法被操作系统看到。有关如何操作的说明,请参阅 第 25.12 节 “扫描存储互连”
      重要
      如果需要 LIP,则需要在执行此操作时需要停止 I/O。
    2. 如果在 RAID 阵列中添加了新的 LUN,但仍然没有被操作系统配置,请使用 sg_luns 命令(这是 sg3_utils 软件包的一部分)确认阵列导出的 LUN 列表。这会将 SCSI REPORT LUNS 命令发布到 RAID 阵列,并返回存在的 LUN 列表。
    对于为所有端口实现单个 WWNN 的光纤通道存储服务器,您可以通过搜索 sysfs 中的 WWNN 来确定正确的 hct 值(如 HBA 号、HBA 通道和 SCSI 目标 ID)。

    例 25.5. 确定正确的 hct

    例如,如果存储服务器的 WWNN 是 0x5006016090203181,请使用:
    $ grep 5006016090203181 /sys/class/fc_transport/*/node_name
    
    这应该显示类似于如下的输出:
    /sys/class/fc_transport/target5:0:2/node_name:0x5006016090203181 
    /sys/class/fc_transport/target5:0:3/node_name:0x5006016090203181 
    /sys/class/fc_transport/target6:0:2/node_name:0x5006016090203181 
    /sys/class/fc_transport/target6:0:3/node_name:0x5006016090203181
    这表示有四个光纤通道路由到这个目标(两个单通道 HBA,各自指向两个存储端口)。假设 LUN 值为 56,以下命令将配置第一个路径:
    $ echo "0 2 56" >  /sys/class/scsi_host/host5/scan
    
    必须为新设备的每个路径完成此操作。
    对于不为所有端口实现单个 WWN 的光纤通道存储服务器,您可以通过在 sysfs 中搜索每个 WWPN 来确定正确的 HBA 号、HBA 通道和 SCSI 目标 ID。
    确定 HBA 号、HBA 通道和 SCSI 目标 ID 的另一种方法是参考已在与新设备相同的路径上配置的另一个设备。这可以通过各种命令完成,如 lsscsiscsi_idmultipath -lls -l /dev/disk/byrew。此信息以及新设备的 LUN 号,可以探测并配置新设备的路径,如上所示。
  3. 向设备添加所有 SCSI 路径后,执行 multipath 命令,并检查该设备是否已正确配置。此时,可以将设备添加到 md、LVM、mkfsmount 中。
如果遵循上述步骤,则可以安全地将设备添加到正在运行的系统中。在完成此操作的时,不需要停止到其他设备的 I/O 。在存储 I/O 进行的过程中,不建议采用其他涉及 SCSI 总线的重新扫描(或重置)的流程,这会导致操作系统更新其状态,以反映当前的设备连接。