問題
LVM コマンドは重複した VG 名を報告します。 vgdisplay を実行して空き容量を確認すると、次のメッセージが表示されます:
# vgdisplay WARNING: Duplicate VG name testvg2: Existing OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5 (created here) takes precedence over q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU
根本原因
以下は、この問題を引き起こす可能性のある変更の一部です:
1. 廃止された別のシステムで以前は LVM として使用されていた SAN から新しい LUN を追加し、SAN 側からの適切なクリーニングなしで新しいシステムに追加され、以前のメタデータを持っているなど、LVM 構成でいくつかの変更が行われました。
2. システムに既に存在する同じ名前を使用して、新しい VG が作成されました。
LVM コマンドからの「WARNING:Duplicate VG name」メッセージは、スキャン中に複数の独立したボリューム グループが同じ名前で検出されたことを示しています。この問題は、不適切なフィルタを示すものではなく、マルチパスを使用した結果ではありません。ここでの警告メッセージは、UUID が異なるが名前が同じ 2 つのボリューム グループが存在することを具体的に示しています。 LVM は同じ名前の 2 つのボリューム グループをアクティブ化できないため、1 つ (ローカル ホスト名と一致する creation_host を持つものから開始) を選択してアクティブ化します。
注意 :複製されたストレージ デバイスが同じ UUID を持つ重複した VG になるという同様の問題については、以下の手順に従う必要があり、手順は異なります。
vgimportclone [-n|--basevgname VolumeGroupName] [-i|--import] PhysicalVolume [PhysicalVolume...]
例:
# vgimportclone --basevgname test_vg_snap /dev/loop2 /dev/loop3
この投稿は、重複した VG に異なる UUID が含まれている (つまり、クローンではない) 状況にのみ固有のものです。
診断手順
このような状況では、通常、どのデバイスまたは UUID が「元の」ボリューム グループに対応し、どのデバイスまたは UUID が「複製」ボリューム グループに対応するかを判断する必要があります。 vgdisplay や lvs を単純に使用して各ボリューム グループに関する情報を取得することはできません。これらは、要求しているボリューム グループを特定できず、操作するボリューム グループの 1 つを選択するだけだからです。たとえば、両方のテスト ボリューム グループの論理ボリュームを表示するには、lvs:だけを使用することはできません。
# lvs testvg2 WARNING: Duplicate VG name testvg2: Existing OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5 (created here) takes precedence over q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU LV VG Attr LSize Origin Snap% Move Log Copy% Convert test_lv testvg2 -wi--- 2.00G
選択した VG の LV のみを表示します。
個々のボリューム グループに関する情報を表示するには、コマンド ラインでフィルターを使用します。まず、各ボリューム グループに含まれるデバイスを特定する必要があります。
# pvs WARNING: Duplicate VG name testvg2: Existing OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5 (created here) takes precedence over q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU WARNING: Duplicate VG name testvg2: Existing OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5 (created here) takes precedence over q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU PV VG Fmt Attr PSize PFree /dev/xvda2 VolGroup00 lvm2 a- 14.88G 0 /dev/xvdb VolGroup00 lvm2 a- 9.97G 4.97G /dev/xvdc testvg1 lvm2 a- 5.00G 1020.00M /dev/xvdd testvg2 lvm2 a- 5.00G 3.00G /dev/xvde testvg2 lvm2 a- 5.00G 3.00G
xvdd と xvde が 2 つの異なる testvg2 VG をホストしていることがわかりました。以下を判断するために、各論理ボリュームを見てみましょう。
# lvs testvg2 --config 'devices { filter = [ "a|/dev/xvdd|", "r|.*|" ]}' LV VG Attr LSize Origin Snap% Move Log Copy% Convert test_lv testvg2 -wi--- 2.00G
# lvs testvg2 --config 'devices { filter = [ "a|/dev/xvde|", "r|.*|" ]}' LV VG Attr LSize Origin Snap% Move Log Copy% Convert test_lv testvg2 -wi-a- 2.00G
重複する VG のどれに焦点を当てたいかがわかったら、その VG の UUID を見つけることができます:
# vgs -o +vg_uuid --config 'devices { filter = [ "a|/dev/xvde|", "r|.*|" ]}' VG #PV #LV #SN Attr VSize VFree VG UUID testvg2 1 1 0 wz--n- 5.00G 3.00G q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU
これで、以下のソリューション セクションの手順でこの UUID を使用できます。
解決策
注意 注:このプロセスを実行する前に、すべての PV、VG、および LV のファイルシステムの完全なバックアップを作成することを常にお勧めします。この問題の適切な解決策は、重複が表示される理由によって異なります。詳細については、上記の根本原因と診断手順のセクションをお読みください。
重複した VG 名を含むデバイスが誤ってこのホストに提示された場合 (つまり、不適切なゾーニング)、ホストから提示を解除するだけです。それがなくなると、重複するボリューム グループの問題は見られなくなります。
ホストに提示されたデバイスが、このホスト上にすでに存在するボリュームと重複する VG 名を持つ場合、競合しないように、重複する VG 名を変更する必要があります。名前の変更は、UUID を使用して行うことができます:
1. 名前を変更するボリューム グループの UUID を決定します。
# vgs -o +vg_uuid WARNING: Duplicate VG name testvg2: Existing OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5 (created here) takes precedence over q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU WARNING: Duplicate VG name testvg2: Existing OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5 (created here) takes precedence over q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU WARNING: Duplicate VG name testvg2: Existing q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU (created here) takes precedence over OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5 WARNING: Duplicate VG name testvg2: Existing OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5 (created here) takes precedence over q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU WARNING: Duplicate VG name testvg2: Existing q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU (created here) takes precedence over OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5 VG #PV #LV #SN Attr VSize VFree VG UUID VolGroup00 2 2 0 wz--n- 24.84G 4.97G KtK3ij-lkQH-tbB3-s74h-FYBl-73cu-jg86EX testvg1 1 1 0 wz--n- 5.00G 1020.00M oME1Wk-ftRi-qhQq-wQ6Z-eUo3-SNZw-chUfAx testvg2 1 1 0 wz--n- 5.00G 3.00G q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU testvg2 1 1 0 wz--n- 5.00G 3.00G OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5注意 :操作対象の UUID を特定するための追加の手順については、上記の診断手順を参照してください。
2. UUID を取得したら、vgrename を使用してボリューム グループの名前を変更できます。
# vgrename q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU testvg WARNING: Duplicate VG name testvg2: Existing OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5 (created here) takes precedence over q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU WARNING: Duplicate VG name testvg2: Existing OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5 (created here) takes precedence over q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU WARNING: Duplicate VG name testvg2: Existing q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU (created here) takes precedence over OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5 Volume group "testvg2" successfully renamed to "testvg"
3. 新しいボリューム グループをアクティブ化します。
# vgchange -ay testvg 1 logical volume(s) in volume group "testvg" now active
4. ボリューム グループを確認します。
# vgs -o +vg_uuid VG #PV #LV #SN Attr VSize VFree VG UUID VolGroup00 2 2 0 wz--n- 24.84G 4.97G KtK3ij-lkQH-tbB3-s74h-FYBl-73cu-jg86EX testvg 1 1 0 wz--n- 5.00G 3.00G q7jsuu-f3f8-mVVu-HpMm-FXdK-Xe3Y-d2nVfU testvg1 1 1 0 wz--n- 5.00G 1020.00M oME1Wk-ftRi-qhQq-wQ6Z-eUo3-SNZw-chUfAx testvg2 1 1 0 wz--n- 5.00G 3.00G OEsLyZ-ueap-D66F-6LEB-BKqC-A5B1-exlfZ5