このトピックでは、Kafka JMX エージェントをデプロイおよび構成する方法について説明します。
制限
Kafka JMX エージェントは、Container Service 用 Prometheus インスタンスまたはECS 用 Prometheus インスタンスにのみデプロイできます。
ステップ 1:Kafka JMX エージェントをデプロイする
Kafka が存在するポッドまたは ECS インスタンスに、kafka JMX-Agent パッケージをダウンロードします。
Kafka Producer、Broker、および Consumer の Java 仮想マシン(JVM)起動パラメーターに、
-javaagent:/{jmx-agent directory}/kafka-jmx_prometheus_javaagent-1.18.1.jar={jmx listening port}を追加します。jmx-agent directory:Kafka JMX エージェントが保存されている実際のディレクトリに置き換えます。
jmx listening port:実際の JMX リスニングポートに置き換えます。

Kafka Producer、Broker、および Consumer を再起動します。
Kafka Producer、Broker、および Consumer で Kafka JMX エージェントが想定どおりに実行されているかどうかを確認します。 各ポッドまたは ECS インスタンスで
curl localhost:{jmx listening port}/metricsコマンドを実行して、通常のメトリックデータが返されるかどうかを確認します。 通常のメトリックデータが返された場合、Kafka JMX エージェントは Kafka Producer、Broker、および Consumer で想定どおりに実行されています。jmx listening port:実際の JMX リスニングポートに置き換えます。

(オプション)ステップ 2:コンテナーのポート番号を構成する
Container Service 用 Prometheus インスタンスに Kafka JMX エージェントをデプロイする場合、コンテナーのポート番号も構成する必要があります。 これにより、Managed Service for Prometheus は Kafka JMX エージェントのデータをキャプチャできます。 ECS 用 Prometheus インスタンスに Kafka JMX エージェントをデプロイする場合は、このステップをスキップします。
ACK コンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターを見つけ、その名前をクリックします。 左側のペインで、 を選択します。
管理するデプロイメントの [アクション] 列で、[編集] をクリックします。
表示されたパネルで、[名前]、[コンテナーポート]、および [プロトコル] を設定します。

[名前]:Kafka JMX エージェントのポート名。 例:app1-kafka-jmx。
[コンテナーポート]:ステップ 1:Kafka JMX エージェントをデプロイする で定義されている JMX リスニングポート。
[プロトコル]:[TCP] を選択します。
ステップ 3:Kafka ポッドまたは ECS インスタンスにタグを付ける
Managed Service for Prometheus は、タグを使用してポッドまたは ECS インスタンスを識別し、サービスディスカバリを実装できます。 そのため、Kafka ポッドまたは ECS インスタンスにタグを付ける必要があります。 Kafka ポッドまたは ECS インスタンスにタグを付けている場合は、このステップをスキップできます。
Container Service 用 Prometheus インスタンスのタグを構成する
{カスタムタグキー}:{カスタムタグ値} の形式で、Kafka Producer、Broker、および Consumer のポッドのタグを構成します。 例:arms-kafka-exporter:my-kafka1。 次の手順を実行してタグを構成します。
ACK コンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターを見つけ、その名前をクリックします。 左側のペインで、 を選択します。
[ポッド] ページで、管理するポッドの [編集][アクション] 列の をクリックします。
表示されたページで、ラベルを追加し、[更新] をクリックします。

ECS 用 Prometheus インスタンスのタグを構成する
{カスタムタグキー}:{カスタムタグ値} の形式で、Kafka Producer、Broker、および Consumer の ECS インスタンスのタグを構成します。 例:arms-kafka-exporter:my-kafka1。 ECS インスタンスのタグを作成する方法の詳細については、「タグ」をご参照ください。
次のステップ
Kafka JMX エージェントを構成した後、Managed Service for Prometheus コンソールでモニタリングデータを表示するようにエージェントを構成できます。 詳細については、「Managed Service for Prometheus を使用して自己管理 Kafka クラスタと ApsaraMQ for Kafka インスタンスを監視する」をご参照ください。