私のLVMエラーを修正できますか?

私のLVMエラーを修正できますか?

既存のサーバーにProxmox(PVE)がインストールされており、既存のドライブを交換してより多くのスペースを確保したいと思います。しかし、まずPVEインストールをSSDに移動したいと思います。十分簡単です。

初期点:

  • 1x76GB SATA(PVEルートLVM)
  • 2x500GB SATA (mdadm - LVM Thinpoolを使用してRAID1として構成されたVG1)

最終目標:

  • 1x120GB SSD(PVEルートLVM)
  • 2x500GB SATA(VG1はより長い)
  • 1x2000GB SATA*(pvmove以前のRAIDのすべてのファイルをこのドライブに転送するためにVG1で)

*このドライブは、後で追加される他の2TBドライブと一緒にmdraid設定で構成されています(ケーブルとSATAポートがないため)。

SSDを接続し、Linuxを使用してライブUSBを起動し、オンラインで見つけたddコマンドを実行し、古い76GBドライブを新しい(しかし使用された)120GB SSDにコピーしました。ディスクサイズがまだ76GBであることを除いて、すべてがうまく機能します。

それで、この問題を解決するために、その事実の後に私が何をしたのかわかりません。履歴を見ると、次のコマンドを実行したようです。

echo 1 > /sys/class/scsi_device/0\:0\:0\:0/device/rescan
parted -l
 # At this point I got a few questions and I chose Fix and/or Ignore until it was finished
pvresize /dev/sda3
lvresize /dev/pve/data -l 100%FREE

これで終わったと思って、リスト内の次の項目で作業を始めます。ここで私は夜遅くの脳を持つStu Pidに会いました。

1つのドライブでRAIDを作成しました。

mdadm --create /dev/md2 --level 1 --raid-devices 2 /dev/sdd missing
 # Next, I forgot to RTFM..
mkfs.ext4 /dev/md2
 # I actually aborted the above command Ctrl-C...
 # Uhhhh. I create the Physical Volume and extended the VG
pvcreate /dev/md2
vgextend vg1 /dev/md2
 # Next, I dunno
lvextend /dev/vg1/tpool /dev/md2
resize2fs /dev/mapper/vg1-tpool
 # Again what? And now something from Youtube
/usr/share/mdadm/mkconf > /etc/mdadm/mdadm.conf
dpkg-reconfigure pve-kernel-`uname -r`

それから私はなぜかparted -l再びresize2fs走り始めたvg1-tpool。私が知っているすべては、私がこの時点で何をしているのかわからないということです。

結局、これが私が下した結論です(簡潔さのためにいくつかの情報は省略されます)。

root@host:~# lsblk
NAME                           MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda                              8:0    0 111.8G  0 disk
├─sda1                           8:1    0  1007K  0 part
├─sda2                           8:2    0   512M  0 part
└─sda3                           8:3    0 111.3G  0 part
  ├─pve-swap                   253:0    0     8G  0 lvm   [SWAP]
  ├─pve-root                   253:1    0  18.5G  0 lvm   /
  ├─pve-data_tmeta             253:2    0     1G  0 lvm
  │ └─pve-data-tpool           253:4    0  82.8G  0 lvm
  │   ├─pve-data               253:5    0  82.8G  0 lvm
  │   ├─pve-vm--102--disk--0   253:6    0    15G  0 lvm
  │   └─pve-vm--103--disk--0   253:7    0     4G  0 lvm
  └─pve-data_tdata             253:3    0  82.8G  0 lvm
    └─pve-data-tpool           253:4    0  82.8G  0 lvm
      ├─pve-data               253:5    0  82.8G  0 lvm
      ├─pve-vm--102--disk--0   253:6    0    15G  0 lvm
      └─pve-vm--103--disk--0   253:7    0     4G  0 lvm
sdb                              8:16   0 465.8G  0 disk
└─sdb1                           8:17   0 465.8G  0 part
  └─md1                          9:1    0 465.7G  0 raid1
    ├─vg1-tpool_tmeta          253:8    0   108M  0 lvm
    │ └─vg1-tpool-tpool        253:10   0   2.3T  0 lvm
    │   ├─vg1-tpool            253:11   0   2.3T  0 lvm
    │   ├─vg1-vm--100--disk--0 253:12   0    32G  0 lvm
    │   ├─vg1-vm--100--disk--1 253:13   0   350G  0 lvm
    │   └─vg1-vm--101--disk--0 253:14   0    32G  0 lvm
    └─vg1-tpool_tdata          253:9    0   2.3T  0 lvm
      └─vg1-tpool-tpool        253:10   0   2.3T  0 lvm
        ├─vg1-tpool            253:11   0   2.3T  0 lvm
        ├─vg1-vm--100--disk--0 253:12   0    32G  0 lvm
        ├─vg1-vm--100--disk--1 253:13   0   350G  0 lvm
        └─vg1-vm--101--disk--0 253:14   0    32G  0 lvm
