• /
  • ログイン
  • 無料アカウント

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

Kafkaモニタリングの統合

New Relic Kafka on-host integration は、お使いの Kafka サービスからメトリクスと設定データをレポートします。ブローカー(ZooKeeperとBootstrapの両方)、プロデューサー、コンシューマー、トピックなど、クラスタの主要な要素をすべて計測します。

Kafkaインテグレーションをインストールして、どのようなデータを収集するかを確認してみましょう。当社の Java エージェントで Kafka を監視するには、 Instrument Kafka message queues を参照してください。

互換性および要件

当社のインテグレーションは、Kafkaのバージョン0.8以降に対応しています。

インテグレーションをインストールする前に、以下の要件を満たしていることを確認してください。

  • New Relicアカウント。アカウントをお持ちでない場合無料サインアップクレジットカードは不要です。

  • KafkaがKubernetesやAmazon ECS上で ****稼働していない場合は、 Kafkaが稼働しているホストにインフラストラクチャエージェント をインストールする必要があります。それ以外の場合は

  • Java 8以上

  • すべてのブローカーでJMXが有効

  • Javaベースのコンシューマとプロデューサのみで、JMXが有効な場合

  • モニタリングされたトピックの総数が10000以下であること。

Kubernetes上で動作するKafkaの場合は、 Kubernetesの要件 を参照してください。

インストールの準備

Kafkaは、分散システムとして構築された複雑なソフトウェアです。そのため、データが正しく収集されるように、統合が必要なすべてのホストとサービスにコンタクトできるようにする必要があります。

オートディスカバリー

Kafkaの分散型の性質を考慮すると、ブローカーの実際の数とリストは通常、構成によって固定されておらず、代わりにかなり動的になります。このため、Kafkaインテグレーションでは、クラスタ内のブローカーのリストを自動的に検出する2つのメカニズムを提供しています。BootstrapとZookeeperです。どちらのメカニズムを使用するかは、監視対象のKafkaクラスタの設定によります。

ブートストラップ

ブートストラップ・メカニズム を使用すると、統合はブートストラップ・ブローカーを使用して自動発見を行います。これは、アドレスがよく知られているブローカで、認識している他のブローカを尋ねることになります。ブートストラップ・ディスカバリーが機能するためには、統合は bootstrap_broker_host パラメータで提供されるアドレスで、このブローカーに連絡できる必要があります。

ズーキーパー

また、Kaftaインテグレーションは、ブローカーのリストを取得するために、 Zookeeperサーバー と対話することもできます。これを行うには、インテグレーションに以下のものを提供する必要があります。

  • 連絡するZookeeperホストのリスト (zookeeper_hosts)
  • ホストとの接続に必要な適切な認証シークレット。

Zookeeper は、知っているブローカーのリストと一緒に、それぞれのブローカーがどのような接続メカニズムをサポートしているかをアドバタイズする。

preferred_listenerパラメータを使用して、これらのメカニズムのいずれかを直接試みるようにKafka統合を設定できます。このパラメータが提供されていない場合、統合は、いずれかが成功するまで、アドバタイズされたすべての設定を持つブローカーへの連絡を試みます。

ヒント

Zookeeper は、ブローカーを検出するためにのみ使用され、メトリクスは取得しません。

トピックス一覧

ブローカーによって処理されたトピックを正しくリストアップするために、統合はKafkaプロトコルを介してブローカーに連絡する必要があります。ブローカーの構成によっては、SSLやSASLをブローカーの構成に合わせて設定する必要があります。トピックにはDESCRIBEアクセスが必要です。

ブローカーの監視(JMX)

Kafkaインテグレーションでは、Javaアプリケーションでメトリクスを交換するための標準的なJava拡張機能であるJMXを照会します。JMX は Kafka ブローカーではデフォルトでは有効になっておらず、メトリクス収集が正しく動作するためには有効にする必要があります。JMX は RMI を有効にする必要があり、RMI ポートは JMX と同じポートに設定する必要があります。

ユーザー名/パスワード認証、およびSSLを使用するようにJMXを設定することができます。ブローカーのJMX設定でこのような機能が有効になっている場合は、それに応じて統合を設定する必要があります。

自動発見がブートストラップに設定されている場合、ブートストラップブローカに定義されたJMX設定は、発見された他のすべてのブローカに適用されるため、ポートおよびその他の設定はすべてのブローカで同じにする必要があります。

重要

公共の場や信頼できないネットワークセグメントで、匿名または暗号化されていないJMX/RMIアクセスを可能にすることは、大きなセキュリティリスクをもたらすため、お勧めできません。

消費者のオフセット

トピックの消費者と消費者グループのオフセット、およびラグは、 KafkaOffsetSample として、 CONSUMER_OFFSET=true フラグを使って取得できますが、このフラグが有効な場合、インスタンスは他のSampleを収集しないため、別のインスタンスにする必要があります。

