VPC 接続マネージドコレクター
VPC 接続 Amazon CloudWatch マネージド Prometheus コレクターは、Amazon EC2 インスタンスや Amazon ECS タスクなど、VPC 内で到達可能な任意のリソースから Prometheus 互換メトリクスをスクレイプします。サブネットとセキュリティグループを提供すると、コレクターは Elastic Network Interface (ENI) を作成し、設定に従って Prometheus /metrics エンドポイントをスクレイプします。
ワークロードに特化した詳細なチュートリアルについては、Prometheus メトリクス収集用の CloudWatch オブザーバビリティソリューション (Amazon CloudWatch ソリューション: Amazon EC2 での Prometheus メトリクス収集 および Amazon CloudWatch ソリューション: Amazon ECS での Prometheus メトリクス収集) を参照してください。
前提条件
この手順では、Amazon VPC サブネット、セキュリティグループ、および Prometheus エクスポーターエンドポイントに関する知識があることを前提としています。
-
DNS が有効な Amazon VPC
-
異なるアベイラビリティーゾーンにある少なくとも 2 つのサブネット
-
コレクターがターゲットエクスポーターポートに到達できるようにするセキュリティグループ
-
Prometheus 互換の
/metricsエンドポイントを公開するターゲット
コレクターは、パブリックインターネットを経由せず、スクレイプしたメトリクスを AWS ネットワークを介して CloudWatch に配信します。指定したサブネットとセキュリティグループは、スクレイプターゲットへの接続性を提供しますが、CloudWatch への配信パスは提供しません。メトリクス配信のために、VPC 内のインターネットアクセス、NAT ゲートウェイ、または CloudWatch インターフェイス VPC エンドポイントを構成する必要はありません。
スクレイパーの作成
GetDefaultScraperConfiguration を使用して、汎用スクレーパー設定を取得するか、独自のものを提供できます。
Amazon EC2 からのメトリクス収集
DCGM Exporter や Node Exporter などの Prometheus エクスポーターを実行している Amazon EC2 インスタンスからメトリクスをスクレイプするには、インスタンスのプライベート IP アドレスとともに static_configs を使用します:
global: scrape_interval: 60s scrape_configs: - job_name: 'ec2-node-exporter' static_configs: - targets: - '10.0.1.10:9100' - '10.0.1.11:9100' relabel_configs: - source_labels: [__address__] target_label: instance - target_label: compute_platform replacement: 'ec2' - job_name: 'ec2-dcgm-exporter' static_configs: - targets: - '10.0.1.10:9400' - '10.0.1.11:9400' relabel_configs: - source_labels: [__address__] target_label: instance - target_label: compute_platform replacement: 'ec2'
Amazon ECS からのメトリクス収集
AWS Cloud Map に登録する Amazon ECS タスクの場合は、DNS サービス検出を使用して、コンテナを自動的に検出およびスクレイプします:
global: scrape_interval: 60s scrape_configs: - job_name: 'ecs-services' dns_sd_configs: - names: - 'my-service.my-namespace.local' type: A port: 9090 relabel_configs: - source_labels: [__meta_dns_name] target_label: service_name - source_labels: [__address__] target_label: instance - target_label: compute_platform replacement: 'ecs'
クロス アカウント オブザーバビリティ
クロスアカウントの VPC モニタリングでは、Amazon CloudWatch メトリクスの一元化を使用することをお勧めします。詳細については、「CloudWatch メトリクスの一元化」を参照してください。
代替のクロスアカウンタースクレイパー設定については、Amazon Managed Service for Prometheus ユーザーガイドの「クロスアカウンタースクレイパー」を参照してください。
セキュリティのベストプラクティス
-
コレクター ENI には、直接インターネットアクセスを持たないプライベートサブネットを指定します。
-
セキュリティグループのイングレスを、特定のエクスポーターポート上のスクレイパーセキュリティグループのみに制限します。
-
可能な限り、すべてのエクスポーターエンドポイントで転送中の TLS 暗号化を有効にします。