sdc                              8:32   0 465.8G  0 disk
└─sdc1                           8:33   0 465.8G  0 part
  └─md1                          9:1    0 465.7G  0 raid1
    ├─vg1-tpool_tmeta          253:8    0   108M  0 lvm
    │ └─vg1-tpool-tpool        253:10   0   2.3T  0 lvm
    │   ├─vg1-tpool            253:11   0   2.3T  0 lvm
    │   ├─vg1-vm--100--disk--0 253:12   0    32G  0 lvm
    │   ├─vg1-vm--100--disk--1 253:13   0   350G  0 lvm
    │   └─vg1-vm--101--disk--0 253:14   0    32G  0 lvm
    └─vg1-tpool_tdata          253:9    0   2.3T  0 lvm
      └─vg1-tpool-tpool        253:10   0   2.3T  0 lvm
        ├─vg1-tpool            253:11   0   2.3T  0 lvm
        ├─vg1-vm--100--disk--0 253:12   0    32G  0 lvm
        ├─vg1-vm--100--disk--1 253:13   0   350G  0 lvm
        └─vg1-vm--101--disk--0 253:14   0    32G  0 lvm
sdd                              8:48   0   1.8T  0 disk
└─md2                            9:2    0   1.8T  0 raid1
  └─vg1-tpool_tdata            253:9    0   2.3T  0 lvm
    └─vg1-tpool-tpool          253:10   0   2.3T  0 lvm
      ├─vg1-tpool              253:11   0   2.3T  0 lvm
      ├─vg1-vm--100--disk--0   253:12   0    32G  0 lvm
      ├─vg1-vm--100--disk--1   253:13   0   350G  0 lvm
      └─vg1-vm--101--disk--0   253:14   0    32G  0 lvm

root@host:~# vgdisplay
  --- Volume group ---
  VG Name               pve
  VG Access             read/write
  VG Status             resizable
  VG Size               <111.29 GiB
  PE Size               4.00 MiB
  Total PE              28489
  Alloc PE / Size       28489 / <111.29 GiB
  Free  PE / Size       0 / 0

  --- Volume group ---
  VG Name               vg1
  VG Access             read/write
  VG Status             resizable
  VG Size               2.27 TiB
  PE Size               4.00 MiB
  Total PE              596101
  Alloc PE / Size       596101 / 2.27 TiB
  Free  PE / Size       0 / 0

root@host:~# lvdisplay vg1
  --- Logical volume ---
  LV Name                tpool
  VG Name                vg1
  LV Write Access        read/write
  LV Creation host, time host, 2020-09-11 00:05:40 +0200
  LV Pool metadata       tpool_tmeta
  LV Pool data           tpool_tdata
  LV Status              available
  # open                 4
  LV Size                2.27 TiB
  Allocated pool data    15.16%
  Allocated metadata     50.58%
  Current LE             596047
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:10

Proxmox環境で

実際のエラーは何ですか?どうすれば解決できますか?どういうわけか各VGにすべての範囲を割り当てたようで、今できることは本当にありません!繰り返しますが、まだ可能ですか?

  • 「空きスペース」を取り戻すことが何を意味していても、
  • pvmove/dev /md1 から正しくアクセスできるように /dev/md2 を変更します。

ベストアンサー1

あなたは名前が欲しいVG1、2つのRAIDで構成されています。 2つの小さなディスクは/ dev / md1を形成し、大きなディスクは/ dev / md2を形成します。lsblk出力とスクリーンショットを見ると、これがあなたが持っているものです。いいね!LVMの組み込みミラーリングがより良いソリューションである可能性があります(より簡単で柔軟性が低下する可能性があります)。

これで状況が変になります。 / dev / md2にファイルシステムを作成し、デバイスを物理ボリュームに切り替えてファイルシステムを破棄します。ボリュームグループに/ dev / md2を追加して(OK)展開します。ティープール全サイズ以上VG1。それでも問題ありませんが、論理ボリュームを拡張してすべてのスペースを使用するようになると、スペースをすべて使用しても驚くことはありません。

もっと奇妙なことを延長した後ティープール、ちょうど実行してくださいresize2fs /dev/mapper/vg1-tpool。ボリュームにファイルシステムがないため、実際にエラーが発生します。それとも、いくつかのステップがありませんか?

空き容量の確保VG1、ボリュームサイズを以前のサイズに縮小しました。通常、この方法は機能します。利用可能なすべてのシーンボリュームがあることを願っています。ティープール活動がたくさん見られませんでした。

最後に、私は理解できず、サーバーを破壊する可能性があるタスクを完了するためにランダムなチュートリアルとYouTubeのビデオを決して使用しません。再試行する前に、LVM、シンボリューム、およびファイルシステムの完全な紹介をお読みください。

おすすめ記事