在哪些节点上应将Kafka连接分布式分布在Azure Kafka上,以获取HD Insight



我们在前提上运行了许多连接器,我们需要转到Azure。这些在前提机上正在运行4个节点上的Kafka Connect API。我们在所有这些机器上部署此API:

export classpath =/path/to/connectors-jars

/usr/hdp/current/kafka-broker/bin/connect-distributed.sh distribute.properties

我们已将Kafka部署在Azure Kafka上,以获得HD Insight。我们至少需要2个运行分布式Connect API的节点,我们不知道在哪里部署它们:

  • 在头节点上(我们仍然不知道它们是用什么(
  • 关于工人节点(Kafka Brokers Live(
  • 在边缘节点上

我们还有Azure AKS运行容器。我们应该在AKS上部署分布式连接API吗?

kafka Brokers Live

理想情况下,没有。批处理大量记录时,Connect使用大量内存。最好留给经纪人的页面缓存。

在边缘节点上

可能不是。那就是您的用户与群集交互的地方。您不希望他们以您的配置戳戳或以其他方式不小心弄乱了这些过程。例如,我们有人填充了一个局部磁盘,因为他们正在复制大量数据进出"边缘"。

在头节点上

也许?但是话又说回来,这些仅用于集群管理服务,可能几乎没有内存。


更好的解决方案 - 在Azure中仅运行Kafka Connect 的Azure HD Insights之外运行专用实例。也许在Kubernetes中将它们作为容器运行,因为它们是完全无状态的服务,只需要访问您的来源即可。下沉和用于传输数据的Kafka经纪人。这样,它们可以与Hortonworks和Hdinsights提供的内容分开升级和配置。

相关内容

  • 没有找到相关文章

最新更新