Message queueOpenStack uses a message queue to coordinate
operations and status information among services. The message queue
service typically runs on the controller node. OpenStack supports several
message queue services including
RabbitMQ,
Qpid, and
ZeroMQ.
However, most distributions that package OpenStack support a particular
message queue service. This guide implements the RabbitMQ message queue
service because most distributions support it. If you prefer to implement
a different message queue service, consult the documentation associated
with it.To install the message queue serviceAdd the upstream repository key:#curl -O https://www.rabbitmq.com/rabbitmq-signing-key-public.asc#apt-key add rabbitmq-signing-key-public.ascAdd the upstream repository:#echo "deb http://www.rabbitmq.com/debian/ testing main" \
> /etc/apt/sources.list.d/rabbitmq.listUpdate the package database:#apt-get updateInstall the package:#apt-get install rabbitmq-server#yum install rabbitmq-server#zypper install rabbitmq-serverTo configure the message queue serviceConfigure access to epmd on the controller IP:#cp /usr/lib/systemd/system/epmd.socket /etc/systemd/system/Edit /etc/systemd/system/epmd.socket
and add a second ListenStream line:ListenStream=10.0.0.11:4369Reload systemd files:#systemctl daemon-reload
This is discussed in openSUSE
bug#927301.
The epmd.socket service should be listening on the controller
management interface. Restart the service if required.
#systemctl status epmd.socket#systemctl restart epmd.socketStart the message queue service and configure it to start when the
system boots:#systemctl enable rabbitmq-server.service#systemctl start rabbitmq-server.serviceAdd the openstack user:#rabbitmqctl add_user openstack RABBIT_PASSCreating user "openstack" ...
...done.Replace RABBIT_PASS with a suitable
password.Permit configuration, write, and read access for the
openstack user:#rabbitmqctl set_permissions openstack ".*" ".*" ".*"Setting permissions for user "openstack" in vhost "/" ...
...done.