OpenStack uses a message broker for components to inner communicate. Red Hat-based operating systems (for example, RHEL, CentOS, and Fedora) can run RabbitMQ or QPID message brokers. Both provide roughly similar performance, but as RabbitMQ is more widely used message broker with OpenStack, we are going use it as a message broker for our OpenStack environment.
Install RabbitMQ from the yum repository:
Run the following commands on the controller node!
[root@controller ~]# yum install rabbitmq-server -y
RabbitMQ is written in erlang and will probably bring some erlang dependency packages along.
To start the RabbitMQ Linux services, start a service named
[root@controller ~]# systemctl start rabbitmq-server.service
Now enable it, to make sure that it starts on a system reboot:
[root@controller ~]# systemctl enable rabbitmq-server.service
RabbitMQ maintains its own user accounts and passwords. By default, the user name
guest is created with the default password
guest. As it is a major security concern to keep default password, we should change this password. We can use the command
rabbitmqctl to change
guest's account password:
[root@controller ~]# rabbitmqctl change_password guest guest_password Changing password for user "guest" ... ...done.
We need to allow other services to be able to access the message broker over the firewall using
[root@controller ~]# firewall-cmd --add-port=5672/tcp --permanent success