如果我无法直接访问Kafka群集,是否可以使用?

xmq68pz9  于 2021-06-05  发布在  Kafka
关注(0)|答案(1)|浏览(277)

我是新来Kafka连接。
场景:我们想要导出存储在kafka中多个(好的数字>400)主题中的数据,并将这些数据转储到ElasticSearch索引中。我们公司的Kafka是合流Kafka,它是煤油化的。我能够写生产者和消费者通过KafkaAPI,因为我们知道经纪人和keytab文件。
建议使用kafkaconnect,但由于它是一个多租户集群,ops团队可能无法提供直接访问,甚至无法运行插件安装命令。我们有自己的托管vm,在其中部署应用程序示例。
问-有没有可能在分布式模式下运行kafka连接,在我们的vms上安装连接器插件,而不是安装在合流的kafka上?我们能在没有任何命令的情况下运行连接器工作吗?我已经准备好将kafka connect连接器插件放在我的所有vm示例上。

更新

我们不允许在kafka connect集群上执行put请求(以创建新的连接器示例),所以仍然可以使用kafka connect吗?如果是,那么我们是否需要运行我们自己的kafka,并将引导服务器指定为生产kafka集群?找不到任何这样做的视频/文章。

enyaitl3

enyaitl31#

是的,这是可能的。实际上,在生产部署中,通常不会将kafka connect直接安装到kafka代理上。您可以在这里看到参考体系结构以获取更多信息。
kafka connect作为一个单独的进程运行到kafka代理,称为kafka connect worker。每个worker都是一个jvm进程,您可以使用kafka集群的详细信息来部署和配置它,它连接到这个集群并充当生产者/消费者(取决于它是否是您正在创建的源/接收器)。这个演讲解释了运行时的一些基础知识。
因此,您可以提供一台或多台要在其上运行kafka connect的计算机,为它们提供相同的组id,以便它们形成一个集群(kafka connect worker),它们连接到您的kafka集群(就像任何与集群分离的生产者/消费者应用程序一样),并在kafka connect worker上安装所需的插件。
要将数据加载到elasticsearch,您可以使用kafka connect elasticsearch插件,这里有一个教程供您观看。

相关问题