连接到hdinsight(azure)上安装的kafka

sauutmhj  于 2021-06-07  发布在  Kafka
关注(0)|答案(4)|浏览(393)

我需要从外部java应用程序连接到kafka集群,该集群是作为azure上hdinsight的一部分启动的。我有一个集群,有3个代理示例,3个zookeeper和一个zookeeper客户端。
现在我的问题是:如何指定代理连接字符串。在管理面板上,我可以看到3个代理,如: -1.yyy.zzz.internal.cloudapp.net , -2.yyy.zzz.internal.cloudapp.net -但是这些地址不能从外部获得。如果我试一下,我会看到一个例外:
kafkaexception:构造kafka使用者失败
...
configexception:bootstrap.servers中的url无效:-1.yyy.zzz.internal.cloudapp.net

2hh7jdfx

2hh7jdfx1#

检查Kafka配置并设置属性 auto.create.topics.enabletrue . 重新启动Kafka并重试。

fumotvh3

fumotvh32#

如果从本地网络连接,则需要设置站点到站点vpn网关,有关详细信息,请参阅从本地网络连接到apache kafka。
如果从单个计算机连接,则需要设置点到点vpn网关,有关详细信息,请参阅使用vpn客户端连接到apache kafka。

w80xi6nr

w80xi6nr3#

问题是您正在尝试解析内部azure主机名,这些主机名无法从internet解析。您还需要注意,从internet直接连接到Kafka示例是不可能的。
您需要另一个层/网关,如图中所示。
据我所知,你可以选择直接连接或使用其他层之间,如azure物联网枢纽和连接器。
您可以根据您的用例选择所需的服务,但请注意,这些服务不是免费的,并且根据您的数据大小,它可能会为您的收据添加重要的位置。

wh6knrhe

wh6knrhe4#

[root@domain bin]# ./kafka-console-producer.sh --broker-list host.domain.net:6667 --topic topic1 --security-protocol SASL_PLAINTEXT 
Test
[2017-04-11 09:07:43,821] WARN Error while fetching metadata with correlation id 0 : {topic1=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2017-04-11 09:07:44,022] WARN Error while fetching metadata with correlation id 1 : {topic1=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2017-04-11 09:07:44,122] WARN Error while fetching metadata with correlation id 2 : {topic1=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2017-04-11 09:07:44,223] WARN Error while fetching metadata with correlation id 3 : {topic1=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2017-04-11 09:07:44,323] WARN Error while fetching metadata with correlation id 4 : {topic1=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2017-04-11 09:07:44,423] WARN Error while fetching metadata with correlation id 5 : {topic1=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2017-04-11 09:07:44,523] WARN Error while fetching metadata with correlation id 6 : {topic1=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2017-04-11 09:07:44,624] WARN Error while fetching metadata with correlation id 7 : {topic1=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2017-04-11 09:07:43,821] WARN Error while fetching metadata with correlation id 0 : {topic1=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2017-04-11 09:07:44,022] WARN Error while fetching metadata with correlation id 1 : {topic1=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2017-04-11 09:07:44,122] WARN Error while fetching metadata with correlation id 2 : {topic1=UNKNOWN_TOPIC_OR_PARTI

如果您有3个代理kafka集群,它将抛出此错误。因此,无论何时运行kafka生产者和消费者,都要创建一个具有相同复制因子和代理数的主题。
命令

bin/kafka-topics.sh --create --topic test --zookeeper node1:2181,node2:2181,node3:2181 --partitions 1 --replication-factor 3

此命令用于3代理hdinsigt集群

相关问题