仮想サーバで作ったディスクが容量不足!の話
コマンド一発で仮想サーバは作ります。
で、こんなことありませんか?
容量が足りない… ってか指定が少なすぎた…
virt-install \
--name ubuntu_test \
--ram 4096 \
--disk path=/var/lib/libvirt/ubuntu_test.img,size=20 \
--vcpus 2 \
--os-variant ubuntu22.04 \
--network bridge=br0 \
--graphics none \
--console pty,target_type=serial \
--location ubuntu-22.04.1-live-server-amd64.iso,kernel=casper/vmlinuz,initrd=casper/initrd \
--extra-args 'console=ttyS0,115200n8 serial'
いつも通りの汎用のコマンドをコピペしたのでしょうがない
普段は20GBで十分だったのですがdockerで激しめに使う必要があったので200GBは欲しかったんですよね。
これを作成後に拡張させる手順をまとめておきます
環境
wataru@gitlab:~$ virsh version
Compiled against library: libvirt 8.0.0
Using library: libvirt 8.0.0
Using API: QEMU 8.0.0
Running hypervisor: QEMU 6.2.0
容量を増やす冴えた方法
ではではどの様に拡張するか!
ディスクは/var/lib/libvirt/ubuntu_test.imgに定義しています。
imgの拡張子をつけてしまって書式がわからないのでしょうがないです。
まずはそちらを調べます、調べるとqcow2でした。
今回はvirt-managerのストレージ管理から確認しました。
ディスク容量をアップするのはコマンド一発です。
root@gitlab:/var/lib/libvirt# sudo qemu-img resize ubuntu_test.img +180G
Image resized.
今回は20GBで定義していたもを200GBにしました。
ここでは注意です、ちゃんとマウントしている仮想サーバは停止してください。エラーになります。
あとはディスクのコピー後と同じ様に拡張すればOKです
終いに
今回は作成した後にしまった!という時の復帰方法を書いておきます
メモ
記事参照だけではアレなので実行したコマンドを残しておきます
拡張前の状態を確認します
wataru@ubuntutest:~$ sudo parted /dev/vda
GNU Parted 3.4
Using /dev/vda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) p
Warning: Not all of the space available to /dev/vda appears to be used, you can fix the GPT to use all of the space (an extra 377487360 blocks) or continue with the current setting?
Fix/Ignore? i
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 215GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 2097kB 1049kB bios_grub
2 2097kB 1904MB 1902MB ext4
3 1904MB 21.5GB 19.6GB
パーティションを拡張します
(parted) resizepart 3 215GB
(parted) p
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 215GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 2097kB 1049kB bios_grub
2 2097kB 1904MB 1902MB ext4
3 1904MB 215GB 213GB
pvを拡張します
wataru@ubuntutest:~$ sudo pvdisplay /dev/vda3
--- Physical volume ---
PV Name /dev/vda3
VG Name ubuntu-vg
PV Size <18.23 GiB / not usable 3.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 4665
Free PE 2105
Allocated PE 2560
PV UUID eDOtIf-wDZv-ozT7-IWH5-zVQF-wGyZ-5E2g7V
wataru@ubuntutest:~$ sudo pvresize /dev/vda3
Physical volume "/dev/vda3" changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resized
wataru@ubuntutest:~$ sudo pvdisplay /dev/vda3
--- Physical volume ---
PV Name /dev/vda3
VG Name ubuntu-vg
PV Size <198.23 GiB / not usable 2.98 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 50745
Free PE 48185
Allocated PE 2560
PV UUID eDOtIf-wDZv-ozT7-IWH5-zVQF-wGyZ-5E2g7V
lvを拡張します
wataru@ubuntutest:~$ sudo lvdisplay
--- Logical volume ---
LV Path /dev/ubuntu-vg/ubuntu-lv
LV Name ubuntu-lv
VG Name ubuntu-vg
LV UUID KAWM0j-45Fw-ytH5-LpM3-Kn90-9QMe-yZG9F2
LV Write Access read/write
LV Creation host, time ubuntu-server, 2022-12-10 08:36:07 +0000
LV Status available
# open 1
LV Size 10.00 GiB
Current LE 2560
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
wataru@ubuntutest:~$ sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
Size of logical volume ubuntu-vg/ubuntu-lv changed from 10.00 GiB (2560 extents) to 198.22 GiB (50745 extents).
Logical volume ubuntu-vg/ubuntu-lv successfully resized.
wataru@ubuntutest:~$ sudo lvdisplay
--- Logical volume ---
LV Path /dev/ubuntu-vg/ubuntu-lv
LV Name ubuntu-lv
VG Name ubuntu-vg
LV UUID KAWM0j-45Fw-ytH5-LpM3-Kn90-9QMe-yZG9F2
LV Write Access read/write
LV Creation host, time ubuntu-server, 2022-12-10 08:36:07 +0000
LV Status available
# open 1
LV Size 198.22 GiB
Current LE 50745
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
lvサイズを最大にします
wataru@ubuntutest:~$ df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 393M 896K 392M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 9.8G 9.1G 233M 98% /
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/vda2 1.8G 127M 1.5G 8% /boot
tmpfs 393M 4.0K 393M 1% /run/user/1000
wataru@ubuntutest:~$ sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
resize2fs 1.46.5 (30-Dec-2021)
Filesystem at /dev/mapper/ubuntu--vg-ubuntu--lv is mounted on /; on-line resizing required
old_desc_blocks = 2, new_desc_blocks = 25
The filesystem on /dev/mapper/ubuntu--vg-ubuntu--lv is now 51962880 (4k) blocks long.
wataru@ubuntutest:~$ df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 393M 896K 392M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 195G 9.1G 178G 5% /
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/vda2 1.8G 127M 1.5G 8% /boot
tmpfs 393M 4.0K 393M 1% /run/user/1000