在逻辑卷的层次结构中,pv对应底层的物理磁盘设备,
关于逻辑卷的元数据信息都是存储在实际的物理磁盘上的。
多链路的光纤存储网络,导致同一物理磁盘设备在系统中被识别为多个磁盘设备。逻辑卷在确认元数据属性时,会发现同一个pv(物理卷)会对应到多个磁盘设备。
因此执行相关命令时,会出现“found duplicate pv”的提示。
该提示对于逻辑卷的正常使用不会产生影响。

一、逻辑卷的相关配置项
系统中,逻辑卷的配置文件为/etc/lvm/lvm.conf。其中主要有2个配置项和逻辑卷对磁盘设备的识别关系较大。
1、filter
该配置项决定逻辑卷识别底层物理磁盘设备的范围。默认的配置为:
filter = [ "a/.*/" ]
表示会自动对/dev目录下所有的磁盘设备进行识别。

filter配置的格式为,以“a”(表示接受)或者“r”(表示排除)开头。

2、preferred_name
该配置项决定当逻辑卷发现有多个磁盘设备对应同一个pv(物理卷)时,如何进行选择。
默认的配置为:
preferred_name = [ ]
[
因此,在默认的配置情况下,逻辑卷会对/dev目录下所有的磁盘设备进行识别。

二、multipath和逻辑卷
对于配置了multiipath的情况来说,由于/dev/mpath/mpath*、/dev/mapper/mpath*这些路径在排列顺序上,先于/dev/sd*。
所以逻辑卷会用最后匹配的/dev/sdXX设备,则此时multipath的多链路冗余配置没有对逻辑卷起作用,因此需要配置preferred_name:
preffered_name = [ "^/dev/mpath/", "^/dev/mapper/mpath", "^/dev/[hs]d" ]

如果multipath设备有自定义的别名,如etlXX之类,也可以加入到上述配置之中。如
preffered_name = [ "^/dev/mpath/", "^/dev/mapper/mpath", "^/dev/mapper/etl", "^/dev/[hs]d" ]

三、消除“found duplicate pv”的提示
preferred_name的配置,能够保证逻辑卷使用的是multipath多路径设备,但是不能消除逻辑卷相关命令提示“found duplicate pv”的问题。
要消除该提示信息,还需要通过配置filter项来实现。
如:
filter = [ "a|/dev/mpath/|", "a|/dev/mapper/|", "a|/dev/cciss/|", "r/.*/" ]
上面的配置表示逻辑卷只对路径中包含/dev/mpath/、/dev/mapper、/dev/cciss/的设备进行识别。
(说明:对于本地硬盘也使用了逻辑卷的情况,注意需要增加接受本地硬盘的规则,本地硬盘的路径根据实际情况确定)