KVMのゲストOSイメージ(CentOS 6.4 x86_64)のディスク容量に余裕がなくなってきたので拡大したときのメモ。
5GB → 20GB へアップさせた。
★【libguestfs-tools】が必須なのでyumでインストールしておく
★ 構成チェック
[root@vm ~]# virt-df -h /home/admin/KVM_images/flower.img
Filesystem Size Used Available Use%
flower.img:/dev/sda1 484M 33M 427M 7%
flower.img:/dev/VolGroup/lv_root 3.2G 3.1G 0 96%
★ 構成チェック2
[root@vm ~]# virt-list-partitions -lh /home/admin/KVM_images/flower.img
/dev/sda1 ext4 500.0M
/dev/sda2 pv 4.5G
★ (移動)
[root@vm ~]# cd /home/admin/KVM_images/
[root@vm KVM_images]# ls -l
-rw------- 1 root root 5368709120 7月 1 11:32 2013 flower.img
★ 一度別名にする
[root@vm KVM_images]# mv flower.img flower.img.bk
[root@vm KVM_images]# ls -l
-rw------- 1 root root 5368709120 7月 1 11:32 2013 flower.img.bk
★ 容量アップ後のサイズを指定して空のイメージを作成する
[root@vm KVM_images]# truncate -s 20G /home/admin/KVM_images/flower.img
[root@vm KVM_images]# ls -l
-rw-r--r-- 1 root root 21474836480 7月 1 11:47 2013 flower.img
-rw------- 1 root root 5368709120 7月 1 11:32 2013 flower.img.bk
★ データを新しく作ったイメージに移す(ここで指定しているオプションは、増量分全てを"/dev/VolGroup/lv_root"に割り当てている)
[root@vm KVM_images]# virt-resize flower.img.bk flower.img --expand /dev/sda2 --LV-expand /dev/VolGroup/lv_root
Examining flower.img.bk ...
**********
Summary of changes:
/dev/sda1: This partition will be left alone.
/dev/sda2: This partition will be resized from 4.5G to 19.5G. The LVM
PV on /dev/sda2 will be expanded using the 'pvresize' method.
/dev/VolGroup/lv_root: This logical volume will be expanded to maximum
size. The filesystem ext4 on /dev/VolGroup/lv_root will be
expanded using the 'resize2fs' method.
**********
Setting up initial partition table on flower.img ...
Copying /dev/sda1 ...
100% ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ 00:00
Copying /dev/sda2 ...
100% ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ 00:00
Expanding /dev/sda2 using the 'pvresize' method ...
Expanding /dev/VolGroup/lv_root using the 'resize2fs' method ...
Resize operation completed with no errors. Before deleting the old
disk, carefully check that the resized disk boots and works correctly.
[root@vm KVM_images]#
以上で完了。あとは普通にゲストOSを起動する。
ただし、増量後にゲストOSの zabbix を起動してみるとMySQLのデータがおかしくなっていたことがあったので、検証テストを終えるまではバックアップを消さない方が良い。