1
私は3ノードカフカクラスターをセットアップしました。私はプロデューサークライアントのために利用可能なブローカーを知りたい。飼い主に接続しているブローカーを一覧表示するコマンドはありますか?カフカプロデューサーは、どのように動物園の利用可能なブローカーを知っていますか?
私は3ノードカフカクラスターをセットアップしました。私はプロデューサークライアントのために利用可能なブローカーを知りたい。飼い主に接続しているブローカーを一覧表示するコマンドはありますか?カフカプロデューサーは、どのように動物園の利用可能なブローカーを知っていますか?
あなたは/ブローカー/ IDSでブローカーのIDを反復して、これらのIDからブローカーの情報を取得することでのZooKeeperを経由してブローカーのリストを取得することができます。
ZooKeeper zk = new ZooKeeper("localhost:2181", 10000, null);
List<String> ids = zk.getChildren("/brokers/ids", false);
for (String id : ids) {
String brokerInfo = new String(zk.getData("/brokers/ids/" + id, false, null));
System.out.println(id + ": " + brokerInfo);
}
注:このアプローチは、唯一の後方でサポートされていますが古いクライアントの互換性があり、SASL_SSLなどのセキュリティが設定されたサーバでは機能しません。 https://issues.apache.org/jira/browse/KAFKA-3948を参照してください。新しいアプローチは、ホスト名とポート番号を含むエンドポイントを解析して処理することです。 "エンドポイント":["SASL_SSL:// kafka01:9093"]、 "エンドポイント":["PLAINTEXT://127.0.0.1:9092"]、 – JulianHarty