分区未分配给Kafka使用者实例

时间:2018-05-29 06:41:07

标签: python apache-kafka kafka-consumer-api kafka-python

当我使用单个实例启动使用者时,它会显示在使用者组中,但它不会消耗主题中的数据。之后,如果我启动另一个消费者并且我的第一个消费者开始消费数据,但最新的消费者实例没有分配任何分配。

下面的

是第一个消费者实例启动时的信息日志。

  

信息:kafka.client:从[(' kafka-broker1.ap-south-1.staging.internal',9092,0)引导群集元数据]   信息:kafka.conn ::连接到172.31.1.66:9092   信息:kafka.client:Bootstrap成功:找到3个经纪人和19个主题。   信息:kafka.conn ::关闭连接。   信息:kafka.conn ::连接到172.31.1.148:9092   信息:kafka.conn:经纪人版本标识为0.11.0   信息:kafka.conn:设置配置api_version =(0,11,0)以在启动时跳过自动check_version请求   信息:kafka.consumer.subscription_state:订阅模式:/ events /   信息:kafka.conn ::连接到172.31.1.70:9092   信息:kafka.cluster:datadog的组协调器是BrokerMetadata(nodeId = 1,host = u' kafka-broker1.ap-south-1.staging.internal',port = 9092,rack = None)   信息:kafka.coordinator:发现组datadog的协调器1   信息:kafka.conn ::连接到172.31.1.66:9092   信息:kafka.coordinator.consumer:撤消以前为组datadog分配的分区集([])   信息:kafka.coordinator :(重新)加入组datadog   信息:kafka.consumer.subscription_state:将订阅的主题更新为:[u' events']   信息:kafka.coordinator:加入群组' datadog' (第843代)使用member_id kafka-python-1.3.5-e3c25fb3-39ea-4550-845f-9b663355b4f5   信息:kafka.coordinator:使用第843代成功加入了group datadog   信息:kafka.consumer.subscription_state:更新的分区分配:[]   信息:kafka.coordinator.consumer:为组datadog设置新分配的分区([])

当我启动第二个实例时,第一个实例分配了分区,第二个实例分配了0个分区,并且在启动第二个实例之前具有与第一个实例相同的信息日志。

下面是第二个实例启动后的第一个实例的信息日志。

  

信息:kafka.coordinator.consumer:为组datadog设置新分配的分区([])   警告:kafka.coordinator:组数据路径的心跳失败,因为它正在重新平衡   警告:kafka.coordinator:心跳失败([错误27] RebalanceInProgressError);重试   信息:kafka.coordinator.consumer:撤消以前为组datadog分配的分区集([])   信息:kafka.coordinator :(重新)加入组datadog   信息:kafka.coordinator:跳过心跳:没有自动分配或等待重新平衡   信息:kafka.coordinator:加入群组' datadog' (代843)与member_id kafka-python-1.3.5-ddb66185-c615-4f31-9729-9384131f24c9   信息:kafka.coordinator:当选组长 - 使用范围执行分区分配   信息:kafka.coordinator:使用第843代成功加入了group datadog   信息:kafka.consumer.subscription_state:更新的分区分配:[TopicPartition(主题= u'事件',分区= 0),TopicPartition(主题= u'事件',分区= 1),TopicPartition (topic = u' events',partition = 2),TopicPartition(topic = u' events',partition = 3),TopicPartition(topic = u' events',partition = 4),TopicPartition(topic = u' events',partition = 5),TopicPartition(topic = u' events',partition = 6),TopicPartition(topic = u' events&#39 ;,partition = 7),TopicPartition(topic = u' events',partition = 8),TopicPartition(topic = u' events',partition = 9)]   信息:kafka.coordinator.consumer:设置新分配的分区集([TopicPartition(主题= u'事件',分区= 6),TopicPartition(主题= u'事件',分区= 7) ,TopicPartition(topic = u' events',partition = 8),TopicPartition(topic = u' events',partition = 9),TopicPartition(topic = u' events', partition = 0),TopicPartition(topic = u' events',partition = 1),TopicPartition(topic = u' events',partition = 2),TopicPartition(topic = u' events&对于组datadog,#39;,partition = 3),TopicPartition(topic = u' events',partition = 4),TopicPartition(topic = u' events',partition = 5)]) / p>

在所有情况下,我们总是有1个带有未分配分区的消费者实例,最后一个消费者实例总是分配0个分区

**以下是相同**的屏幕截图

No partitions assigned to first consumer instance

No partitions assigned to last consumer instance

我们也怀疑卡夫卡的聚集。当我们只有1个kafka节点分区分配给消费者实例并且重新平衡工作正常。但进入多节点群集后,我们面临着这个问题

0 个答案:

没有答案