すべてのプロダクト
Search
ドキュメントセンター

Cloud Monitor:HTTP API URL を使用して Prometheus インスタンスをセルフマネージド Grafana システムに接続する

最終更新日:Aug 30, 2025

Alibaba Cloud Managed Service for Prometheus は、HTTP API URL を提供します。 HTTP API URL を使用して、Prometheus インスタンスのモニタリングデータをセルフマネージド Grafana システムにインポートしたり、Prometheus API を使用してカスタム開発用のモニタリングデータを取得したりできます。

前提条件

Prometheus インスタンスが作成されていること。

手順 1:HTTP API URL を取得する

  1. Cloud Monitor 2.0 コンソール にログインし、ワークスペースを選択します。 左側のナビゲーションウィンドウで、[アプリケーションセンター] > [Managed Service For Prometheus] を選択します。

  2. [インスタンス] ページで、インスタンスの [アクション] 列にある [設定] をクリックします。

  3. [設定] タブで、パブリックまたはインターナル HTTP API URL をコピーします。

    image

  4. オプション: Prometheus V1 インスタンスの場合は、[トークンの生成] をクリックして認証トークンを取得します。 このトークンは、モニタリングデータが Grafana にインポートされるときのデータセキュリティを確保するために使用されます。

    重要
    • V1 インスタンス:認証トークンが生成された後、インスタンスをデータソースとして Grafana システムに追加するときにトークンを指定する必要があります。 そうしないと、Prometheus インスタンスからモニタリングデータを読み取ることができません。

    • V2 インスタンス:デフォルトでは、データアクセスには AccessKey ID と AccessKey シークレットが必要です。また、AccessKey に関連付けられた RAM ユーザーに AliyunPrometheusMetricReadAccess または AliyunCloudMonitorFullAccess 権限が付与されている必要があります。

手順 2:セルフマネージド Grafana システムに HTTP API URL を追加する

  1. Grafana システムでデータソースを設定します。

    1. Grafana システムに管理者としてログインします。

    2. ページの左上隅にある image アイコンをクリックします。

    3. 左側のナビゲーションウィンドウで、[構成] > [データソース] を選択します。

      説明

      このメニューは管理者のみが表示できます。

    4. [データソース] タブで、[+ データソースを追加] をクリックします。

    5. [データソースを追加] ページで、[Prometheus] をクリックします。

    6. [設定] タブで、[名前] フィールドにダッシュボード名を入力し、手順 1:Prometheus サーバーの URL を取得する で取得した Prometheus サーバー URL を HTTP セクションの [Prometheus サーバー URL] フィールドに入力します。

    7. セキュリティ強化の設定を行います。

      V2 インスタンス

      [Basic 認証] を有効にし、[ユーザー] に AccessKey ID を、[パスワード] に AccessKey シークレットを設定します。

      image

      (オプション) V1 インスタンス

      [+ ヘッダーを追加] をクリックします。 [カスタム HTTP ヘッダー] セクションで、[+ ヘッダーを追加] をクリックします。 [ヘッダー][認証] に設定し、[値]手順 1:HTTP API URL を取得する で取得した認証トークンに設定します。

      image

  2. [保存してテスト] をクリックします。

  3. 結果を確認します。

    1. Grafana システムにログインします。

    2. ページの左上隅にある image アイコンをクリックし、左側のナビゲーションウィンドウで [ダッシュボード] をクリックします。

    3. [ダッシュボード] ページで、[新規] をクリックし、ドロップダウンメニューから [新しいダッシュボード] をクリックします。

    4. [+ 可視化を追加] をクリックします。

    5. [データソースを選択] ページで、カスタムデータソースを選択します。

    6. [パネルの編集] ページで、[クエリ] タブの [A] セクションにある [メトリック] フィールドと [ラベルフィルター] フィールドにメトリック名と値を入力し、[クエリを実行] をクリックします。

      メトリックのチャートが表示された場合は、Prometheus データソースが追加されています。 チャートが表示されない場合は、Prometheus データソースの追加に失敗しています。 API URL またはトークンが有効かどうか、またデータソースにモニタリングデータがあるかどうかを確認してください。

      image

手順 3:Managed Service for Prometheus のモニタリングデータを取得する

サンプルリクエストは、Managed Service for Prometheus のデータを呼び出す方法を示しています。 HTTP API を使用して Managed Service for Prometheus のデータを取得する方法については、Prometheus HTTP API を参照してください。

V2 インスタンス

GET {HTTP API}/api/v1/query

Accept: application/json
Content-Type: application/json
Authorization: Basic <base64-encoded-username:password>

{
  "query":"arms_prometheus_target_interval_length_seconds_sum",
  "time":"1635302655",
  "timeout":"1000"

}
説明
  • {HTTP API} は、手順 1:HTTP API URL を取得する で取得した HTTP API URL に置き換えます。

  • ユーザー名とパスワードを、対応する AccessKey ID と AccessKey シークレットに置き換えます。

V1 インスタンス

GET {HTTP API}/api/v1/query

Accept: application/json
Content-Type: application/json
Authorization: {Token}

{
  "query":"arms_prometheus_target_interval_length_seconds_sum",
  "time":"1635302655",
  "timeout":"1000"

}
説明

{HTTP API}{Token} は、手順 1:HTTP API URL を取得する で取得した HTTP API URL と認証トークンに置き換えます。

サンプルレスポンス:

サンプルレスポンスを表示

{
    "status": "success",
    "data": {
        "resultType": "vector",
        "result": [
            {
                "metric": {
                    "__name__": "arms_prometheus_target_interval_length_seconds_sum",
                    "instance": "localhost:9335",
                    "interval": "15s",
                    "job": "_arms-prom/kubelet/1"
                },
                "value": [
                    1635302655,
                    "146655.24420603***"
                ]
            },
            {
                "metric": {
                    "__name__": "arms_prometheus_target_interval_length_seconds_sum",
                    "instance": "localhost:9335",
                    "interval": "30s",
                    "job": "_arms-prom/kubelet/1"
                },
                "value": [
                    1635302655,
                    "879810.747346***"
                ]
            },
            {
                "metric": {
                    "__name__": "arms_prometheus_target_interval_length_seconds_sum",
                    "instance": "localhost:9335",
                    "interval": "20s",
                    "job": "_arms-prom/kubelet/1"
                },
                "value": [
                    1635302655,
                    "73320.13578499***"
                ]
            }
        ]
    }