Prometheusに保存していたデータをそのままNew Relicに保存し、Grafanaダッシュボードを使い続ける方法について、「Create Grafana Dashboards with Prometheus Data Stored in New Relic」の抄訳をお伝えします。
Grafanaは、データを本当に良く見せてくれます。
Grafanaを使用して異なるデータセットの可視化とアラートを行っている多くのユーザーに話を聞いてきたところ、多くのユーザーがGrafanaを高く評価しているということが分かりました。Grafanaは簡単に立ち上げて実行でき、幅広いテレメトリーデータストアに接続でき、公式およびコミュニティで作成されたダッシュボードが豊富に用意されているので、すぐに始められます。また、Grafanaはオープンソースでもあります。
恐らくGrafanaユーザーの多くはでダッシュボードを構築するのに長い時間を費やしてきて、またダッシュボードを信頼するようになっており、それを失いたくないと思っているでしょう。
そして、我々New Relicも失ってほしいとは思っていません。
そのため、New RelicはGrafana Labsと提携し、当社のTelemetry Data PlatformをPrometheusのメトリクスのデータソースとして使用し、既存のダッシュボードに表示することができるようになりました。これにより、PrometheusとGrafanaを維持したまま、New Relicが提供する信頼性、拡張性、セキュリティをシームレスに活用することができます。
PrometheusからGrafanaへのプラットフォームリンク
Prometheusに内蔵されたリモート書き込み機能は、既存のPrometheusサーバから、完全に管理されたスケーラブルな時系列プラットフォームであるTelemetry Data Platformにメトリクスを転送します。Telemetry Data Platformは、Prometheusのメトリクスからアプリケーションログや分散トレースに至るまで、すべてのデータソース間の関係を完全に接続されたグローバルな視点で見ることができます。
Prometheusリモート書き込み統合を設定し、Telemetry Data PlatformをGrafanaのPrometheusデータソースとして設定しても、現在の体験をなくすわけではありません。既存のGrafanaダッシュボードに変更はありません。New Relicに保存されているPrometheusデータを使って、新しいダッシュボードを構築することも可能です。
GrafanaでPrometheusデータストアとしてTelemetry Data Platformを構成する方法
例えば、次の2ステップだけで、PrometheusデータストアをTelemetry Data Platformに置き換え、GrafanaでPrometheusデータソースとして追加できます。最終的には、PrometheusデータをNew Relicに送信することができ、Grafanaは既存のPrometheus固有のダッシュボードにそのデータを入力します。
注:この処理にはPrometheusのバージョン2.15.0以上とGrafanaのバージョン6.7.0以上が必要です。また、New Relicにサインアップする必要があります。
ステップ1: Prometheus リモート書き込み統合でNew Relicにデータを流す
Instrument Everything - USまたはInstrument Everything - EUに移動し、Prometheusタイルをクリックして、以下の手順を実行します。
1. 接続先のPrometheusサーバーの名前を入力し、remote write
URLを生成します。
2. 生成されたremote write
スニペット(URL付き)をコピーして、Prometheus設定ファイル(prometheus.yml
)に追加します。この情報を追加するのに適した場所は、global
セクションと同じインデントレベルの global_config
の下です。
# my global config global: scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute. evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute. # scrape_timeout is set to the global default (10s). remote_write: - url: https://metric-api.newrelic.com/prometheus/v1/write?X-License-Key=[prometheus-demo-1 key]&prometheus_server=prometheus-demo-1
設定ファイルを持っていない場合は、Prometheusの設定ドキュメントを確認するか、この設定ファイルの例を参照してください。
3. Prometheusサーバーを再起動してください。
4. See your data.をクリックしてください。"Data received successfully..."
というメッセージが表示されるはずですが、New Relicでデータを確認するには数分かかるかもしれません。
これであなたのPrometheusのデータは、Telemetry Data Platformに流れ込みました。
Prometheus のremote write統合を設定する方法の詳細については、ドキュメントを参照してください。
ステップ2: New Relicに保存されているPrometheusデータを使用するようにGrafanaダッシュボードを設定します。
Grafana の Prometheus データストアとして Telemetry Data Platform に切り替えると、Prometheus ダッシュボードをそのまま維持することができます。Telemetry Data PlatformをPrometheusデータソースとして追加するだけです。
- New Relic クエリキーを生成します。New Relic Oneのホーム画面から、More > Insightsをクリックし、Insightsの左側のナビで、Manage data > API Keysをクリックします。
- クエリキーの横にある+アイコンをクリックし、[Notes]フィールドに、キーを使用している目的の簡単な説明を入力して、[Save your notes]クリックします。
- 後で必要になるので、[Show]をクリックして新しいAPIキーをコピーします。
- Grafanaのホーム画面で、[Configuration]> [Data Sources]をクリックします。既存のPrometheusデータソースが表示されます。これをクリックして編集します。
- New Relicのデータ領域に基づいて、データソースのURLフィールドを更新します。
○ 米国:https://prometheus-api.newrelic.com
○ EU: https://prometheus-api.eu.newrelic.com
- AccessフィールドをServerに設定します。
- [Custom Headers]で、[Add Header]を選択します。ヘッダーの値をX-Query-Keyに設定し、上記でコピーしたAPIキーを追加します。
- [Save & Test]をクリックします。”Data source is working”というメッセージが表示され、「戻る」をクリックすると、PrometheusデータソースのURLがTelemetryデータプラットフォームを指していることが反映されるはずです。
- Prometheusのダッシュボードに移動してください。New RelicからのPrometheusデータがチャートに表示されているのがわかるはずです。
これでPrometheusのデータはNew Relicに保存され、Grafanaでの可視化に使用できます。設定は簡単で、ダッシュボードを再構築する必要はありません。
Grafana用のPrometheusデータソースとしてNew Relicを設定する方法の詳細については、ドキュメントを参照してください。
Grafana Enterpriseユーザー:GrafanaからすべてのTelemetry Data Platformデータをクエリしましょう!
なぜPrometheusのデータまででとどまるのでしょう?Telemetry Data Platformを使用すると、Telegraf、OpenTelemetry、Logstash、Kubernetesなど、あらゆるソースからメトリクス、イベント、ログ、トレースをインジェストすることができます。Grafanaのダッシュボードにすべてを反映させることができます。
Grafana Enterpriseを使用している場合は、New Relicデータソースプラグインを必ずインストールしてください。このプラグインを使用すると、New Relicクエリ言語(NRQL)を使用して、Telemetry Data Platformに保存されている他のデータソースのメトリクス、ログ、トレースをクエリすることができます。これらのNRQLの結果を使用して、Grafana Enterpriseでテレメトリ・ダッシュボードを構築することができます。
プラグインの詳細については、Grafana Labsのブログ記事をご覧ください。
Grafana LabsとNew Relic-相性は抜群です。
技術革新の速度と技術の多様性を考えると、本当の意味でインパクトのあるオブザーバビリティツールを作るためには、従来から競争があった分野でのコラボレーションが必要になります。Grafana Labsとのコラボレーションを楽しみにしており、すべての人にオブザーバビリティを提供できることを楽しみにしています。始める準備ができたら、Grafana Enterpriseトライアルにサインアップして、ダッシュボードに情報を入力してください。
本ブログに掲載されている見解は著者に所属するものであり、必ずしも New Relic 株式会社の公式見解であるわけではありません。また、本ブログには、外部サイトにアクセスするリンクが含まれる場合があります。それらリンク先の内容について、New Relic がいかなる保証も提供することはありません。