Deploying Confluent Kafka (Enterprise) for Kubernetes

Tram Ho

Confluent Kafka makes it easy to connect your applications and systems to data streams and process them in real time. Confluent Platform provides a simpler solution to deploying Kafka clusters on Docker and Kubernetes than Apache Kafka

Prerequisites

  • Kubectl and Helm 3 already installed
  • For this tutorial, your Kubernetes cluster is assumed to already have a default dynamic storage provisioner . Use the kubectl get sc command to check if the Kubernetes cluster has a default dynamic storage provisioner.

image.png

Step 1: Create a namespace

Set the confluent namespace to the default namespace

Step 2: Install Confluent Platform for Kubernetes

Add Confluent to Helm repository.

Install Confluent Platform using helm

Make sure the Operator is running and ready before going to the next step

image.png

Step 3: Install Confluent Platform components

Confluent Platform components include:

  • Zookeepers
  • Kafka Brokers
  • Kafka Connectors
  • KsqlDB
  • Control Center (Kafka Web UI)
  • Schema Registry
  • Kafka Rest Proxy

Install a producer app and create a topic for testing.

Check if everything is Running and Ready:

image.png

Step 4: Create External Load balancer for Control Center

Create a file control-center.yaml with the following content:

Use kubectl to apply the configuration file and check if the Load balancer has been created successfully

image.png

Open the Web Browser and go to the address <External-IP>:9021

image.png

Brief introduction about Control Center:

Here is the main interface: image.png

Brokers: Monitor the status of Brokers nodes image.png

Topics: Review created Topics, see msg inside each Topic, Produce msg image.png

image.png

Connect: Manage sources, sink connectors image.png

KsqlDB: Handling Kafka Stream related tasks image.png

 

Share the news now

Source : Viblo