在红帽企业Linux 4 中如何使device mapper multipath在生成多路径映射时忽略本地磁盘?
解决方法:

相关版本:红帽企业Linux 4

限制说明: 在本文中,假设/dev/sda是一个外置磁盘。注意多路径设备映射只在红帽企业Linux 4之后的版本中才被红帽支持。

有些设备拥有供连接内置磁盘的本地SCSI卡。 在这种情况下, 不推荐使用设备映射来搜寻多路径设备。

确认哪块磁盘是本地磁盘, 然后把该硬盘标记到黑名单中。 在加入黑名单之前,留意multipath -v2命令显示的多路径映射下的本地磁盘。

[root@rh4cluster1 ~]# multipath -v2
create: SIBM-ESXSST336732LC____F3ET0EP0Q000072428BX1
[size=33 GB][features="0"][hwhandler="0"]
\_ round-robin 0 
  \_ 0:0:0:0 sda  8:0     

device-mapper ioctl cmd 9 failed: Invalid argument
device-mapper ioctl cmd 14 failed: No such device or address
create: 3600a0b80001327d80000006d43621677
[size=12 GB][features="0"][hwhandler="0"]
\_ round-robin 0 
  \_ 2:0:0:0 sdb  8:16    
  \_ 3:0:0:0 sdf  8:80    

create: 3600a0b80001327510000009a436215ec
[size=12 GB][features="0"][hwhandler="0"]
\_ round-robin 0 
  \_ 2:0:0:1 sdc  8:32    
  \_ 3:0:0:1 sdg  8:96    

create: 3600a0b80001327d800000070436216b3
[size=12 GB][features="0"][hwhandler="0"]
\_ round-robin 0 
  \_ 2:0:0:2 sdd  8:48    
  \_ 3:0:0:2 sdh  8:112   

create: 3600a0b80001327510000009b4362163e
[size=12 GB][features="0"][hwhandler="0"]
\_ round-robin 0 
  \_ 2:0:0:3 sde  8:64    
  \_ 3:0:0:3 sdi  8:128   

在如上部分, 设备映射完成了/dev/sda的设备映射。 为了阻止被映射。 可以编辑文件/etc/multipath.conf。 下面的是该文件被修改的部分。

devnode_blacklist {
     wwid 26353900f02796769
     devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
     devnode "^hd[a-z][0-9]*"
     devnode "^cciss!c[0-9]d[0-9]*[p[0-9]*]"
}

添加本地磁盘到黑名单中, 如本例, sda是内置硬盘, 文件内容如下。

devnode_blacklist {
     wwid 26353900f02796769
     devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st|sda)[0-9]*"
     devnode "^hd[a-z][0-9]*"
     devnode "^cciss!c[0-9]d[0-9]*[p[0-9]*]"
}

执行命令:

multipath -F
multipath -v2

本地磁盘就不会出现在命令的输出了?

[root@rh4cluster1 ~]# multipath -F
[root@rh4cluster1 ~]# multipath -v2
create: 3600a0b80001327d80000006d43621677
[size=12 GB][features="0"][hwhandler="0"]
\_ round-robin 0 
  \_ 2:0:0:0 sdb  8:16    
  \_ 3:0:0:0 sdf  8:80    

create: 3600a0b80001327510000009a436215ec
[size=12 GB][features="0"][hwhandler="0"]
\_ round-robin 0 
  \_ 2:0:0:1 sdc  8:32    
  \_ 3:0:0:1 sdg  8:96    

create: 3600a0b80001327d800000070436216b3
[size=12 GB][features="0"][hwhandler="0"]
\_ round-robin 0 
  \_ 2:0:0:2 sdd  8:48    
  \_ 3:0:0:2 sdh  8:112   

create: 3600a0b80001327510000009b4362163e
[size=12 GB][features="0"][hwhandler="0"]
\_ round-robin 0 
  \_ 2:0:0:3 sde  8:64    
  \_ 3:0:0:3 sdi  8:128