贯穿三层的操作流程
LUN 映射是把阵列上的存储卷分配给某台主机的过程,横跨阵列、fabric、主机三层,任何一层缺项主机都看不到盘。标准顺序是:确认主机 HBA 端口的 WWN,在阵列侧建主机对象并加入这些 WWN,把卷映射给该主机并确定 LUN 号,确认分区内主机能登录到对应阵列前端端口,最后在主机侧重新扫描并按需配置多路径与文件系统。顺序本身很重要:先完成阵列侧映射再让主机扫描,可避免主机扫到半配置状态的设备。
基本信息
| 适用环境 | FC SAN 与 iSCSI SAN |
|---|---|
| 前置条件 | 双路径 HBA 端口 WWN 已确认、fabric 分区已完成 |
| 关键顺序 | 分区、阵列映射、主机扫描 |
| 阵列侧对象 | 主机或主机组、卷、LUN 号、映射关系 |
| 主机侧动作 | 重新扫描、多路径配置、文件系统、落记录 |
| 记录要求 | LUN 号、容量、用途、主机与端口对应关系 |
操作步骤
- 确认主机 WWN 与路径规划:两个 HBA 端口分别接入两台交换机
- 阵列侧创建主机对象,加入两个 HBA 端口的 WWN
- 把卷映射给该主机,确认分配的 LUN 号与容量符合规划
- 核对 fabric 分区:主机与目标阵列前端端口同 zone 且已激活
- 主机侧重新扫描,确认设备数量与预期一致
- 配置多路径与文件系统,记录映射关系并交业务验证
主机侧配合动作
主机侧配合动作
# 1. 取出本机 HBA 端口 WWN,交给存储侧建主机对象
cat /sys/class/fc_host/host*/port_name # 每个 HBA 端口的 pWWN
# 2. 阵列侧完成建主机与卷映射(命令以厂商文档为准)
# 3. 逐个 HBA 触发重新扫描
for h in /sys/class/scsi_host/host*; do echo "- - -" > $h/scan; done
# 4. 确认新设备与路径数
lsscsi -t | grep -i fc # 新增设备是否出现
multipath -ll | grep -c running # 路径数是否与规划一致
# 5. 落记录:容量、LUN 号、挂载点
lsblk -o NAME,SIZE,WWN,TYPE,MOUNTPOINT分层检查点
| 层次 | 必查项 | 常见缺失 |
|---|---|---|
| fabric 层 | 主机与目标端口同 zone 且已激活 | 只改了一个 fabric |
| 阵列层 | 主机对象含全部 HBA 端口 WWN | 漏掉第二个端口导致单路径 |
| 阵列层 | 卷已映射且 LUN 号符合规划 | LUN 号冲突导致只认一个 |
| 主机层 | 重新扫描与多路径状态 | 只扫一个 host,路径不全 |
| 记录层 | 映射关系同步到文档 | 靠记忆维护,后续变更踩坑 |
不同阵列对「同一卷在不同主机上的 LUN 号」要求不同:有的要求集群内保持一致,有的允许独立编号。同一条主机路径上出现两个卷使用相同 LUN 号会导致其中一个不可见,统一编号更省事。
已经把卷映射给某主机时,重复通过另一条协议路径或另一台主机对象分配同一卷,可能让主机把它识别成两个设备并在其上创建两份文件系统,属于数据损坏风险,变更前先核对现有映射。