ここでは、仮想マシン demo02 に割り当てられている仮想ディスクのサイズを拡張する方法について紹介する。
仮想マシン demo02 を停止する。
# virsh shutdown demo02
ドメイン demo02 はシャットダウン中です
#
現在の仮想マシン demo02 のディスク情報を確認する。
# qemu-img info /var/lib/libvirt/images/demo02.img
image: /var/lib/libvirt/images/demo02.img
file format: qcow2
virtual size: 20G (21474836480 bytes)
disk size: 1.6G
cluster_size: 65536
Format specific information:
compat: 1.1
lazy refcounts: true
#
仮想ディスクのサイズを 20G から 25G へリサイズ(変更)する。
# qemu-img resize /var/lib/libvirt/images/demo02.img 25G
Image resized.
#
リサイズ後のディスク情報を確認する。virtual size が 25G に変更されていることが確認できる。
# qemu-img info /var/lib/libvirt/images/demo02.img
image: /var/lib/libvirt/images/demo02.img
file format: qcow2
virtual size: 25G (26843545600 bytes)
disk size: 1.6G
cluster_size: 65536
Format specific information:
compat: 1.1
lazy refcounts: true
#
仮想マシン demo02 を起動する。
# virsh start demo02
ドメイン demo02 が起動されました
#
仮想マシン demo02 のパーティションを確認する。
# fdisk -l
Disk /dev/vda: 26.8 GB, 26843545600 bytes, 52428800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk label type: dos
ディスク識別子: 0x000f210e
デバイス ブート 始点 終点 ブロック Id システム
/dev/vda1 * 2048 2099199 1048576 83 Linux
/dev/vda2 2099200 41943039 19921920 8e Linux LVM
Disk /dev/mapper/centos-root: 19.3 GB, 19318964224 bytes, 37732352 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk /dev/mapper/centos-swap: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
#
現在のパーティションを拡張する。パーティションの開始セクタを間違えない限りは作業前後でデータが消えたりはしない。
# fdisk /dev/vda
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
コマンド (m でヘルプ): p
Disk /dev/vda: 26.8 GB, 26843545600 bytes, 52428800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk label type: dos
ディスク識別子: 0x000f210e
デバイス ブート 始点 終点 ブロック Id システム
/dev/vda1 * 2048 2099199 1048576 83 Linux
/dev/vda2 2099200 41943039 19921920 8e Linux LVM
コマンド (m でヘルプ): d
パーティション番号 (1,2, default 2): 2
Partition 2 is deleted
コマンド (m でヘルプ): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
パーティション番号 (2-4, default 2): 2
最初 sector (2099200-52428799, 初期値 2099200): 2099200
Last sector, +sectors or +size{K,M,G} (2099200-52428799, 初期値 52428799): 52428799
Partition 2 of type Linux and of size 24 GiB is set
コマンド (m でヘルプ): p
Disk /dev/vda: 26.8 GB, 26843545600 bytes, 52428800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk label type: dos
ディスク識別子: 0x000f210e
デバイス ブート 始点 終点 ブロック Id システム
/dev/vda1 * 2048 2099199 1048576 83 Linux
/dev/vda2 2099200 52428799 25164800 83 Linux
コマンド (m でヘルプ): w
パーティションテーブルは変更されました!
ioctl() を呼び出してパーティションテーブルを再読込みします。
WARNING: Re-reading the partition table failed with error 16: デバイスもしくはリソースがビジー状態です.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
ディスクを同期しています。
#
仮想マシンを再起動する。
# reboot
物理ボリューム(PV)の状態を確認する。
# pvdisplay
--- Physical volume ---
PV Name /dev/vda2
VG Name centos
PV Size <19.00 GiB / not usable 3.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 4863
Free PE 1
Allocated PE 4862
PV UUID iUNiKW-IyvW-0jIk-FWZo-FteV-mGcx-1M5Ok4
#
# pvs
PV VG Fmt Attr PSize PFree
/dev/vda2 centos lvm2 a-- <19.00g 4.00m
#
物理ボリューム(PV)を拡張する。
# pvresize /dev/vda2
Physical volume "/dev/vda2" changed
1 physical volume(s) resized / 0 physical volume(s) not resized
#
拡張後の物理ボリューム(PV)の状態を確認する。 PV Size が 20G から 25G に拡張されている。
# pvdisplay
--- Physical volume ---
PV Name /dev/vda2
VG Name centos
PV Size <24.00 GiB / not usable 2.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 6143
Free PE 1281
Allocated PE 4862
PV UUID iUNiKW-IyvW-0jIk-FWZo-FteV-mGcx-1M5Ok4
#
# pvs
PV VG Fmt Attr PSize PFree
/dev/vda2 centos lvm2 a-- <24.00g 5.00g
#
論理ボリューム(LV)の状態を確認する。
# lvdisplay
--- Logical volume ---
LV Path /dev/centos/swap
LV Name swap
VG Name centos
LV UUID 3B0NrR-T1Mu-h2D4-7Ud0-ppXS-GOeq-y7iECL
LV Write Access read/write
LV Creation host, time localhost, 2018-09-30 02:55:37 +0900
LV Status available
# open 2
LV Size 1.00 GiB
Current LE 256
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:1
--- Logical volume ---
LV Path /dev/centos/root
LV Name root
VG Name centos
LV UUID 3mskjA-ZhBy-Y5c6-V832-UmWC-JjK7-8gN4fM
LV Write Access read/write
LV Creation host, time localhost, 2018-09-30 02:55:38 +0900
LV Status available
# open 1
LV Size 17.99 GiB
Current LE 4606
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
#
空いている物理ボリューム(PV)を、論理ボリューム(LV)に全て割り当てる。
# lvextend -l +100%FREE /dev/centos/root
Size of logical volume centos/root changed from 17.99 GiB (4606 extents) to <23.00 GiB (5887 extents).
Logical volume centos/root successfully resized.
#
論理ボリューム(LV)の状態を確認する。割り当て後は、/dev/centos/root のLV Size が 23.00 GiB へ増加されている。
# lvdisplay
--- Logical volume ---
LV Path /dev/centos/swap
LV Name swap
VG Name centos
LV UUID 3B0NrR-T1Mu-h2D4-7Ud0-ppXS-GOeq-y7iECL
LV Write Access read/write
LV Creation host, time localhost, 2018-09-30 02:55:37 +0900
LV Status available
# open 2
LV Size 1.00 GiB
Current LE 256
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:1
--- Logical volume ---
LV Path /dev/centos/root
LV Name root
VG Name centos
LV UUID 3mskjA-ZhBy-Y5c6-V832-UmWC-JjK7-8gN4fM
LV Write Access read/write
LV Creation host, time localhost, 2018-09-30 02:55:38 +0900
LV Status available
# open 1
LV Size <23.00 GiB
Current LE 5887
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
#
ファイルシステム(XFS)の使用状況を確認する。
# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/mapper/centos-root 18G 1.2G 17G 7% /
devtmpfs 233M 0 233M 0% /dev
tmpfs 245M 0 245M 0% /dev/shm
tmpfs 245M 4.5M 240M 2% /run
tmpfs 245M 0 245M 0% /sys/fs/cgroup
/dev/vda1 1014M 159M 856M 16% /boot
tmpfs 49M 0 49M 0% /run/user/0
#
ファイルシステム(XFS)を拡張する。
# xfs_growfs /dev/centos/root
meta-data=/dev/mapper/centos-root isize=512 agcount=4, agsize=1179136 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=4716544, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 4716544 to 6028288
#
拡張後のファイルシステム(XFS)の使用状況を確認する。ルートパーティション(/)が拡張されていることがわかる。
# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/mapper/centos-root 23G 1.2G 22G 5% /
devtmpfs 233M 0 233M 0% /dev
tmpfs 245M 0 245M 0% /dev/shm
tmpfs 245M 4.5M 240M 2% /run
tmpfs 245M 0 245M 0% /sys/fs/cgroup
/dev/vda1 1014M 159M 856M 16% /boot
tmpfs 49M 0 49M 0% /run/user/0
#