Bird
Raised Fist0
Kafkadevops~10 mins

Broker nodes in Kafka - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to specify the broker address in the Kafka producer configuration.

Kafka
producer = KafkaProducer(bootstrap_servers='[1]')
Drag options to blanks, or click blank then click option'
A127.0.0.1:2181
Blocalhost:9092
Ckafka-broker:2181
Dbroker-node:2183
Attempts:
3 left
💡 Hint
Common Mistakes
Using Zookeeper port 2181 instead of broker port 9092.
Using IP without port number.
2fill in blank
medium

Complete the code to list all broker nodes in a Kafka cluster using the AdminClient.

Kafka
admin_client = AdminClient({'bootstrap.servers': '[1]'})
brokers = admin_client.describe_cluster().brokers
Drag options to blanks, or click blank then click option'
Alocalhost:9092
Bbroker1:2183
Czookeeper:2181
Dkafka:9093
Attempts:
3 left
💡 Hint
Common Mistakes
Using Zookeeper address instead of broker address.
Using wrong port number.
3fill in blank
hard

Fix the error in the code to correctly connect to a Kafka broker node.

Kafka
consumer = KafkaConsumer('my_topic', bootstrap_servers='[1]')
Drag options to blanks, or click blank then click option'
Alocalhost:9092
Bzookeeper:9092
Cbroker-node:2181
Dkafka:2183
Attempts:
3 left
💡 Hint
Common Mistakes
Using Zookeeper address or port.
Using incorrect port number.
4fill in blank
hard

Fill both blanks to create a dictionary comprehension that maps broker IDs to their hostnames.

Kafka
broker_map = {broker.[1]: broker.[2] for broker in cluster.brokers()}
Drag options to blanks, or click blank then click option'
Aid
Bhost
Cport
Dname
Attempts:
3 left
💡 Hint
Common Mistakes
Using port or name instead of host.
Mixing up id and host.
5fill in blank
hard

Fill all three blanks to filter brokers with port greater than 9092 and create a dictionary of their IDs and hosts.

Kafka
filtered_brokers = {broker.[1]: broker.[2] for broker in cluster.brokers() if broker.[3] > 9092}
Drag options to blanks, or click blank then click option'
Aid
Bhost
Cport
Dname
Attempts:
3 left
💡 Hint
Common Mistakes
Filtering by id or host instead of port.
Mixing up keys and values in the dictionary.

Practice

(1/5)
1.

What is the primary role of a broker node in Kafka?

easy
A. Store and manage Kafka messages
B. Produce messages to topics
C. Consume messages from topics
D. Monitor network traffic

Solution

  1. Step 1: Understand broker node function

    A broker node is a Kafka server that stores and manages messages.
  2. Step 2: Differentiate roles

    Producers send messages, consumers read them, but brokers store/manage them.
  3. Final Answer:

    Store and manage Kafka messages -> Option A
  4. Quick Check:

    Broker = Store/manage messages [OK]
Hint: Broker nodes store messages; producers and consumers do not [OK]
Common Mistakes:
  • Confusing brokers with producers or consumers
  • Thinking brokers monitor network traffic
  • Assuming brokers only route messages
2.

Which of the following is the correct way to specify a broker's unique ID in the Kafka server.properties file?

easy
A. broker.id=1
B. brokerID=1
C. broker-id=1
D. brokerId=1

Solution

  1. Step 1: Recall Kafka broker ID syntax

    The correct property name is broker.id with a dot separator.
  2. Step 2: Check options for exact match

    Only broker.id=1 matches Kafka's expected syntax.
  3. Final Answer:

    broker.id=1 -> Option A
  4. Quick Check:

    Broker ID property uses dot notation [OK]
Hint: Broker ID uses dot notation: broker.id [OK]
Common Mistakes:
  • Using camelCase or hyphens instead of dot
  • Misspelling the property name
  • Confusing broker.id with other properties
3.

Given the following snippet from a Kafka server.properties file:

broker.id=2
listeners=PLAINTEXT://localhost:9093
log.dirs=/tmp/kafka-logs-2

What will be the broker's ID and listening port when Kafka starts?

medium
A. Broker ID 1, listening on port 9092
B. Broker ID 2, listening on port 9093
C. Broker ID 2, listening on port 9092
D. Broker ID 1, listening on port 9093

Solution

  1. Step 1: Identify broker ID from properties

    The property broker.id=2 sets the broker ID to 2.
  2. Step 2: Identify listener port

    listeners=PLAINTEXT://localhost:9093 means the broker listens on port 9093.
  3. Final Answer:

    Broker ID 2, listening on port 9093 -> Option B
  4. Quick Check:

    broker.id=2 and port=9093 [OK]
Hint: Broker ID and port come directly from properties file [OK]
Common Mistakes:
  • Assuming default port 9092 without checking listeners
  • Mixing up broker IDs
  • Ignoring the listeners property
4.

Consider this server.properties snippet:

broker.id=abc
listeners=PLAINTEXT://localhost:9092

What is the issue when starting Kafka with this configuration?

medium
A. broker.id can be a string, so no issue
B. listeners property is missing a port
C. Kafka will ignore broker.id and assign default
D. broker.id must be an integer, so 'abc' causes an error

Solution

  1. Step 1: Check broker.id value type

    Kafka requires broker.id to be an integer number.
  2. Step 2: Identify invalid value

    Setting broker.id=abc is invalid and causes startup error.
  3. Final Answer:

    broker.id must be an integer, so 'abc' causes an error -> Option D
  4. Quick Check:

    broker.id integer required [OK]
Hint: broker.id must be a number, not letters [OK]
Common Mistakes:
  • Assuming broker.id can be string
  • Ignoring error messages on startup
  • Thinking Kafka assigns default broker.id automatically
5.

You want to run three Kafka broker nodes on the same machine for testing. Which configuration change is essential for each broker to avoid conflicts?

hard
A. Use the same broker.id but different log.dirs
B. Keep listeners port same but change broker.id
C. Assign unique broker.id and different listeners ports
D. Only change log.dirs for each broker

Solution

  1. Step 1: Understand broker uniqueness requirements

    Each broker must have a unique broker.id to identify it in the cluster.
  2. Step 2: Avoid port conflicts

    Each broker must listen on a different port to avoid network conflicts.
  3. Final Answer:

    Assign unique broker.id and different listeners ports -> Option C
  4. Quick Check:

    Unique IDs and ports prevent conflicts [OK]
Hint: Unique broker.id and ports prevent conflicts [OK]
Common Mistakes:
  • Using same broker.id for multiple brokers
  • Using same port for multiple brokers
  • Only changing log directories without ports or IDs
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard