【问题标题】:Run Kafka Connect Workers in Kubernetes/OpenShift without posting configurations though REST API?在 Kubernetes/OpenShift 中运行 Kafka Connect Workers 而不通过 REST API 发布配置?
【发布时间】:2019-05-31 05:46:36
【问题描述】:

我想在 OpenShift 上运行 Kafka 连接工作程序。我想使用 OpenShift 来(自动)横向扩展。但是,我不清楚如何传递连接器配置,如果它通常是在启动后通过 REST 调用手动提供给特定工作人员的。

因此,问题是是否可以在不调用 REST 的情况下在启动时向工作人员提供完整的连接器规范。

【问题讨论】:

    标签: kubernetes openshift apache-kafka-connect


    【解决方案1】:

    在没有 REST 调用的启动时

    不,不是。见the issue I created for it。

    不过,您只需使用 REST 加载连接器配置一次。工作人员配置完全由环境变量驱动,并且扩展工作人员不需要发布新的连接器配置来扩展它们,除非您确实想增加 tasks.max。但是无论如何,您都可以将其作为 Kafka 分区的数量开始,这就是您对 Connect 的限制,即使只有一个工作人员也是如此。

    【讨论】:

      【解决方案2】:

      就个人而言,我认为您可以使用一些模板将信息注入kafka pod,例如deploymentConfig、statefulset、daemonset 等。

      例如下面这个链接说明了一个ruby应用如何通过注入环境变量来获取mysql连接信息。

      和上面的例子一样,你应该启动一些wrapper start script或binary of related application,它们是通过获取连接信息为environment variables来配置的。

      【讨论】:

      • 不确定 MySQL 与 Kafka 有什么关系。另外,问题是关于 Kafka Connect,而不是 Kafka Brokers,这些变量不适用于任何 Kafka Connect 图像
      • @cricket_007 感谢您指出不清楚。我的目的只是通过 OpenShift 上的 mysql 案例来介绍使用环境变量将连接信息注入到缩放的 Pod 的方法。
      • 我明白这一点,但您至少可以像问题所询问的那样显示 Kafka Connect 的变量
      猜你喜欢
      • 2019-08-08
      • 1970-01-01
      • 1970-01-01
      • 2017-05-27
      • 1970-01-01
      • 2019-09-12
      • 2021-01-10
      • 2021-01-30
      • 2021-06-24
      相关资源
      最近更新 更多