首页 文章

Kafka Connect分布在哪个节点上应用于Azure Kafka for HD Insight?

提问于
浏览
3

我们在内部运行了很多连接器,我们需要转到Azure . 这些内部部署机器在4个节点上运行Kafka Connect API . 我们在所有这些机器上部署此API执行此操作:

export CLASSPATH = / path / to / connectors-jars /usr/hdp/current/kafka-broker/bin/connect-distributed.sh distributed.properties

我们在Azure Kafka上部署了Kafka用于HD Insight . 我们需要至少2个运行分布式Connect API的节点,我们不知道在哪里部署它们:

  • 在头节点上(我们仍然不知道它们的用途)

  • 在工作节点上(kafka经纪人居住的地方)

  • 在边缘节点上

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

1 回答

  • 0

    Kafka 经纪人居住的地方

    理想情况下,没有 . 批处理大量记录时,Connect会占用大量内存 . 该内存最好留给代理的页面缓存 .

    在边缘节点上

    可能不是 . 这是用户与群集交互的地方 . 你不希望他们戳你的配置或意外地以其他方式搞乱这些过程 . 例如,我们有人填充边缘节点本地磁盘,因为他们正在将大量数据复制到“边缘”内外 .

    在头节点上

    也许?但话说回来,那些只是集群管理服务,可能没有什么内存 .


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

相关问题