lvm vgchangeデバイスマッパーioctlの再読み込みに失敗しました。利用可能なデータはありません。

lvm vgchangeデバイスマッパーioctlの再読み込みに失敗しました。利用可能なデータはありません。

私のLVMが一貫していないようです。

[~] # vgchange -a y                  
device-mapper: reload ioctl on (252:16) failed: No data available
device-mapper: reload ioctl on (252:16) failed: No data available
10 logical volume(s) in volume group "vg1" now active

RAID-5(Linuxマルチディスク)がクラッシュし、再構築後にアクティブ化できなくなりました。どうして。

一部の診断結果に関する追加情報が必要な場合は、お知らせください。

[~] # pvs -v --segments                   
    Using physical volume(s) on command line.
  PV         VG   Fmt  Attr PSize  PFree Start  SSize   LV                      Start Type   PE Ranges             
  /dev/md1   vg1  lvm2 a--  21.80t    0       0   36864 lv544                       0 linear /dev/md1:0-36863      
  /dev/md1   vg1  lvm2 a--  21.80t    0   36864   16384 tp1_meta6                   0 linear /dev/md1:36864-53247  
  /dev/md1   vg1  lvm2 a--  21.80t    0   53248 5662624 [tp1_tierdata_2_fcorig]     0 linear /dev/md1:53248-5715871
  /dev/sdf   vg1  lvm2 a--   7.28t 6.78t      0   16384 tp1_meta1                   0 linear /dev/sdf:0-16383      
  /dev/sdf   vg1  lvm2 a--   7.28t 6.78t  16384   16384 tp1_meta2                   0 linear /dev/sdf:16384-32767  
  /dev/sdf   vg1  lvm2 a--   7.28t 6.78t  32768   16384 tp1_meta3                   0 linear /dev/sdf:32768-49151  
  /dev/sdf   vg1  lvm2 a--   7.28t 6.78t  49152   16384 tp1_meta4                   0 linear /dev/sdf:49152-65535  
  /dev/sdf   vg1  lvm2 a--   7.28t 6.78t  65536   16384 tp1_meta0                   0 linear /dev/sdf:65536-81919  
  /dev/sdf   vg1  lvm2 a--   7.28t 6.78t  81920   16384 tp1_meta5                   0 linear /dev/sdf:81920-98303  
  /dev/sdf   vg1  lvm2 a--   7.28t 6.78t  98304   16384 tp1_meta7                   0 linear /dev/sdf:98304-114687 
  /dev/sdf   vg1  lvm2 a--   7.28t 6.78t 114688   16384 [tp1_tmeta]                 0 linear /dev/sdf:114688-131071
  /dev/sdf   vg1  lvm2 a--   7.28t 6.78t 131072 1776649                             0 free

[~] # vgs -v
    Using volume group(s) on command line.
  VG   Attr   Ext   #PV #LV #SN VSize  VFree VG UUID                                VProfile
  vg1  wz--n- 4.00m   2  12   0 29.08t 6.78t 1VJkVt-vfPX-vBAv-KtuC-kKDU-1CDd-1RBuel

[~] # lvs -v
    Using logical volume(s) on command line.
    target_name:thin-pool
  LV        VG   #Seg Attr       LSize   Maj Min KMaj KMin Pool Origin Data%  Meta%  Move Cpy%Sync Log Convert LV UUID                                LProfile
  lv1       vg1     1 Vwi---t---  21.00t  -1  -1   -1   -1 tp1                                                 TuCexj-MyZA-uIkX-kzVp-KBWt-dHVQ-Iq6t27         
  lv288     vg1     1 Vwi---t---   2.00t  -1  -1   -1   -1 tp1                                                 f0jKvz-Jm4G-JZ8l-8ysp-2RDS-cDWJ-Ue0VCR         
  lv544     vg1     1 -wi-a----- 144.00g  -1  -1  252    0                                                     SHXwIE-iAMG-5ctO-g0RG-55P9-jeke-df3S4n         
  tp1       vg1     1 twi-aot---  21.60t  -1  -1  252    6             0.00   0.02                             Hk25P5-gQkc-pJHw-jKfL-U9cB-2vBF-74lr2L         
  tp1_meta0 vg1     1 -wi-a-----  64.00g  -1  -1  252    8                                                     foHo1k-gciB-VJcM-9CRV-ySC0-0I9A-rshk3A         
  tp1_meta1 vg1     1 -wi-a-----  64.00g  -1  -1  252    9                                                     8bloJL-stWn-1O3r-j5jQ-vlqv-DpNe-waeIef         
  tp1_meta2 vg1     1 -wi-a-----  64.00g  -1  -1  252   10                                                     AvXCmL-zVIg-xTCm-ZtOz-1VGT-EEBU-cugNA8         
  tp1_meta3 vg1     1 -wi-a-----  64.00g  -1  -1  252   11                                                     EVcMvv-S0BC-N0Xh-5Pzj-3Rrj-RkFb-ZTgMw8         
  tp1_meta4 vg1     1 -wi-a-----  64.00g  -1  -1  252   12                                                     YCgXIz-eZxy-N2Wz-8Exl-9dJw-syIb-dVeux4         
  tp1_meta5 vg1     1 -wi-a-----  64.00g  -1  -1  252   13                                                     H35ozg-XyJ3-rjPP-ipTz-DIDV-JNPA-fSg54E         
  tp1_meta6 vg1     1 -wi-a-----  64.00g  -1  -1  252   14                                                     fl5ACi-7uNv-h5Fw-71NI-G8nT-93sz-VgMdR5         
  tp1_meta7 vg1     1 -wi-a-----  64.00g  -1  -1  252   15                                                     ap8Nds-GACe-9dXu-BZ6J-H1df-HwOc-pQ7VnX

