Difficulty: Introduction
Estimated Time: 10 minutes

RabbitMQ on Kubernetes

Robust messaging for applications to connect and scale. RabbitMQ is an open-source message broker software that implements the Advanced Message Queuing Protocol (AMQP).

These next steps provide an ideal place to start deploying and running one of your first application on Kubernetes. With a Kubernetes cluster and a CLI tool called kubectl and helm, a few steps will get RabbitMQ running.

You will learn how:

  • to use the basics of the kubectl and helm CLI tools
  • to install RabbitMQ on Kubernetes

RabbitMQ is an open-source message broker software (sometimes called message-oriented middleware) that originally implemented the Advanced Message Queuing Protocol (AMQP) and has since been extended with a plug-in architecture to support Streaming Text Oriented Messaging Protocol (STOMP), Message Queuing Telemetry Transport (MQTT), and other protocols.

The RabbitMQ server program is written in the Erlang programming language and is built on the Open Telecom Platform framework for clustering and failover. Client libraries to interface with the broker are available for all major programming languages. -- Wikipedia

You now understand how to run a basic configuration of RabbitMQ on Kubernetes. Actual production deployment can certainly be more complex to support persistence and higher availability. If the existing Helm chart is insufficient, consider contributing to the project or create one for your own needs.

Lessons Learned

With these steps you have learned:

  • ✔ how to use the basics of the kubectl and helm CLI tool,
  • ✔ how to install RabbitMQ on Kubernetes.

Hopefully, you also understand how Kubernetes is a new type of data center operating system that can run your applications - across multiple nodes on your local laptop, a rack of servers, or any cloud target. If you are considering deploying multiple containers that make up a larger solution consider layering on Helm as a package manager for these manifests.

References


For a deeper understanding of these topics and more join
Jonathan Johnson
at various conferences, symposiums, workshops, and meetups.

Software Architectures ★ Speaker ★ Workshop Hosting ★ Kubernetes & Java Specialist

RabbitMQ

Step 1 of 3

Your Kubernetes Cluster

For this scenario, Katacoda has just started a fresh Kubernetes cluster for you. Verify it's ready for your use.

kubectl version --short && \ kubectl get componentstatus && \ kubectl get nodes && \ kubectl cluster-info

The Helm package manager used for installing applications on Kubernetes is also available.

helm version --short

Kubernetes Dashboard

You can administer your cluster with the kubectl CLI tool or use the visual Kubernetes Dashboard. Use this script to access the protected Dashboard.

token.sh

Terminal
Kubernetes Dashboard
RabbitMQ Portal