Prometheus モニタリングデータを Simple Log Service (SLS) に送信し、分析とモニタリングを行います。
前提条件
-
メトリックストアが作成されました。詳細については、「メトリックストアを作成する」をご参照ください。
-
Prometheus のインストールが完了しました。 詳細については、「はじめに」をご参照ください。
-
Prometheus でデータスクレイピングルールが設定されています。詳細については、「scrape_config」をご参照ください。
手順
SLS は Prometheus の Remote Write プロトコルをサポートしています。メトリクスを送信するには、Prometheus の設定で Remote Write を有効にします。
-
Prometheus がデプロイされているサーバーにログインします。
-
Prometheus 設定ファイルを開き、次のパラメーターで
remote_writeセクションを設定します。値の例を実際の情報に置き換えます。詳細については、「remote_write」をご参照ください。url: https://sls-prometheus-test.cn-beijing.log.aliyuncs.com/prometheus/sls-prometheus-test/prometheus-raw/api/v1/write basic_auth: username: access-key-id password: access-key-secret queue_config: batch_send_deadline: 20s capacity: 20480 max_backoff: 5s max_samples_per_send: 2048 min_backoff: 100ms min_shards: 100パラメータ
説明
url
SLS の Metricstore の URL です。URL の形式は次のとおりです:https://{project}.{sls-endpoint}/prometheus/{project}/{metricstore}/api/v1/write
-
{sls-endpoint}:サービスエンドポイントです。詳細については、「エンドポイント」をご参照ください。
-
{project}:プロジェクト名。
-
{metricstore}:Metricstore 名。
重要-
Prometheus インスタンスが Alibaba Cloud の内部ネットワークで実行されている場合は、内部ネットワークエンドポイントを使用してください。
-
データ転送の安全性を確保するため、HTTPS エンドポイントを使用する必要があります。
basic_auth
認証情報。Remote Write を使用して SLS にデータを書き込むには、Basic 認証が必要です。
-
username:Alibaba Cloud アカウントの AccessKey ID。
-
password:Alibaba Cloud アカウントの AccessKey Secret。
セキュリティのため、プロジェクトへの書き込み専用権限を持つ RAM ユーザーの AccessKey ペアを使用します。詳細については、「特定のプロジェクトへの書き込み権限を付与する」をご参照ください。
queue_config
queue_config は、キャッシュやリトライなどの書き込みポリシーを設定します。
無効なネットワークリクエストが過剰に発生するのを防ぐため、min_backoff は最低 100 ms、max_backoff は最低 5 s に設定してください。
Prometheus から大量のデータを送信する場合は、以下の queue_config 設定を使用してください:
batch_send_deadline: 20s capacity: 20480 max_backoff: 5s max_samples_per_send: 2048 min_backoff: 100ms min_shards: 100 -
-
データが SLS に送信されていることを確認します。
Prometheus の設定後、SLS コンソールで受信データをプレビューし、接続を確認します。
-
Simple Log Service コンソールにログインします。
-
[Projects] セクションで、対象のプロジェクトをクリックします。
-
左側のナビゲーションペインで、 を選択します。[Metricstore] タブで対象の Metricstore を見つけ、 を選択します。
[消費プレビュー] ページにデータが表示されると、設定は成功です。 データは、時刻/ソース と コンテンツ の列があるテーブルに表示されます。 各エントリには、メトリック名 (__name__)、ラベル (__labels__)、値 (__value__) などの Prometheus メトリック情報が含まれています。
重要Remote Write プロトコルを使用して SLS の Metricstore に時系列データが書き込まれる場合、SLS はデフォルトの
HashKeyとしてMetricNameとLabelsを使用します。これにより、異なるタイムラインの時系列データが特定の各シャードにルーティングされ、ストレージ側でのデータの局所性が向上します。
-
次のステップ
Prometheus モニタリングデータが SLS にインジェストされた後、以下の操作を実行できます:
-
Simple Log Service で Prometheus モニタリングデータをクエリおよび分析します。詳細については、「時系列データのクエリと分析」をご参照ください。
-
Grafana で Prometheus のモニタリングデータを可視化します。詳細については、「時系列データを Grafana に接続する」をご参照ください。
> 消費プレビュー