Charmed Kafka K8s tutorial
The Charmed Kafka Operator delivers automated operations management from Day 0 to Day 2 on the Apache Kafka event streaming platform. It is an open source, end-to-end, production-ready data platform on top of Juju. As a first step this tutorial shows you how to get Charmed Kafka K8s up and running, but the tutorial does not stop there. As currently Kafka requires a paired ZooKeeper deployment in production, this operator makes use of the ZooKeeper Operator for various essential functions. Through this tutorial you will learn a variety of operations, everything from adding replicas to advanced operations such as enabling Transcript Layer Security (TLS).
In this tutorial we will walk through how to:
- Set up an environment using Multipass with MicroK8s and Juju.
- Deploy Kafka using a couple of commands.
- Get the admin credentials directly.
- Add high availability with replication.
- Change the admin password.
- Automatically create Kafka users via Juju relations.
- Enable secure connection with TLS.
While this tutorial intends to guide and teach you as you deploy Charmed Kafka, it will be most beneficial if you already have a familiarity with:
- Basic terminal commands.
- Kafka concepts such as replication and users.
Minimum requirements
Before we start, make sure your machine meets the following requirements:
- Ubuntu 20.04 (Focal) or later.
8
GB of RAM.2
CPU threads.- At least
20
GB of available storage. - Access to the internet for downloading the required snaps and charms.
Step-by-step guide
Here’s an overview of the steps required with links to our separate tutorials that deal with each individual step:
- Set up the environment
- Deploy Kafka
- Integrate with client applications
- Manage passwords
- Enable encryption
- Reassign partitions
- Cleanup your environment