linkedin / linkedin/Burrow

Burrow not reading "__consumer_offsets" in front end environment

Open
#492 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
4k
Forks
818
Avg merge
1h 14m
Merged PRs (30d)
1

Description

Hi,

I had this problem a few months ago, put it away, and now I have to resolve it:

**Issue:** Burrow is unable to read the "__consumer_offsets" topic in both prod and most nonprod front end servers. It is the setup as our back end servers with different servers with its own kafka/zookeeper clusters in front end.

**Error:** `"topic":"__consumer_offsets","error":"kafka server: Request was for a topic or partition that does not exist on this broker."`

**Attempts to solve:**
- Set up TLS in config
- Tried variations of servers
- Tried different cluster names
- Changed ACL permissions on "__consumer_offsets" so anything (including burrow) can read it

**Note:** It is able to read every other topic besides "__consumer_offsets", so it doesn't seem like it's a connection/firewall issue. Also, the front end environment is under replicated, so could that be an issue as well (we're setting up a new environment)? I've only gotten burrow to work on one server in nonprod, and I'm unsure how it's the only one to work.

**Config:**
```
[general]
pidfile="/var/run/burrow/burrow.pid"
stdout-logfile=""
access-control-allow-origin="mysite.example.com"

[logging]
level="info"
filename="/var/log/burrow/burrow.log"
maxsize=100
maxbackups=10
maxage=10

[zookeeper]
servers=[ ]
client-profile="test"
topic-refresh=120
offset-refresh=30

[consumer.kafkafe]
class-name="kafka"
cluster="kafkafe"
servers=[ ]
client-profile="test"
offsets-topic="__consumer_offsets"
start-latest=true
group-whitelist=".*"
group-blacklist="^not-this-group$"

[consumer.kafkafezk]
class-name="kafka_zk"
cluster="kafkafe"
servers=[ ]
group-whitelist=".*"

[httpserver.default]
address=":8000"

[storage.default]
class-name="inmemory"
workers=20
intervals=15
expire-group=604800
min-distance=1
```

**Error Log:**
```
{"level":"info","ts":1549928899.04843,"msg":"Started Burrow"}
{"level":"info","ts":1549928899.0487099,"msg":"configuring","type":"coordinator","name":"zookeeper"}
`{"level":"info","ts":1549928899.0618434,"msg":"starting","type":"coordinator","name":"storage"}
{"level":"info","ts":1549928899.0618818,"msg":"starting","type":"module","coordinator":"storage","class":"inmemory","name":"default"}
{"level":"info","ts":1549928899.0619318,"msg":"starting","type":"coordinator","name":"evaluator"}
{"level":"info","ts":1549928899.0619419,"msg":"starting","type":"module","coordinator":"evaluator","class":"caching","name":"default"}
{"level":"info","ts":1549928899.061953,"msg":"starting","type":"coordinator","name":"httpserver"}
{"level":"info","ts":1549928899.062077,"msg":"started listener","type":"coordinator","name":"httpserver","listener":"[::]:8000"}
{"level":"info","ts":1549928899.0621018,"msg":"starting","type":"coordinator","name":"notifier"}
{"level":"info","ts":1549928899.062114,"msg":"starting","type":"coordinator","name":"cluster"}
{"level":"info","ts":1549928899.0621207,"msg":"starting","type":"module","coordinator":"cluster","class":"kafka","name":"kafkafe"}
{"level":"debug","ts":1549930671.0779998,"msg":"ok","type":"module","coordinator":"storage","class":"inmemory","name":"default","worker":7,"cluster":"kafkafe","consumer":"","topic":"","partition":1,"topic_partition_count":2,"offset":78,"timestamp":1549930671000,"owner":"","request":"StorageSetBrokerOffset"}
{"level":"debug","ts":1549930671.0781064,"msg":"ok","type":"module","coordinator":"storage","class":"inmemory","name":"default","worker":5,"cluster":"kafkafe","consumer":"","topic":"","partition":1,"topic_partition_count":2,"offset":4,"timestamp":1549930671000,"owner":"","request":"StorageSetBrokerOffset"}
{"level":"debug","ts":1549930671.0781448,"msg":"ok","type":"module","coordinator":"storage","class":"inmemory","name":"default","worker":11,"cluster":"kafkafe","consumer":"","topic":"","partition":3,"topic_partition_count":4,"offset":46049,"timestamp":1549930671000,"owner":"","request":"StorageSetBrokerOffset"}
{"level":"debug","ts":1549930671.0781722,"msg":"ok","type":"module","coordinator":"storage","class":"inmemory","name":"default","worker":1,"cluster":"kafkafe","consumer":"","topic":"","partition":0,"topic_partition_count":4,"offset":157331778,"timestamp":1549930671000,"owner":"","request":"StorageSetBrokerOffset"}
...
...
...
{"level":"info","ts":1549928899.0716186,"msg":"starting","type":"coordinator","name":"consumer"}
{"level":"info","ts":1549928899.0716984,"msg":"starting","type":"module","coordinator":"consumer","class":"kafka","name":"kafkafe"}
{"level":"error","ts":1549928899.8291814,"msg":"failed to get partition count","type":"module","coordinator":"consumer","class":"kafka","name":"kafkafe","topic":"__consumer_offsets","error":"kafka server: Request was for a topic or partition that does not exist on this broker."}
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the reported __consumer_offsets partition-count error with the front-end Kafka configuration and logs, then trace the Kafka consumer entry point that requests the partition count. Done means identifying why this topic is unavailable in that environment and documenting or implementing a confirmed resolution.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kafka
Domain
distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.