Amazon Managed Service for Prometheus で使用する Grafana オープンソースまたは Grafana Enterprise のセットアップ - Amazon Managed Service for Prometheus

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Managed Service for Prometheus で使用する Grafana オープンソースまたは Grafana Enterprise のセットアップ

Amazon Managed Service for Prometheus では、Grafana バージョン 7.3.5 以降を使用してワークスペース内のメトリクスにクエリを実行することがサポートされています。バージョン 7.3.5 以降には、 AWS 署名バージョン 4 (SigV4) 認証のサポートが含まれています。

tar.gz または zip ファイルを使用してスタンドアロンの Grafana をセットアップする手順については、Grafana ドキュメントの「Install Grafana」を参照してください。新しいスタンドアロン Grafana をインストールすると、ユーザー名とパスワードの入力を求められます。デフォルトは admin/admin です。初回のログイン後、パスワードを変更するように求められます。詳細については、Grafana ドキュメントの「Getting started with Grafana」を参照してください。

Grafana のバージョンを確認するには、次のコマンドを入力します。

grafana_install_directory/bin/grafana-server -v

Amazon Managed Service for Prometheus と連携するように Grafana を設定するには、 AmazonPrometheusQueryAccess ポリシーまたは aps:QueryMetrics、、aps:GetMetricMetadataaps:GetSeriesおよび アクセスaps:GetLabels許可を持つアカウントにログオンする必要があります。詳細については、「IAM のアクセス許可とポリシー」を参照してください。

AWS SigV4 の設定

Amazon Managed Service for Prometheus は AWS Identity and Access Management (IAM) と連携して、Prometheus APIsで保護します。デフォルトでは、Grafana の Prometheus データソースは、Prometheus が認証を必要としないものと想定します。Grafana で Amazon Managed Service for Prometheus の認証および認可機能を利用できるようにするには、Grafana データソースで SigV4 認証サポートを有効にする必要があります。自己管理型の Grafana オープンソースサーバーまたは Grafana Enterprise サーバーを使用している場合は、このページの手順に従ってください。Amazon Managed Grafana を使用している場合、SigV4 認証は完全に自動化されます。Amazon Managed Grafana の詳細については、「Amazon Managed Grafana とは」を参照してください。

Grafana で SigV4 を有効にするには、AWS_SDK_LOAD_CONFIG および GF_AUTH_SIGV4_AUTH_ENABLED 環境変数を true に設定して Grafana を起動します。GF_AUTH_SIGV4_AUTH_ENABLED 環境変数は、Grafana のデフォルト設定をオーバーライドして SigV4 サポートを有効にします。詳細については、Grafana ドキュメントの「Configuration」を参照してください。

Linux

Linux 上のスタンドアロン Grafana サーバーで SigV4 を有効にするには、次のコマンドを入力します。

export AWS_SDK_LOAD_CONFIG=true
export GF_AUTH_SIGV4_AUTH_ENABLED=true
cd grafana_install_directory
./bin/grafana-server

Windows

Windows 上のスタンドアロン Grafana で SigV4 を有効にするには、Windows のコマンドプロンプトを使用して、次のコマンドを入力します。

set AWS_SDK_LOAD_CONFIG=true
set GF_AUTH_SIGV4_AUTH_ENABLED=true
cd grafana_install_directory
.\bin\grafana-server.exe

Grafana での Prometheus データソースの追加

以下の手順では、Grafana で Prometheus データソースを設定して、Amazon Managed Service for Prometheus メトリクスに対するクエリを実行する方法を説明します。

