サーバのディスク容量についてハマったこと
CMLの構築の際にハマった問題についての記事。自分の備忘録的なもの。
やっていたこと
PoweredgeにUbuntu Serverをたてて、さらにVMware workstation playerを使用して、VMでCMLを構築するということをしていた。
出力されたエラー
読んでみると、ファイルシステムに割り当てるdiskの容量が足りないですよと言われている。なぜ?poweredgeには1TBのHDDを積んでいるし、このVMには200GBのディスク容量を割り当てている。これでも足らないのか?と思い、400GBに変更してみる。
結果として、これでも何も表示は変わらなかった。まぁ VM側ではなく、ホスト側の容量の話だろうからまぁそうだろうなと思ってはいた。
トラブルシュート 仮説
まぁディスク容量でdisk 1TB積んでいるのに不足してるよっていわれるということは、おそらく使用しているファイルシステムのボリューム(もしくはLVM)がきちんと割り当てられてないんだろうなぁということはわかる。使われずに遊んでいるやつらがそれなりにいるのだろう。
トラブルシュート 現状の確認と対策
billy@billy:~$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 32G 0 32G 0% /dev
tmpfs 6.3G 2.4M 6.3G 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 98G 36G 58G 39% /
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/sda2 1.5G 219M 1.2G 16% /boot
/dev/loop0 62M 62M 0 100% /snap/core20/1376
/dev/loop1 62M 62M 0 100% /snap/core20/1405
/dev/loop3 44M 44M 0 100% /snap/snapd/14978
/dev/loop2 68M 68M 0 100% /snap/lxd/22753
/dev/loop4 44M 44M 0 100% /snap/snapd/15177
/dev/loop5 68M 68M 0 100% /snap/lxd/22526
tmpfs 6.3G 20K 6.3G 1% /run/user/1000
billy@billy:~$
dfコマンドはファイルシステム上の空き領域のサイズを集計して表示してくれる。この中でファイルシステムに割り当てられているvolume groupは見た感じ /dev/mapper/ubuntu--vg-ubuntu--lv ここかな。なんでサイズが98Gしかないの?この前確認したときは1T近く割り当てられていた気がするんだけど。。。
じゃあ次はvolume groupの状態を確認する。
billy@billy:~$ sudo vgdisplay
[sudo] billy のパスワード:
--- Volume group ---
VG Name ubuntu-vg
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 <1.09 TiB
PE Size 4.00 MiB
Total PE 285183
Alloc PE / Size 25600 / 100.00 GiB
Free PE / Size 259583 / <1014.00 GiB
VG UUID JJEiF8-hOlD-qUnF-cDud-30lX-DI1J-zIPxuE
billy@billy:~$
Freeに1014GB OTL
なんでこんなことになっているのかは結局わからないけど原因はわかった。ファイルシステムに割り当てられているvolume groupが100GBに減っているせいだ。
それなら対処は簡単。Freeで遊んでいるvolumeをAllocateしてあげるだけ。
対処 ubuntu--vg-ubuntu--lv の拡張
参考にしたのは下のページ。何が原因なんだ?とやみくもに調べていた時は全然類似の事象は見つからなかったのに、一つ一つ確認して原因がわかり対処方法を調べると解決策がボロボロでてきた。
billy@billy:~$ sudo lvextend -l +50%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
Size of logical volume ubuntu-vg/ubuntu-lv changed from 100.00 GiB (25600 extents) to 607.00 GiB (155392 extents).
Logical volume ubuntu-vg/ubuntu-lv successfully resized.
とりあえず、半分割り当てる。これでも足りなくなってきたらフルでわりあてればいいかな。
再度確認
billy@billy:~$ sudo vgdisplay
--- Volume group ---
VG Name ubuntu-vg
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
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 <1.09 TiB
PE Size 4.00 MiB
Total PE 285183
Alloc PE / Size 155392 / 607.00 GiB
Free PE / Size 129791 / <507.00 GiB
VG UUID JJEiF8-hOlD-qUnF-cDud-30lX-DI1J-zIPxuE
はいはいはい。割り当てられましたね。607GBに増えていることが確認できました。
じゃあ割り当てたvolumeをファイルシステムに反映させますか。
billy@billy:~$ sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
resize2fs 1.45.5 (07-Jan-2020)
Filesystem at /dev/mapper/ubuntu--vg-ubuntu--lv is mounted on /; on-line resizing required
old_desc_blocks = 13, new_desc_blocks = 76
The filesystem on /dev/mapper/ubuntu--vg-ubuntu--lv is now 159121408 (4k) blocks long.
CMLに再挑戦
それではCMLに再挑戦です。結果は見ての通りです。
感想
ディスクとか論理ボリュームとかストレージと言えばいいのか、そっち系の知識レベルの低さを実感させられた感じがする。上でみてみると本当に簡単なことだったんだけど、仮説から原因対処まではかなり時間がかかってる。
やっぱり自分は技術者としてのレベルが低い。精進しないと。
この記事が気に入ったらサポートをしてみませんか?