LVMでディスクを追加
LVM は公式ドキュメントがどこにあるのかわからない。
とりあえずこれを読んでみる。
http://tldp.org/HOWTO/LVM-HOWTO/commontask.html
- pvcreate で /dev/xvdb を全部 PV とする。
HOWTO では推奨されてないが、Linux 以外からパーティションを認識できなくなる、という問題であって、今回の環境では Linux以外で管理するつもりがないので問題無しとする。
[root@ikura ~]# LANG=C date; pvcreate /dev/xvdb; LANG=C date Wed Sep 16 21:50:31 JST 2009 Physical volume "/dev/xvdb" successfully created Wed Sep 16 21:50:31 JST 2009 [root@ikura ~]#
オンラインでディスクの追加できるのか?
まあ、バックアップ取ってるし試してみるか。
[root@ikura ~]# vgscan --verbose Wiping cache of LVM-capable devices Wiping internal VG cache Reading all physical volumes. This may take a while... Finding all volume groups Finding volume group "VolGroup00" Found volume group "VolGroup00" using metadata type lvm2 [root@ikura ~]# [root@ikura ~]# vgextend VolGroup00 /dev/xvdb Volume group "VolGroup00" successfully extended [root@ikura ~]#
うげ、成功した。意味わからん。
いや、PV - VG - LV という関係だから、 VG にディスクを追加するのは問題ないかも。
[root@ikura ~]# df -h Filesystem サイズ 使用 残り 使用% マウント位置 /dev/mapper/VolGroup00-LogVol00 3.3G 2.6G 528M 84% / /dev/xvda1 99M 43M 52M 45% /boot tmpfs 129M 0 129M 0% /dev/shm [root@ikura ~]#
df は変化無し。
VG にディスクを追加した。次に LV を拡張すればいいはず。
これはオンラインでできるのか?
いや、原点回帰。現在の状況を整理しよう。
[root@ikura ~]# pvscan PV /dev/xvda2 VG VolGroup00 lvm2 [3.88 GB / 0 free] PV /dev/xvdb VG VolGroup00 lvm2 [3.97 GB / 3.97 GB free] Total: 2 [7.84 GB] / in use: 2 [7.84 GB] / in no VG: 0 [0 ] [root@ikura ~]# pvdisplay --- Physical volume --- PV Name /dev/xvda2 VG Name VolGroup00 PV Size 3.90 GB / not usable 24.72 MB Allocatable yes (but full) PE Size (KByte) 32768 Total PE 124 Free PE 0 Allocated PE 124 PV UUID SVwvda-AetG-AJdi-qtz0-vnS9-sdh7-prptlk --- Physical volume --- PV Name /dev/xvdb VG Name VolGroup00 PV Size 4.00 GB / not usable 32.00 MB Allocatable yes PE Size (KByte) 32768 Total PE 127 Free PE 127 Allocated PE 0 PV UUID 4013gs-R1mw-zlIM-OFdc-sTUC-Fz2g-IGXdr3 [root@ikura ~]#
PV として /dev/xvdb を認識できている。
これは pvcreate /dev/xvdb で PV として追加できた、ということかもしれない。
[root@ikura ~]# vgscan Reading all physical volumes. This may take a while... Found volume group "VolGroup00" using metadata type lvm2 [root@ikura ~]# vgdisplay --- Volume group --- VG Name VolGroup00 System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 4 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 2 Act PV 2 VG Size 7.84 GB PE Size 32.00 MB Total PE 251 Alloc PE / Size 124 / 3.88 GB Free PE / Size 127 / 3.97 GB VG UUID jjBm64-Yd3Y-Ml2V-2RAt-4HoV-CzCT-2sVjLA [root@ikura ~]#
うーん、わからん。 vgdisplay の出力に 3.88, 3.97 という値が見るが、これは VG として追加されているからなのか?vgextend の結果、ここに追加されたのだろうか。
えい。
[root@ikura ~]# lvextend -L+3900M /dev/VolGroup00/LogVol00 Rounding up size to full physical extent 3.81 GB Extending logical volume LogVol00 to 7.16 GB Logical volume LogVol00 successfully resized [root@ikura ~]#
あれ、追加できた。気持ち悪い。
[root@ikura ~]# df -h Filesystem サイズ 使用 残り 使用% マウント位置 /dev/mapper/VolGroup00-LogVol00 3.3G 2.6G 528M 84% / /dev/xvda1 99M 43M 52M 45% /boot tmpfs 129M 0 129M 0% /dev/shm [root@ikura ~]#
df の出力は同じまま。
resize2fs でリサイズすればいいのかな。
次。single user mode で起動。
resize2fs を試みる。
だめだ。resize2fs をしたい / に resize2fs が入っているので、シングルユーザモードにしても無駄。
今は bootable なメディアが無いし、LVM で HDD を増強するのはめんどい。
bootable なメディアが手に入る迄本件保留とする。