プロデューサ/コンシューマの監視(JMX)

また、Javaで書かれたプロデューサーとコンシューマーは、同じメカニズム(JMX)を通じて、より具体的なメタデータを得るために監視することができます。これにより、 KafkaConsumerSamples と KafkaProducerSamples が生成されます。JMX がデフォルトで有効になっていないアプリケーションでは、JMX を有効にして設定する必要があります。

非JavaのプロデューサーとコンシューマーはJMXをサポートしていないため、Kafkaとの統合ではサポートされません。

接続条件

要約すると、統合機能を設定し、接続を許可する必要があります。

  • zookeeper_hosts に記載されているホストを、Zookeeper プロトコルで、Zookeeper の認証メカニズムを使用して( autodiscover_strategyzookeeper に設定されている場合)実行する。
  • bootstrap_broker_host で定義されたホストは、Kafka プロトコルを介して、Kafka ブローカーの認証/トランスポートメカニズムを使用します( autodiscover_strategybootstrap に設定されている場合)。
  • クラスター内のすべてのブローカーがKafkaのプロトコルとポートを介して、Kafkaブローカーの認証/トランスポートメカニズムを使用します。
  • クラスター内のすべてのブローカーが、ブローカーのJMX構成で指定された認証/トランスポートメカニズムを使用して、JMXプロトコルとポートを介して。
  • プロデューサ/コンシューマのモニタリングを行う場合は、JMXプロトコルとポートを介してプロデューサとコンシューマで指定されたすべてのプロデューサ/コンシューマ。コンシューマーのJMX設定は、ブローカーと同じである必要があります。

重要

クラウドの場合: デフォルトでは、AWSのSecurity Group(および他のクラウドプロバイダーでの同等のもの)は、必要なポートを開いていません。JMXが動作するためには、JMXポートとRMIポートの2つのポートが必要です。これらは、JMXを有効にするためにJVMを構成する際に同じ値に設定することができ、 統合がブローカーに接続してメトリクスを収集できるようにするためには、 が開いている必要があります。

インストールと有効化

Kafkaインテグレーションをインストールするには、セットアップを選択します。

' '

追加の注:

インテグレーションの設定

インストールの方法により、インテグレーションの設定方法はいくつかあります。

統合の YAML 形式の設定では、必要なログイン認証情報を配置したり、データの収集方法を設定したりすることができます。どのオプションを変更するかは、お客様のセットアップや好みによります。環境全体をリモートで、または環境内の任意のノードで監視することができます。

設定ファイルには、間隔タイムアウトinventory_sourceなど、すべてのインテグレーションに適用される共通設定があります。これらの共通設定の詳細については、設定形式ドキュメントを参照してください。

重要

レガシー設定/定義ファイルを引き続き使用する場合は、このドキュメントを参照してください。

Kafka に関連する特定の設定は、設定ファイルの env セクションを使用して定義されます。これらの設定は、Broker、Zookeeper、JMX への接続や、その他のセキュリティ設定や機能を制御します。有効な設定のリストは、このドキュメントの次のセクションで説明します。

重要

この統合には、相互に排他的な2つの動作モードがあります。「コア」コレクションと"コンシューマ・オフセット・コレクション" CONSUMER_OFFSETパラメータで制御されます。

  • CONSUMER_OFFSET = true は消費者のオフセット収集モードで、 KafkaOffsetSample を生成します。

  • CONSUMER_OFFSET = false はコアコレクションモードで、残りのサンプル(KafkaBrokerSample, KafkaTopicSample, KafkaProducerSample, KafkaConsumerSample)を集めることができます。

    これらのモードは、消費者向けのオフセットコレクションが長い時間をかけて実行され、高いパフォーマンスが要求されるために分離されています。

これらの設定値は、いくつかの方法で定義できます。

  • コンフィグファイルに直接値を追加する。これが最も一般的な方法です。
  • {{}} 表記を使用して環境変数から値を置き換えます。これには、インフラストラクチャエージェントv1.14.0+が必要です。詳しくはこちら .
  • シークレット管理を使用する。設定ファイル上でパスワードなどの常識的な情報が平文で公開されるのを防ぐために使用します。詳細については、 Secrets management を参照してください。

ラベル/カスタム属性

環境変数は、ライセンスキーなどの構成設定の管理に使用された後、Infrastructureエージェントにパススルーされます。この機能の利用手順に関しては、Infrastructureエージェントを設定するを参照してください。

また、ラベルを使ってメトリクスをさらに装飾することもできます。
デフォルトのサンプル・コンフィグ・ファイルにはラベルの例が含まれていますが、必須ではないので、自分の好きなものを削除、変更、または新たに追加することができます。

labels:
env: production
role: kafka

オンホストインテグレーション設定の一般的な構成の詳細については、設定を参照してください。

