Amazon Managed Service for Prometheus (AMP) とは?
コンテナ環境、特に Kubernetes のモニタリングにおいて事実上の標準となっているのが Prometheus です。 しかし、大規模な Prometheus 環境を自前で運用・スケーリングさせるには多大な労力が必要です。
Amazon Managed Service for Prometheus (AMP) は、この課題を解決するための、AWS が提供するフルマネージドな Prometheus 互換モニタリングサービスです。
この記事では、AMP の特徴、メリット、そしてデータ収集のアーキテクチャについて解説します。
1. AMP の主な特徴
完全マネージド型 (Serverless)
AMP はサーバーレスアーキテクチャを採用しており、インフラの管理やパッチ適用などは一切不要です。 Prometheus サーバーのスケーリングやストレージの管理から解放され、モニタリングデータの分析に集中できます。
自動スケーリング
コンテナワークロードの増減に合わせて、インジェスト(取り込み)、ストレージ、クエリの容量が自動的に調整されます。 大規模なスパイクが発生しても、一貫したクエリ応答時間を維持するように設計されています。
高可用性と堅牢なセキュリティ
データは複数のアベイラビリティーゾーン (AZ) にまたがって複製され、高い可用性を実現しています。 また、VPC エンドポイントを介したセキュアな通信や、AWS IAM による認証・認可が統合されているため、セキュリティ要件の厳しいエンタープライズ環境でも安心して利用できます。
2. なぜ AMP を選ぶのか? (メリット)
自前で Prometheus を運用する場合と比較して、以下のようなメリットがあります。
- 運用負荷の削減: Prometheus サーバーの管理、TSDB のディスク容量管理、バックアップなどが不要になります。
- コスト効率: 実際に使用したメトリクスの取り込み量とストレージ、クエリ実行時間に基づく従量課金制です。大規模なクラスターを常時稼働させる必要がなくなります。
- 長期保存: デフォルトで 150 日間のデータ保持が可能で、最大で 1095日 (3年) まで拡張設定が可能です。
3. データ収集のアーキテクチャ (Ingest Methods)
AMP へのメトリクス送信(Ingest)には、主に2つの方法があります。
AWS Managed Collector (エージェントレス)
Amazon EKS クラスター向けに提供されている、完全マネージドなエージェントレススクレイパーです。
- クラスター内にエージェントをインストール・管理する必要がありません。
- EKS コンソールや API から簡単な設定を行うだけで、自動的にクラスター内の Prometheus 互換エンドポイントを検出し、メトリクスを収集して AMP に送信します。
Customer Managed Collector (自前管理)
従来通り、ユーザー自身が収集エージェントを管理する方法です。より細かい制御が必要な場合や、ECS/EC2 環境で使用されます。
- AWS Distro for OpenTelemetry (ADOT): AWS が推奨する収集方法の一つです。ADOT Collector をサイドカーやデーモンセットとして配置し、データを収集して AMP へ転送します。
- Prometheus Server (Agent Mode): 既存の Prometheus サーバーを Agent モードで動作させ、
remote_write機能を使ってデータを AMP に転送します。
4. 可視化とアラート
収集したデータは、Prometheus 互換のクエリ言語 PromQL を使って分析できます。
- 可視化: Amazon Managed Grafana (AMG) や、自前の Grafana サーバーからデータソースとして AMP を追加することで、ダッシュボードを作成できます。
- アラート: AMP 自体に「Alert Manager」の機能が統合されており、アラート・ルールを設定して SNS (Simple Notification Service) 等へ通知を送ることが可能です。
まとめ
Amazon Managed Service for Prometheus は、EKS を中心としたコンテナ環境の監視において、スケーラビリティと運用負荷の課題を解決する強力なソリューションです。 特に「Prometheus の運用に疲れた」「データ量が増えてサーバーが落ちる」といった課題をお持ちの場合は、移行を検討する価値が十分にあります。
AWS Distro for OpenTelemetry (ADOT) や Amazon Managed Grafana と組み合わせることで、AWS 上で最強のオープンソースベース監視基盤を構築できます。