2016/08/27(土)kvmにディスク追加した

2年前に作った仮想環境(ゲスト)のディスクが足りなくなったので追加した。
20Gあれば足りると思ってたけど、最近はオンラインにファイルおくようになったので足りなくなった。
最近はいくら容量があっても足りないね。

バックアップの都合と、データ移行の都合であえて現在のディスクを拡張せずに、新しくディスクを追加します。
ゲストOSの動いているディスクはいじらないので停止したり、再起動の必要はなし。

ホスト側で仮想ディスクの作成と追加

前と同じところにディスク作成。
今回はvdbとして100G追加。
必要なら改めて追加する。

$ cd /path/to/image
$ qemu-img create www-data1.img 100G
Formatting 'www-data1.img', fmt=raw size=107374182400
$ vi www-data1.xml
<disk type='file' device='disk'>
   <driver name='qemu' type='raw' cache='none'/>
   <source file='/path/to/image/www-data1.img'/>
   <target dev='vdb'/>
</disk>
$ virsh attach-device www ./www-data1.xml --config
デバイスが正常に接続されました

--config付けると設定ファイルに追記されます。
というか、つけないとゲスト再起動時にアタッチされません。

くっつけたデバイスを外すときは

$ virsh detach-device www ./www-data1.xml --config 
デバイスが正常に切断されました

で外せます。

ゲスト側でディスクをフォーマット

# fdisk /dev/vdb
Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-209715199, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-209715199, default 209715199):
Using default value 209715199

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
# mkfs.ext4 /dev/vdb1

マウントさせる

マウントするように書いておく

# vi /etc/fstab

[/dev/vdb1 /path/to/mount ext4 defaults 0 0] を追記

# mount -a

以上で設定終了...
なんだけど、データ用領域は拡張する可能性大なので、きちんと論理ボリュームにしておくことにする。
次の記事でまとめます。

検索用

[linux] [kvm] [ディスク] [追加] [拡張]