KafkaBrokerSampleおよびKafkaTopicSampleコレクションの設定

Kafkaインテグレーションは、Metrics( M )とInventory( I )の両方の情報を収集します。以下の Applies To カラムをチェックして、それぞれのコレクションに使用できる設定を確認してください。

' ' ' ' ' '

設定

説明

デフォルト

適用先

CLUSTER_NAME

監視対象のクラスターを一意に識別するためのユーザー定義名。 必須.

該当なし

M/I

KAFKA_VERSION

接続先のKafkaブローカーのバージョンで、最適なAPIバージョンを設定するために使用されます。ブローカーのバージョンと一致するか、それ以下でなければなりません。

1.0.0より古いバージョンでは、一部の機能が失われている可能性があります。

ブローカーのバイナリ名がkafka_2.12-2.7.0の場合、使用するKafka apiのバージョンは2.7.0であり、その前の2.12はScala言語のバージョンであることに注意してください.

1.0.0

M/I

オートディスカバー戦略

は、ブローカーを発見する方法。オプションは zookeeper または bootstrap

飼育係

M/I

メトリクス

メトリクスのみの収集を有効にするには、 true に設定します。

false

インベントリ

true に設定すると、インベントリのみの収集が可能になります。

false

Zookeeper 自動発見の引数 (only relevant when autodiscover_strategy is zookeeper):

' ' ' ' ' ' ' '

設定

説明

デフォルト

適用先

zookeeper_hosts

接続する必要のあるApache ZooKeeperホストの一覧 (JSON形式)

CONSUMER_OFFSETfalse KafkaBrokerSamplesKafkaTopicSamples に設定されている場合、収集されます。

[]

M/I

zookeeper_auth_scheme

接続する際に使用する ZooKeeper の認証スキームを指定する。現在、サポートされているのは digest のみである。省略された場合、認証は行われない。

該当なし

M/I

zookeeper_auth_secret

接続時に使用する ZooKeeper 認証の秘密鍵。 username:password の形式で指定する。 zookeeper_auth_scheme が指定されている場合のみ必要。

該当なし

M/I

ZOOKEEPER_PATH

Kafka の設定を行う Zookeeper のノードを指定する。デフォルトは /

該当なし

M/I

優先リスナー

ブローカへの接続に特定のリスナーを使用します。設定されていない場合は、テスト接続に成功した最初のリスナーが使用されます。サポートされる値は、 PLAINTEXTSASL_PLAINTEXTSSLSASL_SSL です。注: SASL_* プロトコルは、Kerberos(GSSAPI)認証のみをサポートしています。

該当なし

M/I

ブートストラップ・ブローカー・ディスカバリー・アーギュメントautodiscover_strategyブートストラップ の場合にのみ関係する)。

' ' ' ' ' '

設定

説明

デフォルト

適用先

ブートストラップ_ブローカー_ホスト

ブートストラップ・ブローカーのホストです。

CONSUMER_OFFSETfalse KafkaBrokerSamplesKafkaTopicSamples に設定されている場合、収集されます。

該当なし

M/I

bootstrap_broker_kafka_port

ブートストラップ・ブローカーのKafkaポートです。

該当なし

M/I

bootstrap_broker_kafka_protocol

ブートストラップ・ブローカーへの接続に使用するプロトコルです。サポートされる値は、 PLAINTEXT, SASL_PLAINTEXT, SSL, SASL_SSL です。

SASL_* プロトコルは、Kerberos(GSSAPI)認証のみをサポートしていることに注意してください。

PLAINTEXT

M/I

bootstrap_broker_jmx_port

クラスター内の各ブローカの収集に使用するJMXポートです。

検出されたすべてのブローカーは、このポートでJMXがアクティブになっている必要があります。

該当なし

M/I

bootstrap_broker_jmx_user

クラスタ内の各ブローカの収集に使用するJMXユーザ。

該当なし

M/I

bootstrap_broker_jmx_password

クラスター内の各ブローカの収集に使用するJMXパスワードです。

該当なし

M/I

JMX オプション(インスタンス上のすべての JMX 接続に適用されます)。

' ' ' ' ' ' ' ' ' ' ' '

設定

説明

デフォルト

適用先

KEY_STORE

JMXクライアントのSSL証明書を含むキーストアのファイルパスです。

該当なし

M/I

キー・ストア・パスワード

JMXのSSLキーストアのパスワードです。

該当なし

M/I

TRUST_STORE

JMXサーバーのSSL証明書を含むトラストキーストアのファイルパスです。

該当なし

M/I

trust_store_password

JMXトラストストアのパスワードです。

該当なし

M/I

default_jmx_user

メトリクスを収集するために JMX ホストに接続しているデフォルトのユーザーです。JMX ホストで username フィールドが省略された場合は、この値が使用されます。

admin

