Amazon EKS の統合
Amazon CloudWatch マネージド Prometheus コレクターは、Prometheus と互換性のあるメトリクスをスクレイピングします。Prometheus 互換メトリクスの詳細については、「Prometheus 互換メトリクスとは何か?」を参照してください。Amazon EKS クラスターは、API サーバーのメトリクスを公開します。Kubernetes バージョン 1.28 以降の Amazon EKS クラスターは、kube-scheduler および kube-controller-manager のメトリクスも公開します。詳細については、「Amazon EKS ユーザーガイド」の「コントロールプレーンの未加工メトリクスを Prometheus 形式で取得する」を参照してください。
Amazon Managed Service for Prometheus ユーザーガイドに、詳細なセットアップ手順が記載されています。Amazon EKS クラスター、アクセスエントリ、および ConfigMap のセットアップの手順については、「Amazon EKS 用のマネージドコレクターのセットアップ」を参照してください。
コレクターは、各 Amazon EKS メトリクスを、その由来 (計装スコープ、AWS アカウントとリージョン、推定単位、クラスター名とクラスター ARN) を識別する属性で強化します。PromQL でメトリクスをクエリする際に、これらの属性でフィルタリングやグループ化を行うことができます。
CloudWatch 送信先を持つスクレイパーを作成する
GetDefaultScraperConfiguration を使用して、汎用スクレーパー設定を取得するか、独自のものを提供できます。
- AWS API
-
CreateScraper API オペレーションを使用して、CloudWatch 送信先を持つスクレーパーを作成します。AWS アカウント、セキュリティグループ、サブネット、Amazon EKS クラスター、およびデータセット情報を実際の値に置き換えます。
POST /scrapers HTTP/1.1
{
"alias": "eks-metrics-scraper",
"source": {
"eksConfiguration": {
"clusterArn": "arn:aws:eks:us-west-2:123456789012:cluster/my-cluster",
"securityGroupIds": ["sg-security-group-id"],
"subnetIds": ["subnet-subnet-id-1", "subnet-subnet-id-2"]
}
},
"destination": {
"cloudWatchConfiguration": {
"datasetArn": "arn:aws:cloudwatch:us-west-2:123456789012:dataset/default"
}
},
"scrapeConfiguration": {
"configurationBlob": "base64-encoded-blob"
}
}
- AWS CLI
-
create-scraper コマンドを使用して、CloudWatch 送信先を持つスクレーパーを作成します。AWS アカウント、セキュリティグループ、サブネット、Amazon EKS クラスター、およびデータセット情報を実際の値に置き換えます。
aws amp create-scraper \
--alias "eks-metrics-scraper" \
--source eksConfiguration="{clusterArn='arn:aws:eks:us-west-2:123456789012:cluster/my-cluster', \
securityGroupIds=['sg-security-group-id'], \
subnetIds=['subnet-subnet-id-1','subnet-subnet-id-2']}" \
--scrape-configuration configurationBlob=$(cat eks-config.yaml | base64 -w 0) \
--destination cloudWatchConfiguration="{datasetArn='arn:aws:cloudwatch:us-west-2:123456789012:dataset/default'}"
自動ダッシュボードを表示する
コレクターが Amazon EKS メトリクスを CloudWatch に配信し始めると、CloudWatch コンソールには EKS OTel という名前の自動ダッシュボードが提供されます。それを開くには、EKS OTel を参照するか、AWS マネジメントコンソールにサインインし、CloudWatch コンソールを開き、ナビゲーションペインで [ダッシュボード] を選択し、[自動ダッシュボード] を選択してから、EKS OTel を選択します。ウィジェットやダッシュボードを自分で作成せずに、クラスターのモニタリングを開始できます。
自動ダッシュボードが要件を満たしている場合は、そのまま使用できます。カスタマイズしたモニタリングエクスペリエンスを構築するには、そのウィジェットのいずれかをカスタムダッシュボードに追加できます。カスタムダッシュボードの詳細については、「CloudWatch ダッシュボードの使用」を参照してください。
クロス アカウント オブザーバビリティ
クロスアカウントの Amazon EKS モニタリングでは、Amazon CloudWatch メトリクスの一元化を使用することをお勧めします。詳細については、「CloudWatch メトリクスの一元化」を参照してください。
代替のクロスアカウンタースクレイパー設定については、Amazon Managed Service for Prometheus ユーザーガイドの「クロスアカウンタースクレイパー」を参照してください。