Production checklist

Kafka production checklist: 5 checks before launch

5 checks for running Kafka in production: 2 should-dos and 3 good-to-haves. Each one says why it matters, how to verify it and where the docs are.

Updated . Every check links the vendor’s own docs.

Check my repo

Should do (2)

  • Enable TLS and SASL authentication with ACLs

    A default Kafka listener accepts any client in plain text.

    Verify from the command line

    Brokers have no PLAINTEXT listener reachable from outside, and each app has its own principal with ACLs.

    kafka-acls.sh --bootstrap-server <broker>:9093 --command-config admin.properties --list

    Read more on kafka.apache.org

  • Replication factor 3 with min.insync.replicas=2 for important topics

    Survives a broker loss without losing acknowledged messages.

    Verify from the command line

    Important topics show ReplicationFactor: 3 and min.insync.replicas=2, and producers send with acks=all.

    kafka-topics.sh --bootstrap-server <broker> --describe --topic <topic>

    Read more on kafka.apache.org

Good to have (3)

  • Turn off automatic topic creation

    A typo in a topic name otherwise creates a new topic with default settings, and messages quietly go there.

    Verify from the command line

    auto.create.topics.enable should be false.

    kafka-configs.sh --bootstrap-server <broker> --entity-type brokers --entity-name <broker-id> --describe --all | grep auto.create.topics.enable

    Read more on kafka.apache.org

  • Monitor consumer lag

    Growing lag is the first sign a consumer is stuck or too slow.

    Verify from the command line

    The LAG column should stay near zero under normal load; alert when it keeps growing.

    kafka-consumer-groups.sh --bootstrap-server <broker> --describe --group <group>

    Read more on kafka.apache.org

  • Set retention per topic to what you need

    The broker default either deletes data you need or keeps data you shouldn’t.

    Verify from the command line

    Each important topic sets retention.ms (or retention.bytes) on purpose.

    kafka-configs.sh --bootstrap-server <broker> --entity-type topics --entity-name <topic> --describe

    Read more on kafka.apache.org

Get the checklist for your whole stack

Design your stack or map your repo in StackPrism, and the Improve panel lists the checks for every technology on it and keeps track of what you’ve done. Building with an AI app builder? Start with the vibe coding checklist.