From Zero to Hello World with Apache Kafka® in 2025

This is a guide on how to run Apache Kafka® locally, and how to start using it. I found the resources I used myself to be needlessly and frustratingly complicated, as well as outdated. Thus my goal is to give a simple set of instructions that works almost everywhere, regardless of operating system, etc. Structure The guide has three parts. Install podman and use it to start an Apache Kafka®-cluster Configure IntelliJ IDEA to connect to the Apache Kafka®-cluster. Write two separate programs in Java that publishes and consumes a “Hello, world!"-record respectively. 💡 If the nomenclature specific to Apache Kafka® is confusing, I have written a short explanation of the core concepts. ...

March 7, 2025 · 7 min · Kristoffer Opsahl

Core Concepts in Apache Kafka®

This post is intented to give a high-level description of the basic components of Apache Kafka® (Kafka) for someone that is entirely new to it, and that is sufficient to get building. For significantly more detail and nuance, refer to the official documentation. Records Records are the fundamental units of data in Kafka. They describe the idea that something happened, i.e. events, and are immutable data structures containing some combination of data and metadata. ...

March 6, 2025 · 3 min · Kristoffer Opsahl