

# CloudWatch を使用して Amazon ECS をモニタリングする
<a name="cloudwatch-metrics"></a>

Amazon CloudWatch を使用して Amazon ECS リソースモニタリングすることで、Amazon ECSからraw データを収集して、リアルタイムに近い読み取り可能なメトリクスに加工することができます。これらの統計情報は 2 週間単位で記録されるため、履歴情報にアクセスしてクラスターやサービスの動作をより的確に把握できます。Amazon ECS のメトリクスデータは 1 分間隔で自動的に CloudWatch に送信されます。CloudWatch の詳細については、「[Amazon CloudWatch ユーザーガイド](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/)」を参照してください。

Amazon ECS には、クラスターとサービスの無料メトリクスがあります。追加料金で、CPU、メモリ、EBS ファイルシステムの使用率など、タスクごとのメトリクスについて、クラスターに対して Amazon ECS CloudWatch Container Insights を有効にすることができます。コンテナインサイトの詳細については、[オブザーバビリティが強化された Container Insights を使用し、Amazon ECS コンテナを監視する](cloudwatch-container-insights.md)を参照してください。

## 考慮事項
<a name="enable_cloudwatch"></a>

Amazon ECS CloudWatch メトリクスを使用する際には、以下の点を考慮する必要があります。
+ Fargate でホストされるどの Amazon ECS サービスでも、CloudWatch の CPU とメモリの使用率メトリクスが自動的に備わっているため、手動の手順を踏む必要はありません。

  
+ Amazon EC2 インスタンスでホストされているどの Amazon ECS タスクまたはサービスでも、CloudWatch メトリクスを生成するために、Amazon EC2 インスタンスにコンテナエージェントのバージョン `1.4.0` 以降 (Linux) または `1.0.0` 以降 (Windows) が必要です。ただし、最新のコンテナエージェントのバージョンを使用することをお勧めします。エージェントのバージョンの確認と最新バージョンへの更新については、「[Amazon ECS コンテナエージェントをアップデートする](ecs-agent-update.md)」を参照してください。
+ 信頼性の高い CloudWatch メトリクスの最低 Docker バージョンは Docker `20.10.13` バージョン以降です。
+ Amazon EC2 インスタンスには、IAM ロールに Amazon EC2 インスタンスを起動するのに使用する `ecs:StartTelemetrySession` アクセス許可も必要です。CloudWatch メトリクスが Amazon ECS で使用可能になる前に Amazon ECS コンテナインスタンス IAM ロールを作成した場合は、このアクセス許可の追加が必要になる場合があります。コンテナインスタンス IAM ロールとコンテナインスタンスのマネージド IAM ポリシーのアタッチについては、「[Amazon ECS コンテナインスタンスの IAM ロール](instance_IAM_role.md)」を参照してください。
+ Amazon ECS コンテナエージェント設定で `ECS_DISABLE_METRICS=true` を設定することで、Amazon EC2 インスタンスでの CloudWatch メトリクス収集を無効にできます。詳細については、「[Amazon ECS コンテナエージェントの設定](ecs-agent-config.md)」を参照してください。

## 推奨メトリクス
<a name="best-practices-cloudwatch-metrics"></a>

Amazon ECS には、リソースをモニタリングするのに使用できる無料 CloudWatch メトリクスが用意されています。このメトリクスを使用して、クラスター全体の CPU とメモリの予約率と CPU、メモリ、EBS ファイルシステムの使用率、およびクラスター内のサービスの CPU、メモリ、EBS ファイルシステムの使用率を測定できます。GPU のワークロードについては、クラスター全体の GPU 予約率を測定できます。

Amazon ECS タスクがクラスターでホストされているインフラストラクチャによって、利用可能なメトリクスが決まります。Fargate インフラストラクチャでホストされているタスクでは、サービスのモニタリングを支援するために、Amazon ECS より CPU、メモリ、EBS ファイルシステムの使用率メトリクスが提供されます。EC2 インスタンスでホストされるタスクでは、CPU、メモリ、GPU の予約率メトリクス、および CPU とメモリの使用率メトリクスが、クラスターおよびサービスレベルで Amazon ECS により提供されます。基盤となるインフラストラクチャを構成する Amazon EC2 インスタンスを個別にモニタリングする必要があります。Amazon EC2 インスタンスのモニタリングの詳細については、「*Amazon EC2 ユーザーガイド*」の「[Amazon EC2 のモニタリング](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring_ec2.html)」を参照してください。

Amazon ECS で使用する推奨アラームについては、「*Amazon CloudWatch Logs ユーザーガイド*」にある以下のいずれかを参照してください。
+ [Amazon ECS](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Best_Practice_Recommended_Alarms_AWS_Services.html#ECS)
+ [Container Insights を使用する Amazon ECS](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Best_Practice_Recommended_Alarms_AWS_Services.html#ECS-ContainerInsights)