M/I

default_jmx_password

JMX ホストに接続するためのデフォルトのパスワードです。JMX ホストでパスワードフィールドが省略された場合は、この値が使用されます。

admin

M/I

タイムアウト

個々のJMXクエリのタイムアウト(単位:ミリ秒)。

10000

M/I

ブローカーのTLS接続オプション(ブローカープロトコルがSSLまたはSASL_SSLの場合に必要です)。

' ' ' ' ' '

設定

説明

デフォルト

適用先

TLS_CA_FILE

SSLおよびSASL_SSLリスナー用の認証局ファイル(PEM形式)です。

該当なし

M/I

TLS_CERT_FILE

SSLおよびSASL_SSLリスナー用のクライアント証明書ファイル(PEM形式)です。

該当なし

M/I

TLS_KEY_FILE

SSLおよびSASL_SSLリスナー用のクライアントキーファイル(PEM形式)です。

該当なし

M/I

TLS_INSECURE_SKIP_VERIFY

サーバーの証明書チェーンとホスト名の検証をスキップします。

false

M/I

ブローカーのSASLおよびKerberos接続オプション(ブローカープロトコルがSASL_PLAINTEXTまたはSASL_SSLの場合に必要)。

' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '

設定

説明

デフォルト

適用先

SASL_MECHANISM

使用するSASL認証のタイプです。サポートされているオプションは、 SCRAM-SHA-512, SCRAM-SHA-256, PLAIN, GSSAPI です。

該当なし

M/I

SASL_USERNAME

PLAINおよびSCRAMメカニズムで必要なSASLユーザー名。

該当なし

M/I

SASL_PASSWORD

PLAINおよびSCRAMメカニズムで必要なSASLパスワード。

該当なし

M/I

sasl_gssapi_realm

GSSAPI機構で必要なKerberosレルム。

該当なし

M/I

sasl_gssapi_service_name

GSSAPI機構で必要なKerberosサービス名です。

該当なし

M/I

sasl_gssapi_username

GSSAPI機構で必要なKerberosユーザー名。

該当なし

M/I

sasl_gssapi_key_tab_path

GSSAPI機構で必要なKerberos key tabのパス。

該当なし

M/I

sasl_gssapi_kerberos_config_path

GSSAPI機構で必要なKerberosのコンフィグパスです。

/etc/krb5.conf

M/I

sasl_gssapi_disable_fast_negotiation

FASTネゴシエーションを無効にします。

false

M/I

Broker Collectionのフィルタリング。

' ' ' ' ' '

設定

説明

デフォルト

適用先

ローカルオンリーコレクション

設定されたブートストラップ・ブローカーに関連するメトリクスのみを収集します。 autodiscover_strategybootstrap である場合にのみ使用されます。

また、Kubernetesなどのディスカバリーを使用する環境ではtrueを設定する必要があります。これは、統合とディスカバリーの2回にわたってブローカーが検出され、データが重複してしまうためです。

このフラグを有効にすると、KafkaTopicSampleの収集がスキップされることに注意してください。

false

M/I

TOPIC_MODE

収集するトピックの数を決定します。オプションは all, none, list, or regex です。

なし

M/I

TOPIC_LIST

監視するトピック名のJSON配列。 topic_modelist に設定されている場合にのみ有効です。

[]

M/I

TOPIC_REGEX

監視するトピック名にマッチする Regex パターン。 topic_moderegex に設定されている場合にのみ有効です。

該当なし

M/I

TOPIC_BUCKET

トピックコレクションを複数のインスタンスに分割するために使用します。 < バケット番号>/<バケット数> という形式でなければなりません。

1/1

M/I

コレクト・トピック・サイズ

メトリック・トピック・サイズを収集します。オプションは true または false で、デフォルトは false です。

これは、特に多くのトピックに対して収集するために、リソースを必要とする指標です。

false

M/I

collect_topic_offset

メトリック・トピック・オフセットを収集します。オプションは true または false で、デフォルトは false です。

これは、特に多くのトピックに対して収集するために、リソースを必要とする指標です。

false

M/I

KafkaConsumerSampleおよびKafkaProducerSampleコレクションの設定

Kafkaインテグレーションは、Metrics( M )とInventory( I )の両方の情報を収集します。以下の Applies To カラムをチェックして、それぞれのコレクションに使用できる設定を確認してください。

' ' ' ' ' ' ' ' ' ' ' '

設定

説明

デフォルト

適用先

CLUSTER_NAME

監視対象のクラスターを一意に識別するためのユーザー定義名。 必須.

該当なし

M/I

PRODUCERS

収集するプロデューサ。各プロバイダーについて、 name, hostname, port, username, password を JSON 形式で提供することができます。 name は、Kafka に表示されるプロデューサーの名前です。 hostname, port, username, password は、オプションの JMX 設定で、指定されていない場合はデフォルトを使用します。KafkaProducerSample を生成するために必要です。

