既存のサーバーに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
実際のエラーは何ですか?どうすれば解決できますか?どういうわけか各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、シンボリューム、およびファイルシステムの完全な紹介をお読みください。