Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
6.7. マルチパスデバイスに対する重複した PV 警告
マルチパスストレージで LVM を使用する場合は、一部の LVM コマンド( vgs や lvchangeなど)で、ボリュームグループまたは論理ボリュームを一覧表示するときに、以下のようなメッセージが表示される場合があります。
Found duplicate PV GDjTZf7Y03GJHjteqOwrye2dcSCjdaUi: using /dev/dm-5 not /dev/sdd Found duplicate PV GDjTZf7Y03GJHjteqOwrye2dcSCjdaUi: using /dev/emcpowerb not /dev/sde Found duplicate PV GDjTZf7Y03GJHjteqOwrye2dcSCjdaUi: using /dev/sddlmab not /dev/sdf
このセクションでは、これらの警告の原因について説明したあとに、以下の 2 つのケースでこの問題を解決する方法について説明します。
- 出力に表示された 2 つのデバイスが、両方とも同じデバイスへの単一パスである
- 出力に表示された 2 つのデバイスが、両方ともマルチパスマップである
6.7.1. 重複した PV 警告の原因
デフォルト設定では、LVM コマンドは
/dev
のデバイスをスキャンし、生成されるすべてのデバイスで LVM メタデータをチェックします。これは、以下のような /etc/lvm/lvm.conf
のデフォルトフィルターにより発生します。
filter = [ "a/.*/" ]
Device Mapper Multipath、または EMC PowerPath や Hitachi Dynamic Link Manager (HDLM)などの他のマルチパスソフトウェアを使用している場合、特定の論理ユニット番号(LUN)への各パスは、
/dev/sdb
や /dev/sdc
などの異なる SCSI デバイスとして登録されます。マルチパスソフトウェアは、デバイスマッパーマルチパスの場合は /dev/mapper/mpath1
または /dev/mapper/mpatha
、EMC PowerPath の場合は /dev/emcpowera
、Hitachi HDLM の場合は /dev/sddlmab
など、個々のパスにマップする新しいデバイスを作成します。各 LUN には、基盤となる同じデータを指す /dev
内に複数のデバイスノードがあるため、すべてに同じ LVM メタデータが含まれているため、LVM コマンドは同じメタデータを複数回検出し、複製として報告します。
これらの重複メッセージはただの警告であり、LVM 操作が失敗したことは意味しません。これらのメッセージは、1 つのデバイスだけが物理ボリュームとして使用され、他のデバイスは無視されることをユーザーに通知します。メッセージが、正しくないデバイスが選択されていることを示す場合、または警告がユーザーにとって重大である場合は、物理ボリュームに必要なデバイスのみを検索し、マルチパスデバイスへの基礎となるパスを省略するために、フィルターを適用できます。
6.7.2. 単一パスに対する重複した警告
以下の例は、表示された重複デバイスが、両方とも同じデバイスへの単一パスであることを示す、重複した PV 警告を示しています。この場合、
/dev/sdd
と /dev/sdf
は、multipath -ll コマンドの出力の同じマルチパスマップの下にあります。
Found duplicate PV GDjTZf7Y03GJHjteqOwrye2dcSCjdaUi: using **/dev/sdd** not **/dev/sdf**
この警告が表示されないようにするには、LVM がメタデータを検索するデバイスを制限するように、
/etc/lvm/lvm.conf
ファイルでフィルターを設定します。フィルターは、/dev
(または /etc/lvm/lvm.conf
ファイルの dir
キーワードで指定されたディレクトリー)のスキャンによって検出された各デバイスに適用されるパターンのリストです。パターンは、任意の文字で区切られた正規表現で、a
(許可の場合)または r
(拒否の場合)が先頭に付けられます。リストは順番に評価され、デバイスに一致する最初の正規表現によって、デバイスが許可または拒否 (無視) されるかどうかが決定されます。どのパターンにも一致しないデバイスは許可されます。LVM フィルターに関する一般的な情報は、「フィルターを使用した LVM デバイススキャンの制御」 を参照してください。
設定するフィルターには、LVM メタデータをチェックする必要があるすべてのデバイス (root ボリュームグループがあるローカルハードドライブやマルチパスデバイスなど) を含める必要があります。マルチパスデバイスへの基礎となるパス(
/dev/sdb
、/dev/sdd
など)を拒否すると、重複した PV 警告を回避できます。一意の各メタデータ領域はマルチパスデバイス自体で 1 回しか検出されないためです。
以下の例は、複数のストレージパスが利用可能であることが原因で発生する重複 PV 警告を回避するフィルターを示しています。
- このフィルターは、最初のハードドライブ(
/dev/sda
)の 2 番目のパーティションと、すべての device-mapper-multipath デバイスを許可し、その他のパーティションはすべて拒否します。filter = [ "a|/dev/sda2$|", "a|/dev/mapper/mpath.*|", "r|.*|" ]
- このフィルターは、すべての HP SmartArray コントローラーと、EMC PowerPath デバイスを許可します。
filter = [ "a|/dev/cciss/.*|", "a|/dev/emcpower.*|", "r|.*|" ]
- このフィルターは、最初の IDE ドライブのすべてのパーティションと、すべてのマルチパスデバイスを許可します。
filter = [ "a|/dev/hda.*|", "a|/dev/mapper/mpath.*|", "r|.*|" ]
注記
新しいフィルターを
/etc/lvm/lvm.conf
ファイルに追加する場合は、元のフィルターが # でコメントアウトされているか、削除されていることを確認してください。
フィルターが設定され、
/etc/lvm/lvm.conf
ファイルが保存されたら、これらのコマンドの出力を確認して、物理ボリュームまたはボリュームグループが欠落していないことを確認してください。
#pvscan
#vgscan
また、以下の例のように、LVM コマンドに
--config
引数を追加して、/etc/lvm/lvm.conf
ファイルを変更せずに、すぐにフィルターをテストすることもできます。
# lvs --config 'devices{ filter = [ "a|/dev/emcpower.*|", "r|.*|" ] }'
注記
--config
引数を使用してフィルターをテストしても、サーバーの設定に対して永続的な変更は加えられません。テスト後に、作業フィルターを /etc/lvm/lvm.conf
ファイルに設定してください。
LVM フィルターの設定後、再起動時に必要なデバイスのみがスキャンされるように、dracut コマンドで
initrd
デバイスを再構築することが推奨されます。
6.7.3. マルチパスマップの重複する警告
以下の例は、両方のマルチパスマップである 2 つのデバイスに対する重複した物理ボリューム警告を示しています。これらの例では、2 つの異なるパス (ただし、デバイスは異なる) について説明します。
Found duplicate PV GDjTZf7Y03GJHjteqOwrye2dcSCjdaUi: using **/dev/mapper/mpatha** not **/dev/mapper/mpathc**
Found duplicate PV GDjTZf7Y03GJHjteqOwrye2dcSCjdaUi: using **/dev/emcpowera** not **/dev/emcpowerh**
この状況は、同じデバイスへの 1 つのパスであるデバイスに対する重複の警告よりも深刻です。多くの場合、これらの警告は、マシンが確認すべきでないデバイス (たとえば、LUN クローンまたはミラー) がマシンに提供されたことを意味します。この場合は、マシンから取り外すデバイスが明確にわかっていない限り、状況は改善しません。この問題を解決するには、Red Hat テクニカルサポートにお問い合わせいただくことが推奨されます。