26

我正在玩Kafka-Connect。我已经HDFS connector独立模式分布式模式下工作。

他们宣传可以通过管理工作人员(负责运行连接器)YARN 但是,我还没有看到任何描述如何实现此目标的文档。

我该如何去YARN处决工人?如果没有具体的方法,是否有关于如何让应用程序在其中运行的通用方法YARN

我已经YARN与 SPARK 一起使用过spark-submit,但是我无法弄清楚如何让连接器在YARN.

4

1 回答 1

8

理论上你可以在 YARN 上运行任何东西,甚至是一个简单的 hello world 程序。这就是为什么说 Kafka-Connect 在 YARN 上运行在技术上是正确的。需要注意的是,让 Kafka-Connect 在 YARN 上运行目前需要大量的肘部油脂。有两种方法可以做到:

  1. 直接与 YARN API 对话以获取容器、部署 Kafka-Connect 二进制文件并启动 Kafka-Connect。
  2. 使用Stephane 在评论中已经提到的单独的 Slider 项目https://slider.incubator.apache.org/docs/getting_started.html 。

滑块

您必须阅读大量文档才能使其正常工作,但 Slider 背后的想法是,您可以让任何程序在 YARN 上运行,而无需处理 YARN API 并通过执行以下操作编写 YARN 应用程序主控:

  • 从您的程序中创建一个滑块包
  • 为您的包定义配置
  • 使用滑块 cli 将应用程序部署到 YARN

Slider 为您处理容器部署和故障容器的恢复,这很好。当 YARN 3.0 发布时,Slider 也成为 YARN 的原生部分。

备择方案

顺便说一句,让 Kafka-Connect 部署在 Kubernetes 或 Mesos / Marathon 上可能会更容易。这样做的基本工作流程是:

  • 创建一个 Kafka-Connect docker 容器或只使用 confluent 的docker 容器
  • 为 Kubernetes 或 Marathon 创建部署配置
  • 单击按钮/运行命令

教程

于 2018-02-11T05:25:58.067 回答