メインコンテンツまでスキップ
Sumo Logic Japanese

Amazon MSK Prometheus メトリクスの収集

Amazon Managed Streaming for Apache Kafka (Amazon MSK) Open Monitoring 機能は、Sumo Logic で収集可能な Kafka メトリクスを公開します。このページでは、Amazon MSK のメトリクス収集を設定する方法について説明します。

Amazon Managed Streaming for Apache Kafka (Amazon MSK) Open Monitoring は、Kafka メトリクスを MSK クラスタの監視とトラブルシューティングのためにサードパーティ Source に公開します。このページでは、Amazon MSK のメトリクス収集を設定する方法について説明します。

Amazon MSK メトリクスの収集

Amazon MSK は、完全マネージド型サービスで、ユーザは Apache Kafka を使用してストリーミング データを処理するアプリケーションを構築して実行できます。次の手順では、Collector と Source を設定し、クライアント マシンを作成し、Telegraf で使用する情報を MSK クラスタで収集します。Telegraf は、メトリクスとイベントを収集して送信するためのプラグイン駆動型のサーバ エージェントです。 

ステップ 1: Collector および Source の設定

このステップでは、Sumo Logic の Hosted Collector をセットアップし、HTTP Source を設定します。

Collector と HTTP Source を設定するには、次の手順を実行します。

  1. Hosted Collector をセットアップします。
  2. HTTP Source を設定します。

ステップ 2: クライアント マシンの作成

このステップではクライアント マシンを作成します。このクライアントマシンでは、Sumo Logic で使用するためにメトリクスにアクセスできます。

クライアント マシンを作成するには、次の手順を実行します。

  1. Amazon MSK クラスタが稼働していることを確認します。 
  2. Amazon MSK のドキュメントのこちらの手順に従ってクライアント マシンを作成します。

ステップ 3: ノードとエンドポイントでの情報収集

このステップでは、クラスタで実行中のノードのリストを取得し、すべてのエンドポイントの必要な情報を収集します。

クラスタのノードとエンドポイントの情報を収集するには、次の手順を実行します。

  1. 次の AWS CLI コマンドを実行してクラスタ ノードのリストを取得します。変数を MSK クラスタの Amazon Resource Name (ARN) に置き換えます。
aws kafka list-nodes --cluster-arn <INSERT_MSK_CLUSTER_ARN_HERE>
  1. MSK クラスタのクラスタ ノードの各エンドポイントをメモします。次の例は、1 つのノードのエントリを示しています。ノードのエンドポイントは太字で表示されています。
{
    "NodeInfoList": [
        {
            "AddedToClusterTime": "2019-11-22T23:35:13.733Z",
            "BrokerNodeInfo": {
                "AttachedENIId": "eni-0a80fff4826abcf57",
                "BrokerId": "3",
                "ClientSubnet": "subnet-0316ee383dd23816d",
                "ClientVpcIpAddress": "10.0.1.17",
                "CurrentBrokerSoftwareInfo": {
                    "KafkaVersion": "2.2.1"
                },
                "Endpoints": [
                    "b-3.prometheustest.hm95de.c6.kafka.us-east-1.amazonaws.com"
                ]
            },
            "InstanceType": "m5.large",
            "NodeARN": "arn:aws:kafka:us-east-1:244663422124:broker/PrometheusTest/b19b9b3c-317a-496d-8ef7-677b79f0259a-6/350ea803-2456-4167-b8eb-f618aa28b041",
            "NodeType": "BROKER"
        },
        ...
    ]
}

ステップ 4: Telegraf のインストールと設定

このステップでは、Telegraf をインストールして設定します。Telegraf は、メトリクスを収集して送信するためのプラグイン駆動型のサーバ エージェントです。

Telegraf をインストールして設定するには、次の手順を実行します。

  1. ステップ 2 で作成したクライアント マシンに移動します。
  2. こちらの手順を使用して Telegraf をインストールします。
  3. Telegraf の設定ファイルを作成します。次の例は、Telegraf 設定ファイルの必須コンポーネントを示しています。
[agent]
# The interval property in the agent tells telegraf how often to scrape the metrics.
    interval = "60s"

[[inputs.prometheus]]
# For each node in your MSK cluster, you will need to have two urls in the Prometheus input section. 
    urls = ["http://b-1.prometheustest.h295de.c6.kafka.us-east-1.amazonaws.com:11001/metrics", 
    "http://b-1.prometheustest.h295de.c6.kafka.us-east-1.amazonaws.com:11002/metrics"]


[[outputs.http]]
# The URL for the HTTP source you created in Step 1.
    url = "https://endpoint3.collection.us2.sumologic.com/receiver/v1/http/XXXXXX" data_format = "carbon2"
    [outputs.http.headers]
    Content-Type = "application/vnd.sumologic.carbon2"
    X-Sumo-Category = "amazon-msk/metrics"

ステップ 5: Telegraf の起動と新しいメトリクスのクエリ

このステップでは、Telegraf を起動し、新しいメトリクスのクエリを開始します。

Telegraf を起動し、新しいメトリクスのクエリを実行するには、次の手順を実行します。

  1. 次のコマンドを実行して Telegraf を起動します。詳細については、こちらのドキュメントを参照してください。
telegraf --config /path/to/telegraf.conf
  1. Sumo Logic で次の例に示すようなメトリクス クエリを記述して、これらの新しいメトリクスに対するクエリを実行します。

AmazonMSK_Metric_Query.png

  • この記事は役に立ちましたか?