Amazon Elastic Compute Cloud
Windows インスタンス用ユーザーガイド

Windows インスタンスの Amazon EBS ボリュームのパフォーマンス

Amazon EBS のパフォーマンスは、I/O 特性やインスタンスとボリュームの設定などを含むいくつかの要因に左右されます。一般的に、Amazon EBS 製品および Amazon EC2 製品の詳細ページに記載されているガイダンスに従うだけで、良好なパフォーマンスを実現することができます。ただし、そのプラットフォームにおけるピークパフォーマンスを達成するには、多少のチューニングを行う必要のあるケースもあります。このトピックでは、一般的なベストプラクティスや、特定のユースケースに固有のパフォーマンスチューニングについて説明します。最適な設定を決定するには、ベンチマークに加えて、実際のワークロードからの情報でパフォーマンスをチューニングすることをお勧めします。EBS ボリュームの基本操作について理解したら、必要とする I/O パフォーマンスと、Amazon EBS パフォーマンスを向上させるオプションを確認し、そのパフォーマンス要件に対応できるようにすることをお勧めします。

注記

AWS が EBS ボリュームタイプのパフォーマンスを更新しても、既存のボリュームにすぐには反映されない場合があります。古いボリュームで完全なパフォーマンスを確認するためには、最初に ModifyVolume アクションの実行が必要になる場合があります。詳細については、「Windows の EBS ボリュームのサイズ、IOPS、またはタイプの変更」を参照してください。

Amazon EBS パフォーマンスのヒント

ここに示すヒントは、さまざまなユーザーシナリオで、EBS ボリュームから最適なパフォーマンスを得るためのベストプラクティスを表しています。

EBS 最適化インスタンスを使用する

EBS 最適化スループットがサポートされていないインスタンスでは、インスタンスと EBS ボリュームの間のトラフィックが、ネットワークトラフィックと競合する場合があります。EBS 最適化インスタンスでは、これら 2 種類のトラフィックを分離した状態が維持されます。EBS 最適化インスタンスの設定によっては、追加コストが発生する場合 (C3、R3、M3 など) と、追加コストなしで常に EBS 最適化状態になる場合 (M4、C4、C5、D2 など) があります。詳細については、「Amazon EC2 インスタンスの構成」を参照してください。

パフォーマンスの計算方法を理解する

EBS ボリュームのパフォーマンスを測定する場合、関連する測定単位と、パフォーマンスの計算方法を理解することが重要です。詳細については、「I/O の特性とモニタリング」を参照してください。

ワークロードを理解する

EBS ボリュームの最大パフォーマンス、I/O 操作の数およびサイズ、各アクションが完了するまでの所要時間は、互いに関連しています。これらの各要因 (パフォーマンス、I/O、レイテンシー) は相互に影響を与えます。また、アプリケーションが異なると、影響を受ける要因もさまざまに異なります。

スナップショットからボリュームを初期化する際のパフォーマンス低下を理解する

スナップショットから復元された新しい EBS ボリュームの各データブロックに初めてアクセスするときには、レイテンシーが著しく増加します。本稼働環境にボリュームを配置する前に、各ブロックにアクセスすることによって、このパフォーマンスヒットを回避できます。このプロセスは、初期化と呼ばれます (以前は事前ウォーミングと呼ばれていました)。詳細については、「Amazon EBS ボリュームの初期化」を参照してください。

HDD パフォーマンスが低下する要因

スループット最適化 HDD (st1) ボリュームまたは Cold HDD (sc1) ボリュームのスナップショットを作成すると、スナップショットの進行中はボリュームのベースライン値までパフォーマンスが低下します。この動作は、これらのボリュームタイプに固有です。パフォーマンスが制限される他の要因としては、インスタンスでのサポート範囲を超えるスループットの強要、スナップショットから復元したボリュームの初期化中のパフォーマンス低下、ボリュームに対する大量の小さなランダム I/O などがあります。HDD ボリュームのスループットを計算する方法については、「Amazon EBS ボリュームの種類」を参照してください。

アプリケーションから送られる I/O リクエスト数が十分でない場合も、パフォーマンスに影響します。これは、ボリュームのキュー長や I/O サイズを確認することで監視できます。このキュー長とは、アプリケーションからボリュームへの I/O リクエストのうち処理待ちのものの数です。最大限の安定性を確保するために、HDD-Backed ボリュームで 1 MiB のシーケンシャル I/O を実行する際には、キュー長 (整数に四捨五入) を 4 以上に保つ必要があります。ボリュームの安定したパフォーマンスを確保する方法については、「I/O の特性とモニタリング」を参照してください。

RAID 0 を使用してインスタンスのリソース使用率を最大化する

一部のインスタンスタイプでは、単一の EBS ボリュームをプロビジョニングする場合よりも I/O スループットを増やすことができます。複数の gp2io1st1、または sc1 ボリュームを RAID 0 設定で結合し、これらのインスタンス用の利用可能な帯域幅を使用できます。詳細については、「Windows での RAID 構成」を参照してください。

Amazon CloudWatch を使用してパフォーマンスを追跡する

Amazon Web Services は、Amazon CloudWatch による分析と表示が可能な Amazon EBS のパフォーマンスメトリクスと、ボリュームの健全性の監視に使用できるステータスチェックを提供します。詳細については、「ボリュームのステータスのモニタリング」を参照してください。