Tag: confluent kafka

使用Confluent.Kafka从.net核心服务写入Kafka

我有一个.net核心服务,从MEMSQL服务器获取数据并返回给客户端。 但是,在服务中生成的查询需要logging到Kafka集群。 我试着安装Confluent.Kafka软件包并进行日志logging,在本地运行时工作正常。 但在容器中,该服务无法logging并生成以下错误: warning NU1701: Package 'librdkafka.redist 0.9.5' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETCoreApp,Version=v2.0'. This package may not be fully compatible with your project. The type initializer for 'Confluent.Kafka.Impl.LibRdKafka' threw an exception. 容器在LINUX机器上运行。 基本上,我需要找出与.netcore 2.0兼容的Confluent.Kafka版本,而不依赖.NETFramework v4.6的版本。

第二和第三个分布的Kafka Connector工作人员无法正常工作

在Kafka集群3和Zookeeper集群相同的情况下,我创build了一个分布式连接器节点。 使用单个任务成功运行此节点。 然后我提出了第二个连接器,这似乎是运行的任务中的一些代码肯定跑了。 然而,它似乎并没有活下去(尽pipe没有错误抛出,没有保持活着是由缺乏预期的活动,而第一个连接器继续正常运行)。 当我在每个连接器节点上调用URL http://localhost:8083/connectors/mqtt/tasks ,它会告诉我连接器有一个任务。 我期望这是两个任务,每个节点/工作人员一个。 (目前工作人员configuration说tasks.max = 1但我也尝试将其设置为3。 当我尝试启动第三个连接器时,出现错误: "POST /connectors HTTP/1.1" 500 90 5 (org.apache.kafka.connect.runtime.rest.RestServer:60) ERROR IO error forwarding REST request: (org.apache.kafka.connect.runtime.rest.RestServer:241) java.net.ConnectException: Connection refused 试图再次从shell调用连接器POST方法返回错误: {"error_code":500,"message":"IO Error trying to forward REST request: Connection refused"} 我也尝试升级到今天发布的Apache Kafka 0.10.1.1。 我仍然看到问题。 每个连接器都运行在由单个映像定义的独立Docker容器上。 他们应该是相同的。 问题可能是我试图运行POST请求到每个worker上的http://localhost:8083/connectors ,当我只需要在单个worker上运行一次,然后该连接器的任务将自动分发给其他工人。 如果是这种情况,我如何获得分配的任务? 我目前有最多三个,但只有一个似乎是在一个单一的工作人员上运行。 更新 我最终用Yuribuild议的方法运行。 我给每个工人一个唯一的组ID,然后给每个连接器任务相同的名称。 这允许三个连接器和他们的单个任务共享一个偏移量,所以在接收器连接器的情况下,他们从卡夫卡消耗的消息不会被复制。 他们基本上是作为独立的连接器运行,因为工人有不同的组ID,因此不会相互通信。 如果连接器工作人员具有相同的组ID,则不能添加具有相同名称的多个连接器。 […]