ベストアンサー1

解決策を検索中に次のスレッドが見つかりました。https://charles-gagnon.medium.com/repair-a-thin-pool-a42f41169541。残念ながら、説明された手順では私の問題を解決できなかったので、このスレッドは実際には役に立ちませんでしたが、作成者は次のように述べました。カイミンホンこれが彼に役立ちます。だから私も彼に連絡し、彼は問題を解決するのに役立ちました。

まず、私の質問の基本的な構造とケースを理解する必要があります。

ボリュームグループがありますVG1この時間は/dev/md1:

[~] # pvdisplay
  --- Physical volume ---
  PV Name               /dev/md1
  VG Name               vg1
  PV Size               21.80 TiB / not usable 2.50 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              5715872
  Free PE               0
  Allocated PE          5715872
  PV UUID               C6femQ-nMRN-d8F0-f2pk-BRVA-pQuH-Dv3skX

このボリュームグループには多くの論理ボリュームがありますが、問題の論理ボリュームは次のとおりです。TP1:

  --- Logical volume ---
  LV Name                tp1
  VG Name                vg1
  LV UUID                Hk25P5-gQkc-pJHw-jKfL-U9cB-2vBF-74lr2L
  LV Write Access        read/write
  LV Creation host, time MAML-NAS01, 2021-08-03 13:01:08 +0200
  LV Pool metadata       tp1_tmeta
  LV Pool data           tp1_tierdata_0
  LV Status              available
  # open                 3
  LV Size                21.60 TiB
  Allocated pool data    32.45%
  Allocated pool chunks  14697037
  Allocated metadata     0.69%
  Current LE             5662224
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     4096
  Block device           252:6

この論理ボリュームは、ボリュームグループ内に格納された単純なデータブロックではありません。ボリュームグループの定義された領域を動的に埋めるシンプロビジョニングスペース。このシンプロビジョニングされたスペース内に論理ボリュームを作成できます(私の場合はレベル1そしてLV288)。これらのシン・プロビジョニング・スペースは、2 つの論理ボリュームで構成されます。tp1_tmetaそしてtp1_tierdata_0。一方の論理ボリュームはデータを格納するために使用され、もう一方の論理ボリュームは論理構造を格納するために使用されます。

私の場合、RAID-5がクラッシュしました(/dev/md1)、したがってtp1_tmeta論理ボリューム。

最初のステップは、メタデータダンプ(ファイルサイズ約100 MB)を生成することです。メタデータスナップショットオフセット8388565は、QNAP LVM専用です。

thin_dump /dev/mapper/vg1-tp1_meta0 --metadata-snap=8388565 -o dump.txt

Metadata-snapコマンドラインパラメータに注意してください。メタデータプールは繰り返しスナップショットを実行します。プールがクラッシュした場合は、そのスナップショットにロールバックできます。

2番目のステップでは、プールを復元します。

/sbin/pdata_tools thin_restore -i dump.txt -o /dev/mapper/vg1-tp1_meta6

私の場合は復元しました。vg1-tp1_meta6これは唯一開いているメタデータプールであるためです。/dev/md1(私の質問を参照)。

次に、これがフルメタデータであることをtp1に通知する必要があります。

lvconvert vg1/tp1 --poolmetadata vg1/tp1_meta6
lvconvert --thinpool vg1/tp1 --poolmetadata vg1/tp1_meta6
lvconvert vg1/tp1 --swapmetadata --poolmetadata vg1/tp1_meta6
lvconvert --type tier-thin-pool --thinpool vg1/tp1 --poolmetadata vg1/tp1_meta6

〜の後vg1-tp1_meta6論理ボリュームはtp1にバインドされ、非表示になります。これで、シン論理ボリュームとその中にある論理ボリュームをアクティブにすることができます。

私の場合は、リカバリコマンド(他のスレッドで頻繁に参照)が呼び出されるたびにリカバリ用に別のメタデータデバイスを作成しましたが、私の場合はメタデータをリカバリできず、クラッシュが発生しました(ロールバックする必要はありません) 。だから削除する必要がありました。/dev/sdf私のボリュームグループから:

vgsplit vg1 vg2 /dev/sdf

私の場合、内部論理ボリュームも破損していました。論理ボリュームlv1とlv288はext4を使用してフォーマットされており、ここでファイルシステムチェックを実行する必要があります。ファイルシステムのチェックにはe2fsck_64を使用してください。

おすすめ記事