例: [{"name":"myProducer","host":"localhost","port": 24,"username":"me","password":"secret"}] ←ここをクリックしてください。

[]

M/I

コンシューマー

収集するコンシューマー。各コンシューマーに対して、 name, hostname, port, username, password を JSON 形式で指定することができます。 name は、Kafka に表示されるコンシューマーの名前です。 hostname, port, username, password は、オプションの JMX 設定で、指定されていない場合はデフォルトを使用します。KafkaConsumerSample を生成するために必要です。

例: [{"name":"myConsumer","host":"localhost","port": 24,"username":"me","password":"secret"}] [例:

[]

M/I

デフォルト_jmx_host

JMX メトリクスを収集するためのデフォルトのホストです。プロデューサまたはコンシューマの構成でホストフィールドが省略された場合、この値が使用されます。

localhost

M/I

default_jmx_port

JMX メトリクスを収集するためのデフォルトのポートです。プロデューサまたはコンシューマの設定でポートフィールドが省略された場合、この値が使用されます。

9999

M/I

default_jmx_user

メトリクスを収集するために JMX ホストに接続しているデフォルトのユーザー。プロデューサまたはコンシューマの構成で username フィールドが省略された場合は、この値が使用されます。

admin

M/I

default_jmx_password

JMX ホストに接続するためのデフォルトのパスワードです。プロデューサまたはコンシューマの設定でパスワードフィールドが省略された場合、この値が使用されます。

admin

M/I

メトリクス

メトリクスのみの収集を有効にするには、 true に設定します。

false

インベントリ

true に設定すると、インベントリのみの収集が可能になります。

false

JMX の SSL とタイムアウトのオプション(インスタンス上のすべての JMX 接続に適用されます)。

' ' ' ' ' ' ' '

設定

説明

デフォルト

適用先

KEY_STORE

JMXクライアントのSSL証明書を含むキーストアのファイルパスです。

該当なし

M/I

キー・ストア・パスワード

JMXのSSLキーストアのパスワードです。

該当なし

M/I

TRUST_STORE

JMXサーバーのSSL証明書を含むトラストキーストアのファイルパスです。

該当なし

M/I

trust_store_password

JMXトラストストアのパスワードです。

該当なし

M/I

タイムアウト

個々のJMXクエリのタイムアウト(単位:ミリ秒)。

10000

M/I

KafkaOffsetSampleコレクションの設定

Kafkaインテグレーションは、Metrics( M )とInventory( I )の両方の情報を収集します。以下の Applies To カラムをチェックして、それぞれのコレクションに使用できる設定を確認してください。

' ' ' ' ' '

設定

説明

デフォルト

適用先

CLUSTER_NAME

監視対象のクラスターを一意に識別するためのユーザー定義名。 必須.

該当なし

M/I

KAFKA_VERSION

接続先のKafkaブローカーのバージョンで、最適なAPIバージョンを設定するために使用されます。ブローカーのバージョンと一致するか、それ以下でなければなりません。

1.0.0より古いバージョンでは、一部の機能が失われている可能性があります。

ブローカーのバイナリ名がkafka_2.12-2.7.0の場合、使用するKafka apiのバージョンは2.7.0であり、その前の2.12はScala言語のバージョンであることに注意してください.

1.0.0

M/I

オートディスカバー戦略

は、ブローカーを発見する方法。オプションは zookeeper または bootstrap

飼育係

M/I

consumer_offset

trueに設定すると、KafkaOffsetSampleにコンシューマーのオフセットデータを投入します。

このオプションは、Broker/Consumer/Producerの収集をスキップし、KafkaOffsetSampleのみを収集することに注意してください。

false

M/I

consumer_group_regex

オフセット統計を収集する消費者グループにマッチする正規表現パターンです。これは、300個の消費者グループの統計を収集する場合に限られます。

注: consumer_groups は非推奨となったため、代わりにこの引数を使用してください。このオプションは、CONSUMER_OFFSETがtrueのときに設定する必要があります。

該当なし

M/I

メトリクス

メトリクスのみの収集を有効にするには、 true に設定します。

false

インベントリ

true に設定すると、インベントリのみの収集が可能になります。

false

Zookeeper 自動発見の引数 (only relevant when autodiscover_strategy is zookeeper):

' ' ' ' ' ' ' '

設定

説明

デフォルト

適用先

zookeeper_hosts

接続する必要のあるApache ZooKeeperホストの一覧 (JSON形式)

CONSUMER_OFFSETfalse KafkaBrokerSamplesKafkaTopicSamples に設定されている場合、収集されます。

[]

M/I

zookeeper_auth_scheme

接続する際に使用する ZooKeeper の認証スキームを指定する。現在、サポートされているのは digest のみである。省略された場合、認証は行われない。

該当なし

M/I

zookeeper_auth_secret

接続時に使用する ZooKeeper 認証の秘密鍵。 username:password の形式で指定する。 zookeeper_auth_scheme が指定されている場合のみ必要。

該当なし

M/I

ZOOKEEPER_PATH

Kafka の設定を行う Zookeeper のノードを指定する。デフォルトは /

該当なし

M/I

優先リスナー

ブローカへの接続に特定のリスナーを使用します。設定されていない場合は、テスト接続に成功した最初のリスナーが使用されます。サポートされる値は、 PLAINTEXTSASL_PLAINTEXTSSLSASL_SSL です。注: SASL_* プロトコルは、Kerberos(GSSAPI)認証のみをサポートしています。

該当なし

M/I

ブートストラップ・ブローカー・ディスカバリー・アーギュメントautodiscover_strategyブートストラップ の場合にのみ関係する)。

