3. 存储网络基础与Dell最佳实践
在Dell企业存储的工程交付中,主机与存储之间的“最后一公里”往往不是磁盘阵列本身,而是存储网络。同一台PowerStore、PowerMax或PowerScale,用FC、iSCSI还是NVMe over Fabrics接入,直接决定了可用的前端端口类型、交换机配置方式、主机多路径软件以及可达到的时延水平。本节围绕三条主线展开:三种协议在Dell存储中的支持矩阵、SAN交换机zoning的正确做法,以及主机侧多路径配置的关键要点。
一、三种协议在Dell存储中的支持矩阵
FC(Fibre Channel)是Dell高端与中端存储最成熟的前端协议。PowerMax、PowerStore、Unity XT、PowerVault ME系列均提供FC前端端口,通常以16Gb/32Gb/64Gb SFP光模块接入SAN交换机。FC采用独立的FC-0到FC-4分层,主机通过HBA卡以WWN(World Wide Name)标识,存储前端端口同样以WWN标识,二者通过交换机zone建立“谁可以和谁通信”的授权关系。FC的优势是确定性强、时延低、与主机多路径软件配合成熟,缺点是需要专用交换机与HBA,成本较高。
iSCSI把SCSI命令封装进TCP/IP,用标准以太网和网卡即可接入。Dell存储普遍支持iSCSI前端端口,PowerStore、Unity XT、PowerVault ME等可提供10GbE/25GbE iSCSI端口。iSCSI的标识是IQN(iSCSI Qualified Name),主机initiator IQN与存储target IQN通过发现会话建立连接。iSCSI的优势是复用现有以太网、成本低、易扩展,但需要关注网络拥塞、丢包与MTU一致性,通常建议为存储流量划分独立VLAN或独立物理网络。
NVMe over Fabrics(NVMe-oF)是面向全闪存的高性能协议,Dell在PowerStore、PowerMax、PowerScale等平台提供支持。NVMe-oF有两种承载方式:NVMe/FC(FC-NVMe)复用现有FC SAN,主机与存储使用FC-NVMe HBA和端口;NVMe/TCP则基于标准以太网,用IP网络承载NVMe命令。NVMe-oF省去了传统SCSI层的部分开销,队列深度和命令并发更高,适合对时延敏感的全闪存场景。需要注意的是,NVMe-oF对主机操作系统版本、HBA固件、交换机固件以及多路径软件都有更严格的兼容性要求,交付前必须核对Dell E-Lab Navigator或支持矩阵。
二、SAN交换机zoning的正确做法
Zoning的本质是“访问控制列表”,它决定哪些主机HBA的WWN可以与哪些存储前端端口的WWN建立登录关系。Dell交付中推荐使用单initiator单target(Single Initiator Single Target,SIST)或单initiator多target的zone,避免把多台主机放进同一个zone。原因很直接:一个zone内主机越多,RSCN(Registered State Change Notification)风暴影响面越大,一台主机重启或HBA故障可能引发整个zone内所有主机的路径抖动。
命名规范建议采用“主机名_HBA端口号_存储名_前端端口号”的形式,例如 APP01_HBA0_PWRST_A0。这样在交换机上执行 zoneshow 或 cfgshow 时,能一眼看出这条zone连接的是哪台主机、哪块HBA、哪台存储的哪个端口。Zone配置完成后必须执行 cfgsave 保存到配置,再 cfgenable 激活;只做 zonecreate 而不激活,主机侧是看不到新路径的。
对于双Fabric架构,A平面和B平面必须完全隔离,同一台主机的HBA0接入Fabric A,HBA1接入Fabric B,存储的对应前端端口也分别接入两个Fabric。这样任何单个交换机、单条链路或单个SFP故障,都不会导致主机失去全部路径。交付检查时,应在两台交换机上分别确认zone成员、激活配置和端口状态,并核对主机侧 lspci 或 systool -c fc_host 看到的WWN与zone中登记的一致。
三、多路径配置要点
多路径的目标是让主机同时看到同一LUN的多条路径,并在路径故障时自动切换、在路径恢复后自动回切。Windows主机通常使用Dell EMC PowerPath或原生MPIO;Linux主机使用DM Multipath(device-mapper-multipath);VMware ESXi使用NMP(Native Multipathing Plugin)配合SATPs。无论哪种,核心参数都是路径选择策略和故障切换策略。
以Linux DM Multipath为例,/etc/multipath.conf 中需要为Dell存储的Vendor/Product设置 path_grouping_policy。对于PowerStore、PowerMax这类Active/Active或ALUA(Asymmetric Logical Unit Access)阵列,推荐 path_grouping_policy multibus 或 group_by_prio,配合 path_checker tur 和 failback immediate。如果错误地使用 failover 策略,主机可能只使用一条路径,其余路径处于待机状态,无法发挥多路径的带宽聚合与冗余效果。
# /etc/multipath.conf 示例片段(Dell PowerStore)
defaults {
user_friendly_names yes
path_checker tur
failback immediate
no_path_retry 30
}
devices {
device {
vendor "DellEMC"
product "PowerStore"
path_grouping_policy multibus
path_selector "service-time 0"
prio alua
}
}
配置完成后,用 multipath -ll 查看路径聚合结果。正常输出中,同一个LUN应显示为一条 mpathX 设备,下面挂载多条 sdX 路径,且各路径的 dm-status 为 active ready running。如果只看到一条路径,或路径状态为 failed faulty,应回到zoning和交换机端口状态排查。Windows侧可用 mpclaim -s -d 查看MPIO路径,PowerPath用 powermt display dev=all 查看,重点确认每条路径的 State 为 alive。
最后需要强调,FC、iSCSI、NVMe-oF并不是互斥的,同一台Dell存储可以同时提供多种前端协议。工程交付时应根据业务等级、主机操作系统、现有网络资产和时延要求选择协议组合,并始终以Dell官方支持矩阵和E-Lab Navigator的兼容性结论为准,避免因固件版本或驱动版本不匹配导致路径异常。