Over a million developers have joined DZone.

Using Vagrant to Get Up and Running with Apache Kafka

DZone's Guide to

Using Vagrant to Get Up and Running with Apache Kafka

· DevOps Zone ·
Free Resource

In response to accelerated release cycles, a new set of testing capabilities is now required to deliver quality at speed. This is why there is a shake-up in the testing tools landscape—and a new leader has emerged in the just released Gartner Magic Quadrant for Software Test Automation.

If you haven’t used Vagrant before then hopefully this will not only help you get up and running with Apache Kafka but also get introduced to Vagrant.  Vagrant helps to create and configure lightweight, reproducible, and portable development environments. With Vagrant run a single command — “vagrant up” — and sit back as Vagrant puts together your complete development environment. Say goodbye to the “works on my machine” excuse as Vagrant creates identical development environments for everyone on your team. To learn more about Apache Kafka checkout our website.

To get up and running with Apache Kafka using Vagrant

1) Install Vagrant http://www.vagrantup.com/
2) Install Virtual Box https://www.virtualbox.org/

For the latest release of Apache Kafka 0.8.0 I have added the ability to use Vagrant.

1) git clone https://github.com/stealthly/kafka
2) cd kafka
3) ./sbt update
4) ./sbt package
5) ./sbt assembly-package-dependency
6) vagrant up

Once this is done (it takes a little while for vagrant to launch the four virtual machines)

  • Zookeeper will be running
  • Broker 1 on
  • Broker 2 on
  • Broker 3 on

When you are all up and running you will be back at a command prompt.

If you want you can login to the machines using vagrant ssh <machineName> but you don’t need to.

You can access the brokers and zookeeper by their IP


bin/kafka-create-topic.sh --zookeeper --replica 3 --partition 1 --topic sandbox
bin/kafka-console-producer.sh --broker-list,, --topic sandbox
bin/kafka-console-consumer.sh --zookeeper --topic sandbox --from-beginning

A patch is pending for the 0.8.1 release to have this go back upstream.

 Joe Stein
 Founder, Principal Consultant
 Big Data Open Source Security LLC
 Twitter:  @allthingshadoop

Overcoming Test Automation Roadblocks with Service Virtualization


Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}