' ' ' ' ' '

設定

説明

デフォルト

適用先

ブートストラップ_ブローカー_ホスト

ブートストラップ・ブローカーのホストです。

CONSUMER_OFFSETfalse KafkaBrokerSamplesKafkaTopicSamples に設定されている場合、収集されます。

該当なし

M/I

bootstrap_broker_kafka_port

ブートストラップ・ブローカーのKafkaポートです。

該当なし

M/I

bootstrap_broker_kafka_protocol

ブートストラップ・ブローカーへの接続に使用するプロトコルです。サポートされる値は、 PLAINTEXT, SASL_PLAINTEXT, SSL, SASL_SSL です。

SASL_* プロトコルは、Kerberos(GSSAPI)認証のみをサポートしていることに注意してください。

PLAINTEXT

M/I

bootstrap_broker_jmx_port

クラスター内の各ブローカの収集に使用するJMXポートです。

検出されたすべてのブローカーは、このポートでJMXがアクティブになっている必要があります。

該当なし

M/I

bootstrap_broker_jmx_user

クラスタ内の各ブローカの収集に使用するJMXユーザ。

該当なし

M/I

bootstrap_broker_jmx_password

クラスター内の各ブローカの収集に使用するJMXパスワードです。

該当なし

M/I

JMX の SSL とタイムアウトのオプション(インスタンス上のすべての JMX 接続に適用されます)。

' ' ' ' ' ' ' ' ' ' ' '

設定

説明

デフォルト

適用先

KEY_STORE

JMXクライアントのSSL証明書を含むキーストアのファイルパスです。

該当なし

M/I

キー・ストア・パスワード

JMXのSSLキーストアのパスワードです。

該当なし

M/I

TRUST_STORE

JMXサーバーのSSL証明書を含むトラストキーストアのファイルパスです。

該当なし

M/I

trust_store_password

JMXトラストストアのパスワードです。

該当なし

M/I

default_jmx_user

メトリクスを収集するために JMX ホストに接続しているデフォルトのユーザーです。JMX ホストで username フィールドが省略された場合は、この値が使用されます。

admin

M/I

default_jmx_password

JMX ホストに接続するためのデフォルトのパスワードです。JMX ホストでパスワードフィールドが省略された場合は、この値が使用されます。

admin

M/I

タイムアウト

個々のJMXクエリのタイムアウト(単位:ミリ秒)。

10000

M/I

ブローカーのTLS接続オプション(ブローカープロトコルがSSLまたはSASL_SSLの場合に必要です)。

' ' ' ' ' '

設定

説明

デフォルト

適用先

TLS_CA_FILE

SSLおよびSASL_SSLリスナー用の認証局ファイル(PEM形式)です。

該当なし

M/I

TLS_CERT_FILE

SSLおよびSASL_SSLリスナー用のクライアント証明書ファイル(PEM形式)です。

該当なし

M/I

TLS_KEY_FILE

SSLおよびSASL_SSLリスナー用のクライアントキーファイル(PEM形式)です。

該当なし

M/I

TLS_INSECURE_SKIP_VERIFY

サーバーの証明書チェーンとホスト名の検証をスキップします。

false

M/I

ブローカーのSASLおよびKerberos接続オプション(ブローカープロトコルがSASL_PLAINTEXTまたはSASL_SSLの場合に必要)。

' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '

設定

説明

デフォルト

適用先

SASL_MECHANISM

使用するSASL認証のタイプです。サポートされているオプションは、 SCRAM-SHA-512, SCRAM-SHA-256, PLAIN, GSSAPI です。

該当なし

M/I

SASL_USERNAME

PLAINおよびSCRAMメカニズムで必要なSASLユーザー名。

該当なし

M/I

SASL_PASSWORD

PLAINおよびSCRAMメカニズムで必要なSASLパスワード。

該当なし

M/I

sasl_gssapi_realm

GSSAPI機構で必要なKerberosレルム。

該当なし

