rabbitmq_intro - OpenNebula/marketplace-community GitHub Wiki

Features

This appliance comes with RabbitMQ installed globally, following RabbitMQ official install guide, including the following features:

  • Based on the latest RabbitMQ release (4.0.7-1) on Ubuntu 22.04 LTS
  • Configuration file in /etc/rabbitmq/rabbitmq.conf
  • TLS configuration with self generated certificates.

Contextualization

The contextualization parameters (CONTEXT section) in the VM template controls the configuration of the service, see the table below

Parameter Default Description
ONEAPP_RABBITMQ_NODE_PORT 5672 Port on which the RabbitMQ node will listen for connections
ONEAPP_RABBITMQ_LOOPBACK_USER false Allow the user to connect remotely
ONEAPP_RABBITMQ_USER rabbitadmin User for RabbitMQ service
ONEAPP_RABBITMQ_PASS <random> Password for RabbitMQ service
ONEAPP_RABBITMQ_LOG_LEVEL info Controls the granularity of logging {info,debug}
ONEAPP_RABBITMQ_TLS_ENABLED NO Enable TLS configuration
ONEAPP_RABBITMQ_PORT_TLS 5671 Port on which RabbitMQ listens for SSL connections
ONEAPP_RABBITMQ_TLS_CERT ```` Server certificate (base64 .pem)
ONEAPP_RABBITMQ_TLS_KEY ```` Server certficate key (base64 .key)
ONEAPP_RABBITMQ_TLS_PASS ```` Server certificate password
ONEAPP_RABBITMQ_TLS_CA ```` CA certificate chain
  • Service credentials: By default, if not defined, the user generated for RabbitMQ will be "rabbitadmin" and its password will be automatically generated. You can find this information in /etc/one-appliance/config on the appliance.

TLS Configuration

When the parameter ONEAPP_RABBITMQ_TLS_ENABLED="YES" is set, the appliance will configure the RabbitMQ deployment to use TLS.

The appliance will create the folder /opt/rabbitmq/certs and three files in that location: server.pem with the contents of ONEAPP_RABBITMQ_TLS_CERT, server.key with the contents of ONEAPP_RABBITMQ_TLS_KEY and ca.pem with the contents of ONEAPP_RABBITMQ_TLS_CA. If either of those variables is empty, the scripts will autogenerate new certificates using the openssl tools.

Note

On recontextualization the scripts will skip the certificate creation if server.pem or server.key are present in /opt/rabbitmq/certs. In order to update the certificates it would be necessary to first manually delete the existing ones and then recontext the VM.

⚠️ **GitHub.com Fallback** ⚠️