EC2 インスタンスの EBS スループットを示すメトリクスを Amazon CloudWatch から取得し、EC2 インスタンスがそのスループット制限に達したときに通知するようアラームをセットアップするにはどうすればよいですか?

所要時間1分
0

Amazon Elastic Compute Cloud (Amazon EC2) インスタンスの集計 Amazon Elastic Block Store (Amazon EBS) スループットを示すメトリクスを Amazon CloudWatch から取得する方法を教えてください。 また、EC2 インスタンスがスループット制限に達したとき、アラームで通知するように設定する方法を教えてください。

簡単な説明

CloudWatch に Xen をベースとした Amazon EC2 インスタンスの EBS スループットを追跡するネイティブの Amazon EBS メトリクスはありません。ただし、EC2EBSThroughput/ebs-stats.sh スクリプトを使用して、EC2 インスタンスの集計 EBS スループットを測定することは可能です。

このスクリプトは、接続されているすべてのボリュームの 1 秒あたりの合計読み取り/書き込みバイト数を収集し、スループットをメトリクスとして Amazon CloudWatch にプッシュします。Amazon CloudWatch コンソールでメトリクスを表示し、指定したしきい値に基づいてトリガーされるアラームを設定できます。

注: Amazon EBS に最適化されたインスタンスバースト機能で構築された AWS Nitro ベースの EC2 インスタンスには、CloudWatch メトリクス EBSIOBalance%EBSByteBalance% が含まれます。これらのメトリクスは、少なくとも 24 時間に 1 回、30 分間バーストして最大のパフォーマンスを発揮する一部のインスタンスサイズで利用可能です。該当するインスタンスタイプの一覧については、「サポートしているインスタンスタイプ」を参照してください。

ebs-stats.sh スクリプトは、CloudWatch の Xen ベースの EC2 インスタンス用です。このスクリプトは、Amazon Linux、Red Hat Enterprise Linux、および CentOS インスタンスとのみ互換性があります。ただし、他の Linux ディストリビューション用にスクリプトをカスタマイズすることができます。

注: インスタンスにインスタンスストアボリュームがある場合、スクリプトはインスタンスストアボリュームのスループットを含む集計スループットをレポートします。つまり、このスクリプトから EBS のスループットを正確に測定できない可能性があります。

解決方法

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

1.    RHEL ベースのディストリビューションでは、AWS CLI をまだインストールしていない場合はインストールします。

2.    ebs-stats.sh スクリプトをダウンロードします。

3.    スクリプトをインスタンスに配置し、実行可能にします。スクリプトを root ユーザーまたは sudo として実行します。そうしない場合は失敗します。

$sudo chmod +x ebs-stats.sh

4.    AWS CLI から、バックグラウンドで次のコマンドを実行し、指定の ebs-stats.sh ランタイム頻度を設定します。

$sudo nohup ./ebs-stats.sh example-sleep-interval &

注意: example-sleep-interval を各データポイント間の指定の秒数に置き換えます。

5.    AWS Identity and Access Management (IAM) ロールを作成します

6.    次のポリシーをロールに添付します。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "cloudwatch:ListMetrics",
        "cloudwatch:GetMetricStatistics",
        "cloudwatch:PutMetricData",
        "autoscaling:DescribeAutoScalingInstances"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}

7.    EC2 インスタンスに IAM ポリシーを添付します。これにより、スクリプトはメトリクスを Amazon CloudWatch にプッシュできるようになります。

8.    CloudWatchコンソールから、 EBSThroughoutMB にアラームを設定します。詳細については、「静的しきい値に基づいて CloudWatch アラームを作成する」または「Amazon CloudWatch アラームの使用」をご参照ください。

使用した引数に基づいて、正しい期間を選択してください。


関連情報

CloudWatch を使用したインスタンスのモニタリング

インスタンスの利用可能な CloudWatch メトリクスのリスト表示

Amazon EBS - 最適化インスタンス

AWS公式
AWS公式更新しました 2年前
コメントはありません

関連するコンテンツ