"Apache Kafka for OpenShift"

Run Apache Kafka and Apache ZooKeeper on OpenShift v3.

This was developed for demonstration purposes. Use in environments where you do not need persistence in the face of failures or configuration tuning for scale.

The architecture is as follows:

  • 1 pod containing a container for Apache Kafka and Apache ZooKeeper
  • 1 service to access the containers

Quick start

  1. Load resources (Templates, DeploymentConfigs, Services)
oc create -f https://raw.githubusercontent.com/mattf/openshift-kafka/master/resources.yaml
  1. Deploy the Apache Kafka + Apache Zookeeper pod
oc new-app apache-kafka
  1. Deploy a debugging container and connect to it
oc run -it --rm kafka-debug --image=mattf/openshift-kafka --command -- bash
  1. Create a topic
bin/kafka-topics.sh --create --zookeeper apache-kafka --replication-factor 1 --partitions 1 --topic test
  1. List topics
bin/kafka-topics.sh --list --zookeeper apache-kafka
  1. Send some messages
bin/kafka-console-producer.sh --broker-list apache-kafka:9092 --topic test <<EOF
foo
bar
baz
EOF
  1. Receive some messages
bin/kafka-console-consumer.sh --bootstrap-server apache-kafka:9092 --topic test --from-beginning

Credits