M/I

sasl_gssapi_service_name

GSSAPI機構で必要なKerberosサービス名です。

該当なし

M/I

sasl_gssapi_username

GSSAPI機構で必要なKerberosユーザー名。

該当なし

M/I

sasl_gssapi_key_tab_path

GSSAPI機構で必要なKerberos key tabのパス。

該当なし

M/I

sasl_gssapi_kerberos_config_path

GSSAPI機構で必要なKerberosのコンフィグパスです。

/etc/krb5.conf

M/I

sasl_gssapi_disable_fast_negotiation

FASTネゴシエーションを無効にします。

false

M/I

設定の例

データの検索と使用

このサービスからのデータは、インテグレーションダッシュボードにレポートされます。

Kafkaのデータは、以下の イベントタイプに添付されています。:

トラブルシューティング目的で、またはチャートとダッシュボードを作成するために、このデータのクエリを行えます。

データの検索・使用方法の詳細については、 インテグレーションデータを理解するを参照してください。

メトリックデータ

Kafkaインテグレーションでは、以下のメトリックデータ属性を収集します。各メトリック名の前には、 broker.consumer. のように、カテゴリインジケータとピリオドが付いています。

KafkaBrokerSampleイベント

メトリック

説明

broker.bytesWrittenToTopicPerSecond

ブローカーが1秒あたりにトピックに書き込んだバイト数。

ブローカー.IOInPerSecond

クラスター内のブローカーへのネットワークIOを1秒あたりのバイト数で表示しています。

broker.IOutPerSecond

クラスター内のブローカーのネットワークIOアウト(バイト/秒)。

broker.logFlushPerSecond

ログ・フラッシュ・レート

broker.messagesInPerSecond

着信メッセージ数/秒

follower.requestExpirationPerSecond

フォロワーに対するリクエストの失効率(1秒あたりの退避数)。

net.bytesRejectedPerSecond

拒否されたバイト数/秒

replication.isrExpandsPerSecond

ISRプールに参加するレプリカの割合。

replication.isrShrinksPerSecond

ISRプールから離れるレプリカの割合。

replication.leaderElectionPerSecond

リーダー選出率。

replication.uncleanLeaderElectionPerSecond

汚れたリーダーの選出率

replication.unreplicatedPartitions

複製されていないパーティションの数。

request.avgTimeFetch

フェッチリクエスト1回あたりの平均時間(単位:ミリ秒)。

request.avgTimeMetadata

メタデータ・リクエストの平均時間(単位:ミリ秒)。

request.avgTimeMetadata99Percentile

99パーセンタイルのメタデータ・リクエストの時間(ミリ秒)。

request.avgTimeOffset

オフセットリクエストの平均時間(単位:ミリ秒)。

request.avgTimeOffset99Percentile

99パーセンタイルのオフセット要求の時間(単位:ミリ秒)。

request.avgTimeProduceRequest

プロデュースリクエストの平均時間(単位:ミリ秒)。

request.avgTimeUpdateMetadata

メタデータを更新するリクエストの平均時間(ミリ秒)。

request.avgTimeUpdateMetadata99Percentile

99パーセンタイルのメタデータ更新要求の時間(単位:ミリ秒)。

request.clientFetchesFailedPerSecond

クライアントのフェッチリクエストの失敗数/秒。

request.fetchTime99Percentile

99パーセンタイルのフェッチリクエストの時間(単位:ミリ秒)。

request.handlerIdle

リクエストハンドラースレッドがアイドル状態である時間の平均割合。

request.produceRequestsFailedPerSecond

1秒あたりの失敗したプロダクション・リクエスト

request.produceTime99Percentile

99パーセンタイルのプロデュース依頼にかかる時間。

topic.diskSize

ディスク内トピック・サイズ。COLLECT_TOPIC_SIZEが有効な場合のみ存在します。

トピック.オフセット

トピック・オフセット。COLLECT_TOPIC_OFFSETが有効な場合のみ存在します。

KafkaConsumerSampleイベント

メトリック

説明

consumer.avgFetchSizeInBytes

特定のトピックのリクエストごとに取得されたバイト数の平均値。

consumer.avgRecordConsumedPerTopic

特定のトピックに対する各リクエストの平均レコード数。

consumer.avgRecordConsumedPerTopicPerSecond

特定のトピックについて、1秒間に消費されるレコードの平均数(単位:レコード/秒)。

consumer.bytesInPerSecond

コンシューマーバイト/秒。

consumer.fetchPerSecond

コンシューマがフェッチリクエストをブレイクスルーに送信する際の最小レート(1秒あたりのリクエスト数)。

consumer.maxFetchSizeInBytes

特定のトピックのリクエストごとに取得される最大バイト数。

consumer.maxLag

最大限のコンシューマー・ラグ。

consumer.messageConsumptionPerSecond

