昨日の夕方、管理してるサーバの警告メールが届いたんスよね。要するにデータ領域が少なすぎて「別のサーバからデータを転送できねぇぜ」と云うお達し。管理サーバにsshでログインして調べてみたらデータパーティション領域の使用率が99%でした。仕方ないんで危急に必要のないバックアップデータとかを別のサーバに一旦移して使用率を96%にまで下げました。
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 20G 1.8G 18G 9% /
devtmpfs 993M 60K 993M 1% /dev
tmpfs 1002M 0 1002M 0% /dev/shm
/dev/xvdf 50G 45G 2.2G 96% /mnt/xxxx
容量を確認。/dev/xvdf は96%になったけどあんまり余裕なし。
そのうちまたデータが一杯になるのは想像に難くないので、ハードディスクを増設しようと。
それで、AmazonのクラウドサービスEC2の便利なところがサーバが稼働中にハードディスクのボリュームを増量することができるんスよ。実機でだったら稼働中にUSB接続で外付けハードディスクをアタッチすることは出来るけど、さすがに動いてる内臓ハードディスクの容量を300GBから500GBに増量なんて出来ないっしょ?
先ずはデータパーティションのデータのバックアップということでスナップショットを撮ります。万が一ボリューム変更時にパーティションを壊してデータをお釈迦にしても大丈夫なように保険っすね。AWSのコンソールからブラウザで操作っすよ。
で、50GBから70GBへボリュームを変更すると…
最適化が始まって、10分位すると100%になって使えるようになると…いうわけじゃないんスよ。
この後、この管理サーバにsshでログインしてパーティション領域を拡張する作業が必要なんスよ。
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 20G 0 disk
+-xvda1 202:1 0 20G 0 part /
xvdf 202:80 0 70G 0 disk /mnt/xxxx
ボリューム増量後は70GBになってるね。ここでパーティションを拡張するコマンドを投入。
FAILED: unable to determine partition type
ありゃ?だわねぇ。じゃあファイルシステムを強制的にチェックしよう。
e2fsck 1.42.12 (29-Aug-2014)
/dev/xvdf is mounted.
e2fsck: Cannot continue, aborting.
やっぱ、ディスクをマウントしたままじゃダメかぁ。エイやでアンマウントしてみるかぁ。
[root@ip-1X-X-X-XX mnt]# e2fsck -f /dev/xvdf
e2fsck 1.42.12 (29-Aug-2014)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/xvdf: 750800/3276800 files (0.2% non-contiguous), 11882540/13107200 blocks
出来たねぇ。じゃあファイルシステムのリサイズコマンドいいんじゃね?
resize2fs 1.42.12 (29-Aug-2014)
Resizing the filesystem on /dev/xvdf to 18350080 (4k) blocks.
The filesystem on /dev/xvdf is now 18350080 (4k) blocks long.
すかさずマウントすると…
[root@ip-1X-X-X-XX mnt]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 20G 1.8G 18G 9% /
devtmpfs 993M 64K 993M 1% /dev
tmpfs 1002M 0 1002M 0% /dev/shm
/dev/xvdf 69G 45G 21G 69% /mnt/xxxx