/kafka-zero-to-hero

Kafka Zero to Hero Workshop

Primary LanguageJavaScript

Kafka Zero to Hero Workshop

Welcome to the Kafka Zero to Hero workshop using AMQ Streams. AMQ Streams is the supported version of the open-source project https://strimzi.io by Red Hat.

Kafka Zero to Hero Workshop

This is a hands-on workshop that aims to give you basic practical experience with the main components of Kafka within the Kubernetes.

Introduction

Apache Kafka has become the leading platform for building real-time data pipelines. Today, Kafka is heavily used for developing event-driven applications, where it lets services communicate with each other through events. Using Kubernetes for this type of workload requires adding specialized components such as Kubernetes Operators and connectors to bridge the rest of your systems and applications to the Kafka ecosystem.

AMQ streams, a Red Hat Application Foundation component, makes Apache Kafka “OpenShift native” through the use of powerful operators that simplify the deployment, configuration, management, and use of Apache Kafka on Red Hat OpenShift.

Audience

  • Developers

  • Architects

  • Data Integrators

Duration

This workshop introduces participants to AMQ through a presentation and hands-on lab format. This workshop is intended to be completed in a half-day (4hrs) session.

Agenda

Concepts - Kafka 101

Duration: 90 minutes with demos

Presentation Deck (Red Hat Internal Only)

  1. Event Driven Architecture

  2. Kafka

  3. Kafka Brokers

  4. Kafka High Availability

  5. Kafka Leaders / Replicas

  6. Kafka Mirror Maker

  7. Kafka Store

  8. Kafka Security

  9. Kafka Connect vs Camel

  10. Kafka on Kubernetes (Strimzi)

Support material for this phase: Red Hat Developers x`x`- Kafka 101.

Using the Ansible playbook

Parameters

Parameter Example Value Definition

tkn

sha256~vFanQbthlPKfsaldJT3bdLXIyEkd7ypO_XPygY1DNtQ

Access token for a user with cluster-admin privileges.

server

https://api.cluster-xyz.xyz.sandbox9999.opentlc.com:6443

The cluster’s OpenShift API URL

num_users

8

Number of users attending the workshop. Have in mind that the more users you have, more resources you are going to need from the cluster.

delete_workshop

false

Only use this parameter if you intend to delete the installation and preserve the cluster.

export tkn=sha256~UNFpoNDl1kPJ-nEhUzt-hljRpCBndpk66t1UycKj4Z4
export server=https://api.cluster-96npr.96npr.sandbox1420.opentlc.com:6443
export num_users=1

Running the playbook

  • Replace the environment variable values:

export tkn=CHANGEME
export server=CHANGEME
export num_users=CHANGEME

cd ansible

ansible-playbook -e tkn=${tkn} -e server=${server} -e num_users=${num_users} playbook.yml

Getting the user registration page

The URL will be displayed by the Installation Finished task.

User Distribution