Sunday, January 27, 2013

RabbitMQ Configuration and Management Series

Lately, I've been working heavily with RabbitMQ and wanted to share many of the things I have learned in the process.  Specifically, I wanted to demonstrate how to configure and administer RabbitMQ from the point of installing the OS, to configuring the firewall, clustering the brokers, enabling SSL, and load-balancing the cluster.  Basically, what you would want in a cluster if you had to deliver a messaging solution in a hostile environment.

I will continue to write more articles about RabbitMQ, so please come back to this page to get the latest index of articles.  I hope you find these articles helpful.

I recommend reading the documentation in the following order:
  1. Installing RabbitMQ on CentOS 6.3 Minimal - demonstrates how to perform a complete install of RabbitMQ on CentOS 6.3 Minimal (headless, no unnecessary packages), including two ways to install Erlang.
  2. Enabling RabbitMQ Management Console - an essential component for managing RabbitMQ, this is probably the second thing you should install once you have broker.
  3. Configuring iptables for a single instance of RabbitMQ - don't just turn off you firewall!  Configure iptables to allow clients to connect to the broker without exposing the rest of your system.
  4. Configuring iptables for a RabbitMQ Cluster - the process for allowing a cluster to communicate with the firewall on is a little more involved.  This post will show you how to do it.
  5. Clustering RabbitMQ - will show you how to cluster RabbitMQ brokers
  6. Configuring SSL for RabbitMQ - lock your RabbitMQ instances down by configuring them to use SSL.  I'll show you how to do this, including the generation of certificates.
  7. Securing the RabbitMQ Management Console with SSL - What's the point of locking down the AMQP port if you don't lock down the Management Console?  This post will show you how to enable SSL-authentication for the Management Console.
  8. Binding non-SSL-capable AMQP Clients to SSL RabbitMQ - some clients do not support AMQP/SSL.  I'll show you a generic solution for using a non-SSL-capable client (Node.js in the example) with a RabbitMQ instance protected by SSL.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.