コンシューマのメッセージ消費率(1秒あたりのメッセージ数)。

consumer.offsetKafkaCommitsPerSecond

Kafkaへのオフセットコミットの割合(コミット数/秒)。

consumer.offsetZooKeeperCommitsPerSecond

ZooKeeper へのオフセットコミットの割合 (Write per Second)。

consumer.requestsExpiredPerSecond

遅延したコンシューマ・リクエストの失効率(1秒あたりのエヴィジョン数)。

KafkaProducerSampleイベント

メトリック

説明

producer.ageMetadataUsedInMilliseconds

現在使用されているプロデューサーメタデータの年齢(秒単位)。

producer.availableBufferInBytes

使用されていないバッファメモリの総量(単位:バイト)。

producer.avgBytesSentPerRequestInBytes

パーティションごとのリクエストごとの平均送信バイト数。

producer.avgCompressionRateRecordBatches

レコードバッチの平均圧縮率

producer.avgRecordAccumulatorsInMilliseconds

レコードバッチがレコードアキュムレータにかかった平均時間(ms)。

producer.avgRecordSizeInBytes

平均レコードサイズ(単位:バイト)。

producer.avgRecordsSentPerSecond

1秒間に送信されるレコードの平均数。

producer.avgRecordsSentPerTopicPerSecond

トピックの1秒あたりの平均送信レコード数。

プロデューサー.AbgRequestLatencyPerSecond

プロデューサーの平均リクエストレイテンシー。

producer.avgThrottleTime

ブローカーによってリクエストがスロットルされた平均時間(ミリ秒)。

producer.bufferMemoryAvailableInBytes

クライアントが使用できるバッファメモリの最大量(単位:バイト)。

producer.bufferpoolWaitTime

アペンダーがスペースの割り当てを待つ時間の派閥。

producer.bytesOutPerSecond

プロデューサーバイト/秒アウト。

producer.compressionRateRecordBatches

あるトピックのレコードバッチの平均圧縮率。

プロデューサー.iOWaitTime

プロデューサーI/Oの待ち時間(ミリ秒)。

producer.maxBytesSentPerRequestInBytes

パーティションごとに送信される最大バイト数 per-request。

producer.maxRecordSizeInBytes

最大レコードサイズ(単位:バイト)。

producer.maxRequestLatencyInMilliseconds

最大リクエストレイテンシー(単位:ミリ秒)。

producer.maxThrottleTime

リクエストがブローカによってスロットルされた最大時間(単位:ミリ秒)。

producer.messageRatePerSecond

1秒あたりのプロデューサーメッセージ数

producer.responsePerSecond

1秒あたりのプロデューサーの応答数

producer.requestPerSecond

1秒あたりのプロデューサー・リクエストの数。

producer.requestsWaitingResponse

応答を待っている機内リクエストの現在の数。

producer.threadsWaiting

レコードをエンキューするためのバッファメモリを待ってブロックされたユーザースレッドの数。

KafkaTopicSampleイベント

メトリック

説明

topic.diskSize

ブローカーあたりの現在のトピックのディスクサイズ(単位:バイト)。

トピック.partitionsWithNonPreferredLeader

トピックごとのパーティションのうち、優先するレプリカに導かれていないパーティションの数。

topic.respondMetaData

メタデータの要求に応えたトピックの数

topic.retentionSizeOrTime

パーティションをサイズで保持するか、サイズと時間の両方で保持するか。値が0の場合は時間、値が1の場合はサイズと時間の両方です。

トピック.underReplicatedPartitions

アンダーレプリケートされているトピックごとのパーティションの数。

KafkaOffsetSampleイベント

メトリック

説明

consumer.offset

消費者グループがパーティション上で最後に消費したオフセット。

コンシューマー・ラグ

ブローカーのハイウォーターマークと消費者のオフセットの差(consumer.hwm - consumer.offset)。

consumer.hwm

パーティションに書き込まれた最後のメッセージのオフセット(ハイウォーターマーク)。

consumer.totalLag

コンシューマが消費するパーティション間のラグの合計。

consumerGroup.totalLag

consumerGroup によって消費されたすべてのパーティションのラグの合計です。

consumerGroup.maxLag

consumerGroup によって消費されるすべてのパーティション間の最大ラグです。

インベントリデータ

Kafka インテグレーションは、デフォルト以外のブローカとトピックの設定パラメータを取得し、ZooKeeper から報告されたトピック・パーティション・スキームを収集します。このデータは、 Inventory UI ページconfig/kafka source で利用できます。

トラブルシューティング

トラブルシューティングのヒント

' '

ソースコードのチェック

このインテグレーションは、オープンソース・ソフトウェアです。つまり、 そのソースコードを閲覧して 改良点を送ったり、自分でフォークを作って構築することができます。

問題を作成する
Copyright © 2022 New Relic Inc.