Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Liberty RabbitMQ and ZeroMQ

Hi everyone,

I see advice in replacing RabbitMQ with ZeroMQ. I've been running 2 clusters Liberty/CentOS7 with RabbitMQ now for while. The larger cluster consists of 3x Controllers and 4x Compute nodes. RabbitMQ is running is HA mode as per:

I have several times experienced issue propagating through OpenStack Networking, Compute, Storage services boiling down to errors in RabbitMQ service. For instance, these seem to have happened after network or DC interrupts, the Rabbit service as not in a robust or reliable manner resumed working.

Here are some error examples:

=ERROR REPORT==== 7-Aug-2016::08:01:58 === Channel error on connection <0.6967.0> ( ->, vhost: '/', user: 'openstack'), channel 1: operation basic.consume caused a channel exception not_found: "failed to perform operation on queue 'conductor_fanout_c0c8929ac9' in vhost '/' due to timeout"

=ERROR REPORT==== 10-Aug-2016::12:43:31 === closing AMQP connection <0.2363.0> ( -> missed heartbeats from client, timeout: 60s


I have thought of replacing RabbitMQ with ZeroMQ if that were to bring a more resilient MQ service for my OpenStack cluster. While reading about Rabbit vs. ZeroMQ I have found they've each got their strengths, RabbitMQ: good for Queue integrity, little slower, and Zero: simple, optimized for network transfer, no broker, de-centralized by design.

I would highly appreciate if anyone running ZeroMQ can advice on the experience in Production, or any issues experienced? Also if there are any links or resources on how to go about replacing RabbitMQ with Zero would be much appreciated.