Amazon Web Services ブログ
C2 の汎用 SSD (gp2) ボリュームの新しいバーストバランスメトリックス
AWS ユーザーの多くが、2014 年の中半期にリリースした汎用 SSD (gp2) EBS ボリュームを使用して素晴らしい成果を得ています (詳しくは New SSD-Backed Elastic Block Storage をご覧ください。ご自分のワークロードでどのタイプのボリュームを使用すべきか決めかねている場合は、幅広い種類のデータベース、開発とテスト、ブートボリュームのワークロードにわたり価格とパフォーマンスのバランスが取れている gp2 をお勧めします。このボリュームタイプで興味深いポイントの 1 つはバースト機能です。gp2 のバースト機能は AWS の顧客ベースを観察し、実社会におけるワークロードの I/O パターンに合わせて設計されました。AWS のデータサイエンティスト達は、ボリューム I/O は非常にバースト性が高く短時間で急上昇し、バースト間には十分なアイドル時間があることに気付きました。予測不可能でバースト性を持つトラフィックの性質が gp2 バーストバケットを設計した理由です。小さなボリュームでも 3000 IOPS までのバーストを可能にするほか、アイドル時間中または低レベルで I/O を実行している場合にバーストバケットを補充できるようにすることができます。バーストバケットの設計はすべての gp2 ユーザーに一貫性のある予測可能なパフォーマンスを提供します。実際には gp2 ボリュームが完全にバーストバケットを消耗することは非常に少なく、ユーザーは使用パターンをトラッキングし必要に応じて調整できるようになりました。さまざまなボリュームタイプのパフォーマンス最適化と、ベンチマークと実際のワークロードの違いに関するドキュメントはすでに提供済みです (詳しくは I/O Characteristics をご覧ください)。最初のブログ投稿で説明したように、バーストクレジットは設定済み GB/秒ごとに 3 倍の割合で蓄積し、読み取りまたは書き込み 1 回ごとに 1 つ使用されるようになっています。各ボリュームは 540 万クレジットまで蓄積することができ、ボリュームごとに 3,000 クレジット/秒の割合で使用することができます。使用を開始するには希望するサイズの gp2 ボリュームを作成し、アプリケーションを起動します。ボリュームの I/O は可能な限り迅速かつ効率的に作業を進めます。
新しいメトリックスは本日よりご利用いただけます。バーストバランスメトリックスは各汎用 (SSD) ボリュームで使用可能です。このメトリックスは CloudWatch コンソールで確認することができます。残りが少なくなるとアラームを発信するように設定することも可能です。このメトリックスはパーセントで表示されます。つまり 100% はボリュームが蓄積できるクレジット最大数に到達していることを意味します。この例では c4.8xlarge インスタンスを起動し 100 GB ボリュームをアタッチしました。
次にボリュームのバーストバランスが 40% 以下になった場合に通知を送信するよう、アラームを作成します (実際にはこの数値を大幅に下げることをお勧めしますが、バランスを低下させるには結構な時間がかかるので、ここではこの数値で設定しました)。
SNS サブスクリプションを確認し fio
を実行してロードを生成します。
$ sudo fio --filename=/dev/sdb --rw=randread --bs=16k --runtime=2400 --time_based=1 \
--iodepth=32 --ioengine=libaio --direct=1 --name=gp2-16kb-burst-bucket-test
バランスが低下していくのを観察します。
予想通り通知メールが届きました。
本稼働の状況ではボリュームのサイズを上昇させたり、アプリケーションの I/O の動作を細かく設定したり、バーストバケットをうまく活用していることをメモすることもできます。テスト終了後はランチを取りながらバーストバランスが上昇するのを観察しました (今回は更新済みの CloudWatch コンソールを使用しました)。
稀ではありますが、バーストバケットの消耗が予想以上に早いという場合は、gp2 ボリュームのサイズを上げてパフォーマンスを高めるか、99.9% の確率で一貫性を持つプロビジョンドパフォーマンスを提供するプロビジョンド IOPS SSD (io1) ボリュームに移行することもできます。
今すぐ利用可能
この機能は今すぐすべての AWS 商用リージョンでご利用いただけます。追加費用はありません。CloudWatch アラームには通常の料金が適用されます。
— Jeff;
PS – このようなシステムを構築してみたいという開発者、開発マネージャー、プロダクトマネージャーの方は EBS Jobs ページをご覧ください。