CloudWatch メトリクスを使用して EC2 インスタンスの EBS ボリュームがスループットまたは IOPS の制限に達しているかどうかを確認する方法を教えてください。

所要時間2分
0

Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを持っています。EC2 インスタンスに接続されている 1 つまたはすべての Amazon Elastic Block Store (Amazon EBS) ボリュームの Amazon CloudWatch メトリクスを表示したいのですが、それも特定の期間のメトリクスだけにしたいと考えています。

簡単な説明

AWSSupport-CalculateEBSPerformanceMetrics オートメーションドキュメントでは、利用可能な CloudWatch メトリクスを使用して、さまざまな項目を計算および視覚化します。そういった項目としては、EBS ボリュームの総スループット、IOPS 数、IO サイズがあります。これらのタスクは、個々の EBS ボリュームに対して実行することも、インスタンスに接続されているすべての EBS ボリュームに対して実行することもできます。

オートメーションドキュメントは次のことを行います。

  • 特定の AWS リソース ID (EBS ボリューム ID または EC2 インスタンス) の CloudWatch メトリクスを取得する
  • 指定した期間のスループット、IOPS、および IO サイズを計算する
  • プロビジョニングされたリソース ID からメタデータを取得して、特定のスループットおよび IOPS 上限を計算する
  • CloudWatch ダッシュボードを作成し、そのダッシュボードへの URL を提供する

CloudWatch ダッシュボードに表示されるメトリクスはリアルタイムではなく、入力した時間範囲のメトリクスです。

注: このダッシュボードを作成すると、アカウントに追加料金が発生する可能性があります。詳細については、「CloudWatch 料金表」を参照してください。

解決方法

オートメーションを使用する前に

AWSSupport-CalculateEBSPerformanceMetrics オートメーションを実行する前に、以下を実行してください。

  1. 分析するリソースのボリューム ID またはインスタンス ID をコピーします。オートメーションドキュメントを実行するには、これらのいずれかのリソース ID が必要です。
  2. (オプション) オートメーション用の AWS Identity and Access Management (IAM) ロールを作成して指定します。このロールを指定しない場合、AWS Systems Manager Automation はこのドキュメントを実行するユーザーの許可を使用します。詳細については、「IAM を使用して、オートメーションのロールを設定する」を参照してください。

Systems Manager コンソールから AWSSupport-CalculateEBSPerformanceMetrics オートメーションを実行する

  1. Systems Manager コンソールで上記のオートメーションドキュメントを開きます。必ず、リソースが配置されているリージョンにある同名のドキュメントを開いてください。
  2. [オートメーションドキュメントの実行] セクションで、[シンプルな実行] を選択します。
  3. [入力パラメータ] セクションで、次のパラメータを入力します。 ResourceId - 分析したい EBS ボリュームまたは EC2 インスタンスの ID を入力します。[StartTime] - yyyy-mm-ddThh:mm:ss の形式で時刻 (UTC) を入力します (例: 2021-06-09T13:30:10)。EndTime - yyyy-mm-ddThh:mm:ss の形式で時刻 (UTC) を入力します (例: 2021-06-16T13:30:10)。Period - CloudWatch メトリクスの期間/分解能 (秒単位) のリストからオプションを選択します。AutomationAssumeRole - この実行に使用する IAM ロールを選択します。このステップはオプションです。
  4. [実行] を選択します。

最終的な出力は、新しく作成したダッシュボードにアクセスするための URL です。これは、[出力] フィールドを展開すると表示されます。ダッシュボードを使用して、分析されたメトリクスとその上限を確認できます。

AWS コマンドラインインターフェイス (AWS CLI) から AWSSupport-CalculateEBSPerformanceMetrics オートメーションを実行する

AWS CLI からこのオートメーションを実行するには、後述のコマンドを使用します。コマンドを実行する前に、必ず以下を変更してください。

  • [ResourceId] の値を、分析するリソース ID に置き換えます。
  • CloudWatch でデータを表示するには、StartTime の値を開始時刻に置き換えます (yyyy-mm-ddThh:mm:ss の形式 (UTC))。
  • CloudWatch でデータを表示するには、EndTIme の値を終了時間に置き換えます (yyyy-mm-ddThh: mm:ss の形式)(UTC))。
  • [Period] の値を CloudWatch メトリクスの期間/分解能 (秒単位) に置き換えます。値としては、 60、300、900、3600、21600、86400 のいずれかを指定できます。
  • AutomationAssumeRole の値 (この例では指定していません) を今回の実行用の IAM ロールに置き換えます。このステップはオプションです。
  • リージョン us-east-1 を、選択したリソースのリージョンに置き換えます。

注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、最新バージョンの AWS CLI バージョンを使用していることを確認してください

aws ssm start-automation-execution --document-name "AWSSupport-CalculateEBSPerformanceMetrics" --document-version "\$DEFAULT" --parameters '{"ResourceId":["i-xxxxxxxxxxxxxxxx"], "StartTime":["2021-06-09T13:30:10"], "EndTime":["2021-06-16T13:30:10"], "Period":["60"], "AutomationAssumeRole":[""]}' --region us-east-1

関連情報

Amazon EBS の Amazon CloudWatch メトリクス

コメントはありません

関連するコンテンツ