Grafana サーバーに Prometheus データソースを追加するには
  1. Grafana コンソールを開きます。

  2. [設定] で、[データソース] を選択します。

  3. [データソースを追加] を選択します。

  4. [Prometheus] を選択します。

  5. HTTP URL として、Amazon Managed Service for Prometheus コンソールのワークスペースの詳細ページに表示される [エンドポイント - クエリ URL] を指定します。

  6. 指定した HTTP URL から、URL に追加されている /api/v1/query という文字列を削除します。これは、Prometheus データソースによって自動的に追加されるためです。

    正しい URL は、https://aps-workspaces.us-west-2.amazonaws.com/workspaces/ws-1234a5b6-78cd-901e-2fgh-3i45j6k178l9 のようになります。

  7. [認証] で、[SigV4 認証] のトグルを選択して有効にします。

  8. SigV4 認証は、Grafana で長期認証情報を直接指定するか、デフォルトのプロバイダーチェーンを使用して構成できます。長期認証情報を直接指定する方がすぐに開始できるため、以下では最初にその手順を説明します。Amazon Managed Service for Prometheus で Grafana を使用することに慣れてきたら、デフォルトのプロバイダーチェーンを使用することをお勧めします。これにより、柔軟性とセキュリティが向上します。デフォルトのプロバイダーチェーンを設定する方法の詳細については、「Specifying Credentials」を参照してください。

    • 長期認証情報を直接使用するには、以下を実行します。

      1. [SigV4 認証の詳細] で、[認証プロバイダー] として [アクセスとシークレットキー] を選択します。

      2. [アクセスキー ID] に、 AWS アクセスキー ID を入力します。

      3. [シークレットアクセスキー] に、 AWS シークレットアクセスキーを入力します。

      4. [引き受けロールの ARN][外部 ID] フィールドは空白のままにします。

      5. [デフォルトのリージョン] で、Amazon Managed Service for Prometheus ワークスペースのリージョンを選択します。このリージョンは、ステップ 5 で指定した URL に含まれているリージョンと一致する必要があります。

      6. [保存してテスト] を選択します。

        Data source is working」というメッセージが表示されます。

        次のスクリーンショットは、アクセスキーとシークレットキーを含む SigV4 認証の詳細設定を示しています。

    • 代わりにデフォルトのプロバイダーチェーンを使用するには (本番環境に推奨)、以下を実行します。

      1. [SigV4 認証の詳細] で、[認証プロバイダー] として [AWS SDK のデフォルト] を選択します。

      2. [引き受けロールの ARN][外部 ID] フィールドは空白のままにします。

      3. [デフォルトのリージョン] で、Amazon Managed Service for Prometheus ワークスペースのリージョンを選択します。このリージョンは、ステップ 5 で指定した URL に含まれているリージョンと一致する必要があります。

      4. [保存してテスト] を選択します。

        Data source is working」というメッセージが表示されます。

        次のスクリーンショットは、SDK のデフォルトの SigV4 認証の詳細設定を示しています。

  9. 新しいデータソースに対して PromQL クエリをテストします。

    1. [調査] を選択します。

    2. 次のようなサンプル PromQL クエリを実行します。

      prometheus_tsdb_head_series

[保存してテスト] が機能しない場合のトラブルシューティング

前の手順で [保存してテスト] を選択したときにエラーが表示される場合は、以下を確認してください。

HTTP エラー: 見つかりません

URL に含まれているワークスペース ID が正しいことを確認してください。

HTTP エラー: 禁止されています

このエラーは、認証情報が無効であることを意味します。以下をチェックしてください:

  • [デフォルトのリージョン] に指定したリージョンが正しいことを確認します。

  • 認証情報に誤字がないことを確認します。

  • 使用している認証情報に AmazonPrometheusQueryAccessポリシーがあることを確認してください。詳細については、「IAM のアクセス許可とポリシー」を参照してください。

  • 使用している認証情報に、この Amazon Managed Service for Prometheus ワークスペースへのアクセス権があることを確認します。

HTTP エラー: 不正なゲートウェイ

このエラーのトラブルシューティングを行うには、Grafana サーバーのログを確認します。詳細については、Grafana ドキュメントの「Troubleshooting」を参照してください。

が表示された場合Error http: proxy error: NoCredentialProviders: no valid providers in chain、デフォルトの認証情報プロバイダーチェーンは、使用する有効な AWS 認証情報を見つけることができませんでした。「Specifying Credentials」に従って認証情報が設定されていることを確認してください。共有設定を使用する場合は、AWS_SDK_LOAD_CONFIG 環境が true に設定されていることを確認してください。