EBSがオンラインで拡張、タイプ変更、IOPSの変更ができるようになりました。

AWS運用自動化サービス「Cloud Automator」
この記事は1年以上前に書かれたものです。
内容が古い可能性がありますのでご注意ください。

立春が過ぎてもまだまだ寒い日が続きますがみなさまいかがお過ごしでしょうか。

技術4課の酒井です。

本日、EBSに非常に便利な新機能がリリースされましたので速報でお伝えします。

新機能でできること

新機能を利用してできることは以下の3つです。

  • EBSのボリューム拡張
  • EBSタイプの変更
  • IOPSの変更

これまでこれらのことを行う場合はスナップショットを取得しそのスナップショットからボリュームを再作成しインスタンスに付け替える必要がありました。

そのためどうしてもダウンタイムが発生する作業でした。

これからはこの機能を利用することでオンラインで行えるようになります。

変更方法

変更方法はとても簡単で、マネジメントコンソールでEBSの一覧から拡張したいボリュームを選択肢ActionsからModify Volumeを選択します。


すると設定画面が表示されます。


その画面で Volume TypeSize,IOPSの項目の数値を変更しModifyをクリックすると確認画面が開始されます。


Yesをクリックすると変更が開始されます。

また、AWS CLIでも変更可能でaws ec2 modify-volume --volume-id {volume-id}の後にサイズを変更する場合は --size オプション、タイプ変更する場合は--volume-typeオプション、iopsを変更する場合は--iopsオプションを利用しそれぞれ変更後の値を入力することで変更が実施されます。

例えばPIOPS の100GiBのIOPSが1000のボリュームに変更したい場合は以下のようなコマンドを実行します。



また、全体的な注意点やそれぞれ個別の動きについて調べてみました。

全体的な注意点

全体的な注意点としては以下の2つがあります。



* マグネティック(standard)には未対応。

EBSタイプの変更の項目でアレ?っと思った方鋭いですね。

残念ながらマグネティックについてはタイプ変更や容量の拡張はいまのところできません。

そのためマグネティックから変更が必要な場合は従来同様スナップショットからボリュームを作成し付け替える必要があります。

  • 一度変更したボリュームは6時間経過しないと再度変更できない

    容量の拡張やタイプの変更、IOPSの変更を一度行うと6時間は変更できません。

    短期間に何度も変更することはできませんのでその点に注意して変更後のパラメータを見積もる必要があります。

    また容量を変更した後に今度はEBSのタイプ変更などもできませんので複数の項目を変更したい場合は同時に実行する必要があります


EBSのボリューム拡張の検証

EBSボリュームのサイズをオンラインで1GiB単位で拡張することが可能です。

これにより利用していくなかでデータが増加していった場合でも無停止で拡張可能です。



ボリュームの拡張実行後、長くても数分後にはOS上で拡張した値を確認することができます。



ただし、拡張した領域をOSが利用するためにはSSHやRDPなどでOSにログインし、パーティションの拡張やファイルシステムを拡張する必要があります。



例えばAmazonLinuxではgrowpartコマンドでパーティションを拡張しresize2fsコマンドでファイルシステムを拡張することが可能です。

ご利用されているOS、パーティションテーブルの形式、ファイルシステムによって拡張方法はことなるためどのような方法で拡張すれば良いのか事前に調査の上作業を実施しましょう。



また、ボリュームサイズは拡張のみ可能で縮小はできません。

ですので設計の時に大きく見積もって実際の使用状況を見て小さくするようなことはできませんので設計時にも注意が必要です。

EBSタイプの変更での注意点

汎用SSD(gp2)、PIOPS(io1)、スループット最適化 HDD(st1)、Cold HDD(sc1)からそれぞれ

汎用SSD(gp2)、PIOPS(io1)、スループット最適化 HDD(st1)、Cold HDD(sc1)のディスクタイプに変更が可能です。



全体的な注意点でもあったようにマグネティックからの変更やマグネティックへの変更はできませんのでご注意ください。



また、st1、sc1については最低容量が500GiBとなっておりgp2、io1からst1、sc1に変更する場合同時に500GiB以上の容量に変更する必要があるのでご注意ください。

IOPSの変更の検証

プロビジョンド IOPS(io1)タイプではIOPSの値も変更可能です。

こちらについては増やすだけでなく減らすこともできます。



注意点としてはドキュメントにも記載がある通りIOPSの変更についてはボリュームサイズよっては反映までに時間がかかることがあります。

変更した設定が有効になるまでに最大で24時間かかる場合もありますのでご注意ください。

まとめ

これまではEBSの変更作業はメンテナンスウィンドウを設けてダウンタイムの発生する作業でした。

これからはダウンタイムが発生せずに作業できることで状況に合わせて素早い変更が可能になります。



これらの機能をうまく利用してより変化する状況の中最適な環境へ整備していきたいですね。

AWS運用自動化サービス「Cloud Automator」