Fix nova deployment failure when rabbitmq is disabled

Nova always tries to create the rabbitmq user regardless of
whether RabbitMQ is enabled or not.
This ps also adds an external rabbitmq doc.

Change-Id: Iec517226e4c82ea351889b55689a3efceaadcc76
This commit is contained in:
wu.chunyang 2021-07-07 23:33:11 +08:00
parent cccae8a654
commit 24d08142d2
3 changed files with 57 additions and 1 deletions

View File

@ -24,4 +24,6 @@
- nova_cell_rpc_group_name != nova_cell_notify_group_name or
nova_cell_rpc_rabbitmq_users != nova_cell_notify_rabbitmq_users
when: nova_cell_rpc_transport == 'rabbit'
when:
- nova_cell_rpc_transport == 'rabbit'
- enable_rabbitmq | bool

View File

@ -0,0 +1,53 @@
.. _external-rabbitmq-guide:
=================
External RabbitMQ
=================
Sometimes, for various reasons (Redundancy, organisational policies, etc.),
it might be necessary to use an external RabbitMQ cluster.
This use case can be achieved with the following steps:
Requirements
~~~~~~~~~~~~
* An existing RabbitMQ cluster, reachable from all of your
nodes.
Enabling External RabbitMQ support
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In order to enable external RabbitMQ support,
you will first need to disable RabbitMQ deployment,
by ensuring the following line exists within ``/etc/kolla/globals.yml`` :
.. code-block:: yaml
enable_rabbitmq: "no"
Overwriting transport_url within ``globals.yml``
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
When you use an external RabbitMQ cluster, you must overwrite
``*_transport_url`` within ``/etc/kolla/globals.yml``
.. code-block:: yaml
rpc_transport_url:
notify_transport_url:
nova_cell_rpc_transport_url:
nova_cell_notify_transport_url:
For example:
.. code-block:: yaml
rpc_transport_url: rabbit://openstack:6Y6Eh3blPXB1Qn4190JKxRoyVhTaFsY2k2V0DuIc@10.0.0.1:5672,openstack:6Y6Eh3blPXB1Qn4190JKxRoyVhTaFsY2k2V0DuIc@10.0.0.2:5672,openstack:6Y6Eh3blPXB1Qn4190JKxRoyVhTaFsY2k2V0DuIc@10.0.0.3:5672//
notify_transport_url: "{{ rpc_transport_url }}"
nova_cell_rpc_transport_url: rabbit://openstack:6Y6Eh3blPXB1Qn4190JKxRoyVhTaFsY2k2V0DuIc@10.0.0.1:5672//
nova_cell_notify_transport_url: "{{ nova_cell_rpc_transport_url }}"
.. note::
Ensure the rabbitmq user used in ``*_transport_url`` exists.

View File

@ -8,3 +8,4 @@ This section describes configuration of message queue services.
:maxdepth: 1
rabbitmq
external-rabbitmq-guide