ただつらつらと日記が書かれていくようです。

LVMのLogical Volumeのオンラインリサイズをやってみた

VMWareをインストールしているマシンに新しく仮想マシンを作ってディスクを割り当てたら、ディスク使用率がどーんと跳ね上がったので、余らせておいた領域を割り当ててみることにした。今後、LVMのオンライン拡張とかやるときのためにメモ。

使ったマシンにはCentOS5.2のx86_64版がインストールしてあるのかと思いきや、i386版がインストールしてあった。で、もともと、LVM上のLogicalVolumeには100GBくらいを割り当てていたけれど、このマシンに刺さっているHDDは320GBのものなので、かなり余っている領域があるということで、それをどかっと割り当てることにする。

# df -h

Filesystem サイズ 使用 残り 使用% マウント位置

/dev/mapper/VG00-LV00

95G 46G 44G 52% /

/dev/sdb1 73G 12G 58G 17% /backup

/dev/sda1 99M 24M 71M 25% /boot

tmpfs 2.0G 0 2.0G 0% /dev/shm

で、まずはVolumeGroupとLogicalVolumeの状況確認から。

# vgdisplay VG00

— Volume group —

VG Name VG00

System ID

Format lvm2

Metadata Areas 1

Metadata Sequence No 2

VG Access read/write

VG Status resizable

MAX LV 0

Cur LV 1

Open LV 1

Max PV 0

Cur PV 1

Act PV 1

VG Size 290.17 GB

PE Size 8.00 MB

Total PE 37142

Alloc PE / Size 12500 / 97.66 GB

Free PE / Size 24642 / 192.52 GB

VG UUID f4MKYy-SAu8-Bh67-92QF-63w4-QgPa-dUcJpt

とりあえず、VGには余っている領域(Free Size)が192GBくらいあることがわかった。

# lvdisplay /dev/mapper/VG00-LV00

— Logical volume —

LV Name /dev/VG00/LV00

VG Name VG00

LV UUID 2q71Yr-RxYQ-P3zs-FKUE-hvBq-wlIZ-SfLJDU

LV Write Access read/write

LV Status available

# open 1

LV Size 97.66 GB

Current LE 12500

Segments 1

Allocation inherit

Read ahead sectors auto

– currently set to 256

Block device 253:0

LVはdfで見たように、だいたい100GBくらいありますね…と。

で、ここからLVのサイズをぐぐっとVG一杯まで広げていくわけだけど、きっちりサイズ指定して、微妙なあまりを発生させないようにしたいが、拡張コマンドに「192.52GB」とか指定すると、ちょこっと余ったりしそうなので、エクステントの数で指定して大きくしてみる。

上のVGの空き容量の横に「Free PE」って書いてあって、それが空いてるエクステントの数のようだ。というわけで、こんな感じでLVを広げてあげる。

# lvextend -l +24642 /dev/VG00/LV00

Extending logical volume LV00 to 290.17 GB

Logical volume LV00 successfully resized

これで、LVのリサイズが完了したけれど、ファイルシステムも併せて広げておかないと、使える領域は増えないので、ファイルシステムもリサイズする。容量指定しないときは、パーティションのサイズ、つまり、今回では、リサイズ後のLVのサイズになるようだ。

# resize2fs /dev/mapper/VG00-LV00

resize2fs 1.39 (29-May-2006)

Filesystem at /dev/mapper/VG00-LV00 is mounted on /; on-line resizing required

Performing an on-line resize of /dev/mapper/VG00-LV00 to 76066816 (4k) blocks.

The filesystem on /dev/mapper/VG00-LV00 is now 76066816 blocks long.

で、このresize2fsは、マウントしたままで空き容量ががつがつ増えていくので、上記のコマンドを発行した後で、dfコマンドで何回か確認すると、/dev/mapper/VG00-LV00の空き容量が増えていき、使用率が下がっていく状況がつぶさに見られた。

resize2fsが完了した後、改めて確認すると以下のような感じだった。

# df -h

Filesystem サイズ 使用 残り 使用% マウント位置

/dev/mapper/VG00-LV00

282G 46G 221G 18% /

/dev/sdb1 73G 12G 58G 17% /backup

/dev/sda1 99M 24M 71M 25% /boot

tmpfs 2.0G 0 2.0G 0% /dev/shm

とりあえず、使える領域が増えたってことでめでたしめでたし。…てか、何で最初から領域を割り当ててないんだろうなぁ(汗)

2件のコメント

  1. Power7

    久しぶりの、Linux 案件で喜んでいたら、早速、障害ではないのですが、ディスク容量を増やして欲しいとの依頼を受けました。局面は UT なので、サーバをシャットダウンしようとした矢先に、オンラインでの要望がはいり、いつもどおり、ext2online コマンドを実行したら、そのコマンドはないと、RHEL5 OS に怒られてしまい。ネットで対応方法をさがしてましたら、ここに辿りつきました。コマンドが resize2fs に変更になったんですね。知りませんでした。貴重な情報を提供して頂きまして、ありがとうございます。

    それでは、失礼します。

  2. y_fudi

    Powe7さん、コメントありがとうございます。
    拙いBlogで恐縮ですが、お役に立てたようでしたらなによりです。m(__)m

y_fudi へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください