Amazon Managed Service for Prometheus を利用すべき理由
Amazon Managed Service for Prometheus では、前払い料金などの義務はありません。取り込まれたメトリクス、クエリされたメトリクス、保存されたメトリクス、収集されたメトリクスに基づき、実際に使用した分のみをお支払いいただきます。その月に使用した分のみ、月末にお支払いいただきます。
Amazon Managed Service for Prometheus の一般提供が開始されました。収集されたメトリクス、取り込まれたメトリクス、保存されたメトリクス、クエリの使用量について課金されます。お客様には、以下の価格表に従って請求が行われます。
AWS 料金計算ツール
Amazon Managed Service for Prometheus の費用を一回の見積もりで算出できます。
料金
Amazon Managed Service for Prometheus では、Prometheus と互換性のあるセキュアなエンドポイントに取り込んだ各メトリクスサンプルがカウントされます。また Amazon Managed Service for Prometheus では、保存されたメトリクスサンプルとメトリクスメタデータをギガバイト (GB) 単位で算出できます。1 GB は 230 バイトです。ストレージ料金は、Prometheus のメトリクスサンプル (通常は 1 バイトまたは 2 バイト) およびメタデータによって決定します。Prometheus メトリクスメタデータのサイズは、メトリクスの名前とそれに関連するラベル (キーと値のペア) によって異なります。 取り込まれるメトリクス、および保存されるメトリクスの料金は時間単位で案分され、Amazon Managed Service for Prometheus にメトリクスを送信したときにのみ請求されます。なお、AMP のデータ転送 IN 料金は無料です。
Amazon Managed Service for Prometheus では、すべての QueryMetric API リクエストからのクエリにより処理されるサンプル数 (QSP) が測定されます。QSP は、特定の時間範囲に Prometheus クエリ言語 (PromQL) を使用してクエリされたデータポイントの総数です。
Amazon Managed Service for Prometheus コレクターの場合、電源がオンになっている時間数と収集されたサンプル数に対して課金されます。
Amazon 仮想プライベートクラウド (VPC) または VPC ピアリングと Amazon Managed Service for Prometheus を併用する場合は、Amazon Elastic Compute Cloud (EC2) のオンデマンド料金のページで説明されているように、追加料金が発生します。
別途記載がない限り、表示されている料金には適用される税および関税 (VAT、GST、適用される消費税を含む) は含まれません。
AWS 無料利用枠
AWS 無料利用枠の一部として、サポートされている AWS リージョン内で Amazon Managed Service for Prometheus を無料で開始できます。無料利用枠のお客様には以下の特典があります。
取り込まれるメトリクスサンプル | 4,000 万 |
クエリにより処理されるサンプル | 2000 億 |
保存されるメトリクス | 10 GB |
AWS 無料利用枠についての詳細はこちらを確認してください。
料金の例
注: ここで示す料金の値は一例です。
例 1 - EC2 および Kubernetes での Amazon Elastic Kubernetes Service (EKS)
この例では、10 ノードの 1 つの Kubernetes クラスターをモニタリングするとします。また、1 か月間 (744 時間) にわたり 30 秒ごとに1 ノードあたり 1,000 個の Prometheus メトリクスが収集されるとします。 この例では、AWS 無料利用枠のメリットは考慮されていません。1) メトリクスサンプルの取り込み、2) ストレージ、3) クエリについて、以下の使用量と料金が算出されます。
メトリクスサンプルの取り込みによる使用量と料金
まず、取り込まれるメトリクスサンプルの数とこれらのサンプルの料金を計算します。取り込まれる月間のサンプル数は、8 億 9,280 万サンプル (10 ノード * 1 ノードあたり 1,000 メトリクス / 30 秒ごとの収集間隔 * 3,600 秒 (1 時間) * 744 時間 (1 か月) = 10 * 1000/30 * 3,600 * 744 = 8 億9,280 万サンプル) です。
メトリクスの取り込みにかかる月額料金は、80.93 USD (0.90 USD/1,000 万 (最初の 20 億のメトリクスサンプル) x 8 億 9,280 万サンプル) です。
ストレージの使用量と料金
次に、ストレージを GB 単位で計算します。また、保存されるメトリクスサンプルとメトリクスメタデータの料金を計算します。この例では、メトリクスごとに 20 個のラベルがあり、ラベルごとに固有のラベル値が 100 個あるとします。メトリクス名、ラベル、ラベル値を含むメタデータは、毎日保存されます。また、ラベルとラベル値ごとに平均 30 バイト、取り込まれるメトリクスサンプルあたり 2 バイトであると仮定します。
月間ストレージは、0.25 GB (メトリクスメタデータ x 日数/月) + (2 バイト x メトリクスサンプルの数 = (1,000 メトリクス x 20 ラベル x ラベル値 100 x 30 バイト x 30 日/月) + (2 バイト x 8 億 9,280 万サンプル) = 18 億バイト + 17 億 8,560 万バイト = 35 億 8,560 万バイト = 3.34 GB) です。
ストレージの料金は 0.10 USD (0.03 USD/GB x 3.34 GB) です。
クエリの使用量と料金
次に、この例におけるクエリにより処理されるサンプル数とクエリの料金を計算します。1 人のエンドユーザーが 1 日平均 2 時間ダッシュボードをモニタリングするとします。また、60 秒ごとにダッシュボードを更新し、1 つのダッシュボードあたり 20 個のチャートウィジェットがあるとします (1 つのウィジェットごとに 1 つの PromQL クエリを想定)。この例では、クエリにより処理されるサンプル数はクエリごとに 100,000 とします。
まず、1 か月あたりのクエリの数を計算することから始めます。この値は、72,000 (エンドユーザー 1 人 x チャート 20 個 x ダッシュボードの表示 2 時間 x 3,600 秒 (1 時間) / 1 回のダッシュボード更新あたり 60 秒 x 30 日/月) です。
次に、1 か月あたりのクエリにより処理されるサンプル数を計算します。この値は、72 億 (72,000 クエリ x 100,000/クエリ) です。
これで、クエリの料金を計算できます。この値は 0.72 USD (0.10 USD/10 億サンプル x 処理される 72 億サンプル) です。
これで、この例における月額料金を計算できます。
- メトリクスの取り込みによるコスト: 80.93 USD (90 USD/1,000 万 x 8 億 9,280 万サンプル)
- ストレージのコスト: 0.10 USD (0.03 USD/GB x 3.34 GB)
- クエリのコスト: 0.72 USD (0.10 USD/10 億サンプル x 処理される 72 億サンプル)
月額料金の合計 = 80.93 USD (メトリクスの取り込み) + 0.10 USD (ストレージ) + 0.72 USD (クエリ) = 81.75 USD
例 2 - プロメテウス用アマゾンマネージドサービスを使用して Amazon Elastic Kubernetes サービス (EKS) からプロメテウスメトリックスを収集する
この例では、10 ノードを持つ 1 つの Kubernetes クラスターを、Amazon Managed Service for Prometheus コレクターによってノードごとに 1000 個の Prometheus メトリクスを 30 秒ごとに収集し、1 ヶ月間 (744 時間) 監視しています。以下の使用量とコストが計算されます。1) メトリックスサンプルの取り込み、2) ストレージ、3) Amazon Managed Service for Prometheus コレクターサンプルの収集と収集時間。
メトリクスサンプルの取り込みによる使用量と料金
まず、取り込まれるメトリクスサンプルの数とこれらのサンプルの料金を計算します。取り込まれる月間のサンプル数は、8 億 9,280 万サンプル (10 ノード x 1 ノードあたり 1,000 メトリクス / 30 秒ごとの収集間隔 x 3,600 秒 (1 時間) x 744 時間 (1 か月) = 10 x 100/60 x 3,600 x 744 = 8 億9,280 万サンプル) です。
メトリクスの取り込みにかかる月額料金は、80.93 USD (0.90 USD/1,000 万 (最初の 20 億のメトリクスサンプル) x 8 億 9,280 万サンプル) です。
ストレージの使用量と料金
次に、ストレージを GB 単位で計算します。また、保存されるメトリクスサンプルとメトリクスメタデータの料金を計算します。この例では、メトリクスごとに 20 個のラベルがあり、ラベルごとに固有のラベル値が 100 個あるとします。メトリクス名、ラベル、ラベル値を含むメタデータは、毎日保存されます。また、ラベルとラベル値ごとに平均 30 バイト、取り込まれるメトリクスサンプルあたり 2 バイトであると仮定します。
月間ストレージは、0.25 GB (メトリクスメタデータ x 日数/月) + (2 バイト x メトリクスサンプルの数 = (1,000 メトリクス x 20 ラベル x ラベル値 100 x 30 バイト x 30 日/月) + (2 バイト x 8 億 9,280 万サンプル) = 18 億バイト + 17 億 8,560 万バイト = 35 億 8,560 万バイト = 3.34 GB) です。
ストレージの料金は 0.10 USD (0.03 USD/GB x 3.34 GB) です。
採取したサンプルと採取時間の費用
第三に、コレクター時間のコストを計算します。エージェントレスコレクターのコストは、コレクター時間あたり 0.04 USD、収集された 1,000 万サンプルあたり 0.03 USD です。1 つの EKS クラスターには 1 つのコレクターがあると想定しています。1 か月に 744 時間を費やすと仮定すると、1 x 0.04 USD x 744 USD + 0.03 USD * 8億9,280 万サンプル/1,000 万 = 32.44 USD になります。
エージェントレスコレクターの料金は 32.44 USD です。
これで、この例における月額料金を計算できます。
- メトリクスの取り込みによるコスト: 80.93 USD (90 USD/1,000 万 x 8 億 9,280 万サンプル)
- ストレージのコスト: 0.10 USD (0.03 USD/GB x 3.34 GB)
- エージェントレスコレクターのコスト: 32.44 USD (コレクター時間あたり0.04 USD x 744 時間+ 0.03 USD* 8 億 9,280 万サンプル/1,000 万)
総コスト: 113.47 USD
例 3 - クエリにより処理されるサンプル数 (QSP) と料金の計算
この例では、過去 1 時間の 10,000 ノードの CPU を計算するクエリを実行します。また、それらのノードの 1 つが CPU 容量の 80% を超えたときに通知を行うアラートルールを 1 分ごとに実行します。この例では、AWS 無料利用枠のメリットは考慮されていません。クエリとアラートルールを実行する際の使用量とコストを計算します。
クエリの使用状況と料金
まず、メトリクスの時系列の数と指定された時間範囲を特定して、1 つのクエリが処理するサンプルの数を計算します。メトリクスの時系列は、メトリクス名およびキーと値のペアで識別されます。この例では、各ノードに 1 つの CPU メトリクスがあり、その結果、クエリは 1 時間の時間範囲で 10,000 の時系列を処理します。Prometheus クエリは、解決手順ごとに 1 つのサンプルを処理します。これは、2 つのデータポイント間の最小時間です。例えば 1 分間の手順で、時間範囲で 1 分あたり 1 サンプルをとします。これは、時系列 10,000 件 x 1 時間 x 1 サンプル/分 x 60 分/時間 = 600,000 サンプル/クエリです。
クエリを 1,000 回実行したとすると、料金は 0.06 USD (0.10 USD/処理される 10 億サンプル x 600,000 サンプル x 1,000 クエリ) になります。
アラートルールの使用量と料金
選択したメトリクス時系列の数を特定することにより、評価ごとにルールにより処理されるサンプルの数を計算します。ルールはノードごとに 1 つの CPU メトリクス時系列を特定するため、評価ごとに 10,000 の時系列を処理します。Prometheus のアラートルールは、ある時点で評価されるクエリであるインスタントクエリとして実行されます。したがって、このアラートルールは、時系列 10,000 件 x 1 サンプル/時系列 = 10,000 サンプルを評価します。このアラームは 1 分ごとに実行されるため、このアラートルールは 10,000 サンプル x 60 分/時間 x 730 時間/月 = 1 か月あたり 438,000,000 サンプルを処理します。
このアラートルールのコストは、1 か月あたり 0.04 USD (0.10 USD/処理される 10 億サンプル * 4 億 3,800 万サンプル) です。