Pocket

こんにちは、インフラエンジニアの綿引です。

EC2 運用時に いつのまにかディスク使用率が 100% に、、
という経験がある方もいらっしゃるのでないでしょうか。

そこで今回は EC2 の EBS ボリュームを拡張したので、方法を共有したいと思います。

対象の方は以下のような方でしょうか。

  • EC2 のディスク使用率がそろそろ危ない、、

実施方法

では早速実施していきます。拡張対象の EC2 の情報は以下です。

  • OS : CentOS 7
  • 拡張対象 : ルートパーティション

そしてやる前に 必ずバックアップ を取得しておきましょう。

EBS ボリュームの拡張

まずは EBS ボリュームの拡張を行なっていきます。

マネジメントコンソールの EBS の画面から、拡張対象の EBS ボリュームを選択し 「アクション」 → 「ボリュームの変更」 を選択します。

そして画面遷移後、ボリュームタイプ・サイズを任意のものにして「変更」を押下します。

今回は 200GB → 400GB に変更しました。

変更が開始されると、画面の下部に進捗が表示されますので 100% になるまで待ちます。

パーティションとファイルシステムの拡張

EBS のボリューム拡張が完了したら、次は OS 側にてパーティションとファイルシステムの拡張をしていきます。

まずブロックデバイスが拡張されているか lsblk コマンドで確認します。

df コマンドでも確認してみます。

ルートボリュームの xvda は先ほどの EBS のボリューム拡張にて 400GB になっていますが、ルートパーテーションの xvda1 はまだ 200GB のままです。

ではパーティションの拡張を growpart コマンドで行います。

これで xvda1 パーティションが 200GB から 400GB に拡張されました。

次にファイルシステムの拡張を xfs_growfs コマンドで行います。

ファイルシステムの拡張も完了したので、最後に df コマンドで確認してみます。

これで OS 側の拡張も完了です。

注意点

注意点としてはファイルシステムによって、パーティション拡張コマンドが異なることです。

  • xfs_growfs : XFS
  • resize2fs : ext2・ext3・ext4

CentOS7 以上ですとファイルシステムが XFS ですので上記手順の xfs_growfs コマンドで問題ないですが、CentOS6 以下をお使いの方は resize2fs コマンドを使っていただければと思います。

最後に

今回は EC2 インスタンスの EBS ボリュームを拡張してみましたが、オンラインでできたのは良かったです。

EBS ボリュームの拡張時間としては 200GB 増やして 5〜6時間 ほどでした。
その間パフォーマンスが劣化するとのことだったので、実施タイミングだけ気をつけたいです。

また EBS を拡張すると、EBS ボリューム分のコストが発生する点も気にしておきたいですね。

エンジニア募集中

Wedding Parkでは一緒に技術のウエディングパークを創っていくエンジニアを募集しています。
興味のある方はぜひ一度気軽に話を聞いてみてください。
株式会社ウエディングパークwantedly

Pocket

Join Us !

ウエディングパークでは、一緒に働く仲間を募集しています!
ご興味ある方は、お気軽にお問合せください(カジュアル面談から可)

採用情報を見る