Rabbitmq

There are various customizations you can do to tailor the deployment of OpenStack Rabbitmq. You can find those below.

General Parameters

  • conf.aux_conf

    • Type: object

    • Description:

    • {}

  • conf.bind_address

    • Type: string

    • Description:

    • “::”

  • conf.enabled_plugins[0]

    • Type: string

    • Description:

    • “rabbitmq_management”

  • conf.enabled_plugins[1]

    • Type: string

    • Description:

    • “rabbitmq_peer_discovery_k8s”

  • conf.enabled_plugins[2]

    • Type: string

    • Description:

    • “rabbitmq_prometheus”

  • conf.feature_flags

    • Type: string

    • Description:

    • “default”

  • conf.rabbit_additonal_conf.”management.listener.ip”

    • Type: string

    • Description:

    • “::”

  • conf.rabbit_additonal_conf.”management.listener.port”

    • Type: string

    • Description:

    • nil

  • conf.rabbit_advanced_config.default_consumer_prefetch

    • Type: int

    • Description:

    • 250

  • conf.rabbit_advanced_config.enabled

    • Type: bool

    • Description:

    • false

  • conf.rabbitmq.”loopback_users.guest”

    • Type: string

    • Description:

    • “false”

  • conf.rabbitmq.”management.load_definitions”

    • Type: string

    • Description:

    • “/var/lib/rabbitmq/definitions.json”

  • conf.rabbitmq.cluster_formation.k8s.address_type

    • Type: string

    • Description:

    • “hostname”

  • conf.rabbitmq.cluster_formation.node_cleanup.interval

    • Type: string

    • Description:

    • “10”

  • conf.rabbitmq.cluster_formation.node_cleanup.only_log_warning

    • Type: string

    • Description:

    • “true”

  • conf.rabbitmq.cluster_formation.peer_discovery_backend

    • Type: string

    • Description:

    • “rabbit_peer_discovery_k8s”

  • conf.rabbitmq.cluster_partition_handling

    • Type: string

    • Description:

    • “autoheal”

  • conf.rabbitmq.listeners.tcp.1

    • Type: string

    • Description:

    • nil

  • conf.rabbitmq.queue_leader_locator

    • Type: string

    • Description:

    • “balanced”

  • conf.users

    • Type: object

    • Description:

    • {}

  • dependencies.dynamic.common.local_image_registry.jobs[0]

    • Type: string

    • Description:

    • “rabbitmq-image-repo-sync”

  • dependencies.dynamic.common.local_image_registry.services[0].endpoint

    • Type: string

    • Description:

    • “node”

  • dependencies.dynamic.common.local_image_registry.services[0].service

    • Type: string

    • Description:

    • “local_image_registry”

  • dependencies.static.cluster_wait.services[0].endpoint

    • Type: string

    • Description:

    • “internal”

  • dependencies.static.cluster_wait.services[0].service

    • Type: string

    • Description:

    • “oslo_messaging”

  • dependencies.static.image_repo_sync.services[0].endpoint

    • Type: string

    • Description:

    • “internal”

  • dependencies.static.image_repo_sync.services[0].service

    • Type: string

    • Description:

    • “local_image_registry”

  • dependencies.static.rabbitmq.jobs

    • Type: string

    • Description:

    • nil

  • dependencies.static.tests.jobs

    • Type: string

    • Description:

    • “cluster_wait”

  • dependencies.static.tests.services[0].endpoint

    • Type: string

    • Description:

    • “internal”

  • dependencies.static.tests.services[0].service

    • Type: string

    • Description:

    • “oslo_messaging”

  • dependencies.static.topology_controller.jobs[0]

    • Type: string

    • Description:

    • “rabbitmq-cluster-wait”

  • dependencies.static.topology_controller.services[0].endpoint

    • Type: string

    • Description:

    • “internal”

  • dependencies.static.topology_controller.services[0].service

    • Type: string

    • Description:

    • “oslo_messaging”

  • endpoints.cluster_domain_suffix

    • Type: string

    • Description:

    • “cluster.local”

  • endpoints.kube_dns.host_fqdn_override.default

    • Type: string

    • Description:

    • nil

  • endpoints.kube_dns.hosts.default

    • Type: string

    • Description:

    • “kube-dns”

  • endpoints.kube_dns.name

    • Type: string

    • Description:

    • “kubernetes-dns”

  • endpoints.kube_dns.namespace

    • Type: string

    • Description:

    • “kube-system”

  • endpoints.kube_dns.path.default

    • Type: string

    • Description:

    • nil

  • endpoints.kube_dns.port.dns.default

    • Type: int

    • Description:

    • 53

  • endpoints.kube_dns.port.dns.protocol

    • Type: string

    • Description:

    • “UDP”

  • endpoints.kube_dns.port.dns_tcp.default

    • Type: int

    • Description:

    • 53

  • endpoints.kube_dns.scheme

    • Type: string

    • Description:

    • “http”

  • endpoints.local_image_registry.host_fqdn_override.default

    • Type: string

    • Description:

    • nil

  • endpoints.local_image_registry.hosts.default

    • Type: string

    • Description:

    • “localhost”

  • endpoints.local_image_registry.hosts.internal

    • Type: string

    • Description:

    • “docker-registry”

  • endpoints.local_image_registry.hosts.node

    • Type: string

    • Description:

    • “localhost”

  • endpoints.local_image_registry.name

    • Type: string

    • Description:

    • “docker-registry”

  • endpoints.local_image_registry.namespace

    • Type: string

    • Description:

    • “docker-registry”

  • endpoints.local_image_registry.port.registry.node

    • Type: int

    • Description:

    • 5000

  • endpoints.monitoring.host_fqdn_override.default

    • Type: string

    • Description:

    • nil

  • endpoints.monitoring.hosts.default

    • Type: string

    • Description:

    • “prom-metrics”

  • endpoints.monitoring.hosts.public

    • Type: string

    • Description:

    • “prometheus”

  • endpoints.monitoring.name

    • Type: string

    • Description:

    • “prometheus”

  • endpoints.monitoring.namespace

    • Type: string

    • Description:

    • nil

  • endpoints.monitoring.path.default

    • Type: string

    • Description:

    • nil

  • endpoints.monitoring.port.api.default

    • Type: int

    • Description:

    • 9090

  • endpoints.monitoring.port.api.public

    • Type: int

    • Description:

    • 80

  • endpoints.monitoring.scheme.default

    • Type: string

    • Description:

    • “http”

  • endpoints.oci_image_registry.auth.enabled

    • Type: bool

    • Description:

    • false

  • endpoints.oci_image_registry.auth.rabbitmq.password

    • Type: string

    • Description:

    • “password”

  • endpoints.oci_image_registry.auth.rabbitmq.username

    • Type: string

    • Description:

    • “rabbitmq”

  • endpoints.oci_image_registry.host_fqdn_override.default

    • Type: string

    • Description:

    • nil

  • endpoints.oci_image_registry.hosts.default

    • Type: string

    • Description:

    • “localhost”

  • endpoints.oci_image_registry.name

    • Type: string

    • Description:

    • “oci-image-registry”

  • endpoints.oci_image_registry.namespace

    • Type: string

    • Description:

    • “oci-image-registry”

  • endpoints.oci_image_registry.port.registry.default

    • Type: string

    • Description:

    • nil

  • endpoints.oslo_messaging.auth.erlang_cookie

    • Type: string

    • Description:

    • “openstack-cookie”

  • endpoints.oslo_messaging.auth.guest.password

    • Type: string

    • Description:

    • “password”

  • endpoints.oslo_messaging.auth.user.password

    • Type: string

    • Description:

    • “password”

  • endpoints.oslo_messaging.auth.user.username

    • Type: string

    • Description:

    • “rabbitmq”

  • endpoints.oslo_messaging.host_fqdn_override.default

    • Type: string

    • Description:

    • nil

  • endpoints.oslo_messaging.hosts.default

    • Type: string

    • Description:

    • “rabbitmq”

  • endpoints.oslo_messaging.hosts.public

    • Type: string

    • Description:

    • nil

  • endpoints.oslo_messaging.path

    • Type: string

    • Description:

    • “/”

  • endpoints.oslo_messaging.port.amqp.default

    • Type: int

    • Description:

    • 5672

  • endpoints.oslo_messaging.port.clustering.default

    • Type: string

    • Description:

    • nil

  • endpoints.oslo_messaging.port.http.default

    • Type: int

    • Description:

    • 15672

  • endpoints.oslo_messaging.port.http.public

    • Type: int

    • Description:

    • 80

  • endpoints.oslo_messaging.port.metrics.default

    • Type: int

    • Description:

    • 15692

  • endpoints.oslo_messaging.scheme

    • Type: string

    • Description:

    • “rabbit”

  • extraObjects

    • Type: object

    • Description: Extra K8s manifests to deploy. Either a list or a map of manifests. # Note: Supports use of custom Helm templates # Note: Helm replaces (instead of merging) list values when several values # files are combined, so if you need to define extraObjects in more than one # overrides file, use the map form and make sure the keys are unique across # those files. With the list form only the last file takes effect.

    • {}

  • forceBoot.enabled

    • Type: bool

    • Description:

    • false

  • images.local_registry.active

    • Type: bool

    • Description:

    • false

  • images.local_registry.exclude[0]

    • Type: string

    • Description:

    • “dep_check”

  • images.local_registry.exclude[1]

    • Type: string

    • Description:

    • “image_repo_sync”

  • images.pull_policy

    • Type: string

    • Description:

    • “IfNotPresent”

  • images.tags.dep_check

    • Type: string

    • Description:

    • “quay.io/airshipit/kubernetes-entrypoint:latest-ubuntu_noble”

  • images.tags.image_repo_sync

    • Type: string

    • Description:

    • “quay.io/airshipit/docker:27.5.0”

  • images.tags.rabbitmq

    • Type: string

    • Description:

    • “docker.io/rabbitmq:4.3.5”

  • images.tags.rabbitmq_init

    • Type: string

    • Description:

    • “quay.io/airshipit/openstack-client:2026.1-ubuntu_noble”

  • images.tags.rabbitmq_test

    • Type: string

    • Description: Image for the helm test pod. It queries the management HTTP API and # needs only python3, which the 4.x rabbitmq images do not ship.

    • “quay.io/airshipit/openstack-client:2026.1-ubuntu_noble”

  • images.tags.rabbitmq_topology_controller

    • Type: string

    • Description: The topology controller needs the kubernetes client for the Kubernetes # API and requests for the broker’s management API. Both are on this image, # which the chart already pulls for the rabbitmq-password init container.

    • “quay.io/airshipit/openstack-client:2026.1-ubuntu_noble”

  • images.tags.scripted_test

    • Type: string

    • Description: Image for the cluster-wait job. It needs rabbitmqctl to prune cluster # members and an HTTP client to discover them, so it must be a rabbitmq # management image.

    • “docker.io/rabbitmq:4.3.5-management”

  • labels.jobs.node_selector_key

    • Type: string

    • Description:

    • “openstack-control-plane”

  • labels.jobs.node_selector_value

    • Type: string

    • Description:

    • “enabled”

  • labels.server.node_selector_key

    • Type: string

    • Description:

    • “openstack-control-plane”

  • labels.server.node_selector_value

    • Type: string

    • Description:

    • “enabled”

  • labels.test.node_selector_key

    • Type: string

    • Description:

    • “openstack-control-plane”

  • labels.test.node_selector_value

    • Type: string

    • Description:

    • “enabled”

  • labels.topology_controller.node_selector_key

    • Type: string

    • Description:

    • “openstack-control-plane”

  • labels.topology_controller.node_selector_value

    • Type: string

    • Description:

    • “enabled”

  • manifests.certificates

    • Type: bool

    • Description:

    • false

  • manifests.config_ipv6

    • Type: bool

    • Description:

    • false

  • manifests.configmap_bin

    • Type: bool

    • Description:

    • true

  • manifests.configmap_etc

    • Type: bool

    • Description:

    • true

  • manifests.crds

    • Type: bool

    • Description: Deploy the Vhost/User/Permission/Queue/Exchange/Binding/Policy custom # resource definitions reconciled by the rabbitmq-topology-controller # deployment. Inert on their own.

    • true

  • manifests.deployment_topology_controller

    • Type: bool

    • Description: Deploy the controller reconciling those custom resources. Off by # default: enabling it adds a pod, RBAC and a new configmap-bin key, which # changes the bin configmap hash and therefore rolls the server statefulset # on upgrade.

    • false

  • manifests.job_cluster_wait

    • Type: bool

    • Description:

    • true

  • manifests.job_image_repo_sync

    • Type: bool

    • Description:

    • true

  • manifests.monitoring.prometheus.configmap_bin

    • Type: bool

    • Description:

    • false

  • manifests.network_policy

    • Type: bool

    • Description:

    • false

  • manifests.pod_test

    • Type: bool

    • Description:

    • true

  • manifests.secret_admin_user

    • Type: bool

    • Description:

    • true

  • manifests.secret_erlang_cookie

    • Type: bool

    • Description:

    • true

  • manifests.secret_registry

    • Type: bool

    • Description:

    • true

  • manifests.service

    • Type: bool

    • Description:

    • true

  • manifests.service_discovery

    • Type: bool

    • Description:

    • true

  • manifests.statefulset

    • Type: bool

    • Description:

    • true

  • monitoring.prometheus.enabled

    • Type: bool

    • Description:

    • true

  • monitoring.prometheus.rabbitmq.scrape

    • Type: bool

    • Description:

    • true

  • network.host_namespace

    • Type: bool

    • Description:

    • false

  • network.management

    • Type: string

    • Description:

    • nil

  • network_policy.rabbitmq.egress[0]

    • Type: object

    • Description:

    • {}

  • network_policy.rabbitmq.ingress[0]

    • Type: object

    • Description:

    • {}

  • pod.affinity.anti.topologyKey.default

    • Type: string

    • Description:

    • “kubernetes.io/hostname”

  • pod.affinity.anti.type.default

    • Type: string

    • Description:

    • “preferredDuringSchedulingIgnoredDuringExecution”

  • pod.affinity.anti.weight.default

    • Type: int

    • Description:

    • 10

  • pod.env.rabbitmq_topology_controller.RABBITMQ_TOPOLOGY_CONTROLLER_DEBUG

    • Type: int

    • Description:

    • 0

  • pod.env.rabbitmq_topology_controller.RABBITMQ_TOPOLOGY_CONTROLLER_DELETE_GUEST_USER

    • Type: int

    • Description: Delete the default guest account on every sweep. The chart declares # it in definitions.json, which management.load_definitions imports on # every node boot, so deleting it once does not hold. This is what the # per-chart rabbit-init jobs used to do.

    • 1

  • pod.env.rabbitmq_topology_controller.RABBITMQ_TOPOLOGY_CONTROLLER_ERROR_BACKOFF

    • Type: int

    • Description: Retry delay for a resource that failed to reconcile

    • 10

  • pod.env.rabbitmq_topology_controller.RABBITMQ_TOPOLOGY_CONTROLLER_FULL_RESYNC_INTERVAL

    • Type: int

    • Description: How often to re-declare resources whose desired state has not # changed, repairing drift caused by changes made outside the controller

    • 1800

  • pod.env.rabbitmq_topology_controller.RABBITMQ_TOPOLOGY_CONTROLLER_KUBERNETES_REQUEST_TIMEOUT

    • Type: int

    • Description: Timeout for Kubernetes API requests

    • 60

  • pod.env.rabbitmq_topology_controller.RABBITMQ_TOPOLOGY_CONTROLLER_RECONCILE_INTERVAL

    • Type: int

    • Description: Delay between reconcile sweeps of the custom resources

    • 10

  • pod.env.rabbitmq_topology_controller.RABBITMQ_TOPOLOGY_CONTROLLER_REQUEST_TIMEOUT

    • Type: int

    • Description: Timeout for the RabbitMQ management API

    • 60

  • pod.env.rabbitmq_topology_controller.RABBITMQ_TOPOLOGY_CONTROLLER_TLS_CA_FILE

    • Type: string

    • Description:

    • “/etc/rabbitmq/certs/ca.crt”

  • pod.env.rabbitmq_topology_controller.RABBITMQ_TOPOLOGY_CONTROLLER_TLS_VERIFY_HOSTNAME

    • Type: int

    • Description: Verify the management API certificate’s hostname as well as its # chain. Off by default, matching what rabbit-init does with # rabbitmqadmin –ssl-disable-hostname-verification

    • 0

  • pod.lifecycle.disruption_budget.mariadb.min_available

    • Type: int

    • Description:

    • 0

  • pod.lifecycle.upgrades.deployments.pod_replacement_strategy

    • Type: string

    • Description:

    • “RollingUpdate”

  • pod.lifecycle.upgrades.deployments.revision_history

    • Type: int

    • Description:

    • 3

  • pod.lifecycle.upgrades.deployments.rolling_update.max_surge

    • Type: int

    • Description:

    • 3

  • pod.lifecycle.upgrades.deployments.rolling_update.max_unavailable

    • Type: int

    • Description:

    • 1

  • pod.probes.rabbitmq.rabbitmq.liveness.enabled

    • Type: bool

    • Description:

    • true

  • pod.probes.rabbitmq.rabbitmq.liveness.params.failureThreshold

    • Type: int

    • Description:

    • 5

  • pod.probes.rabbitmq.rabbitmq.liveness.params.initialDelaySeconds

    • Type: int

    • Description:

    • 60

  • pod.probes.rabbitmq.rabbitmq.liveness.params.periodSeconds

    • Type: int

    • Description:

    • 10

  • pod.probes.rabbitmq.rabbitmq.liveness.params.successThreshold

    • Type: int

    • Description:

    • 1

  • pod.probes.rabbitmq.rabbitmq.liveness.params.timeoutSeconds

    • Type: int

    • Description:

    • 10

  • pod.probes.rabbitmq.rabbitmq.readiness.enabled

    • Type: bool

    • Description:

    • true

  • pod.probes.rabbitmq.rabbitmq.readiness.params.failureThreshold

    • Type: int

    • Description:

    • 3

  • pod.probes.rabbitmq.rabbitmq.readiness.params.initialDelaySeconds

    • Type: int

    • Description:

    • 10

  • pod.probes.rabbitmq.rabbitmq.readiness.params.periodSeconds

    • Type: int

    • Description:

    • 10

  • pod.probes.rabbitmq.rabbitmq.readiness.params.successThreshold

    • Type: int

    • Description:

    • 1

  • pod.probes.rabbitmq.rabbitmq.readiness.params.timeoutSeconds

    • Type: int

    • Description:

    • 10

  • pod.replicas.server

    • Type: int

    • Description:

    • 2

  • pod.replicas.topology_controller

    • Type: int

    • Description: Must stay at 1: the controller does no leader election

    • 1

  • pod.resources.enabled

    • Type: bool

    • Description:

    • false

  • pod.resources.jobs.image_repo_sync.limits.cpu

    • Type: string

    • Description:

    • “2000m”

  • pod.resources.jobs.image_repo_sync.limits.memory

    • Type: string

    • Description:

    • “1024Mi”

  • pod.resources.jobs.image_repo_sync.requests.cpu

    • Type: string

    • Description:

    • “100m”

  • pod.resources.jobs.image_repo_sync.requests.memory

    • Type: string

    • Description:

    • “128Mi”

  • pod.resources.jobs.tests.limits.cpu

    • Type: string

    • Description:

    • “2000m”

  • pod.resources.jobs.tests.limits.memory

    • Type: string

    • Description:

    • “1024Mi”

  • pod.resources.jobs.tests.requests.cpu

    • Type: string

    • Description:

    • “100m”

  • pod.resources.jobs.tests.requests.memory

    • Type: string

    • Description:

    • “128Mi”

  • pod.resources.server.limits.cpu

    • Type: string

    • Description:

    • “500m”

  • pod.resources.server.limits.memory

    • Type: string

    • Description:

    • “128Mi”

  • pod.resources.server.requests.cpu

    • Type: string

    • Description:

    • “500m”

  • pod.resources.server.requests.memory

    • Type: string

    • Description:

    • “128Mi”

  • pod.resources.topology_controller.limits.cpu

    • Type: string

    • Description:

    • “2000m”

  • pod.resources.topology_controller.limits.memory

    • Type: string

    • Description:

    • “1024Mi”

  • pod.resources.topology_controller.requests.cpu

    • Type: string

    • Description:

    • “100m”

  • pod.resources.topology_controller.requests.memory

    • Type: string

    • Description:

    • “128Mi”

  • pod.security_context.cluster_wait.container.rabbitmq_cluster_wait.allowPrivilegeEscalation

    • Type: bool

    • Description:

    • false

  • pod.security_context.cluster_wait.container.rabbitmq_cluster_wait.readOnlyRootFilesystem

    • Type: bool

    • Description:

    • true

  • pod.security_context.cluster_wait.container.rabbitmq_cookie.allowPrivilegeEscalation

    • Type: bool

    • Description:

    • false

  • pod.security_context.cluster_wait.container.rabbitmq_cookie.readOnlyRootFilesystem

    • Type: bool

    • Description:

    • true

  • pod.security_context.cluster_wait.pod.runAsUser

    • Type: int

    • Description:

    • 999

  • pod.security_context.server.container.rabbitmq.allowPrivilegeEscalation

    • Type: bool

    • Description:

    • false

  • pod.security_context.server.container.rabbitmq.readOnlyRootFilesystem

    • Type: bool

    • Description:

    • false

  • pod.security_context.server.container.rabbitmq.runAsUser

    • Type: int

    • Description:

    • 999

  • pod.security_context.server.container.rabbitmq_cookie.readOnlyRootFilesystem

    • Type: bool

    • Description:

    • true

  • pod.security_context.server.container.rabbitmq_cookie.runAsUser

    • Type: int

    • Description:

    • 0

  • pod.security_context.server.container.rabbitmq_password.readOnlyRootFilesystem

    • Type: bool

    • Description:

    • true

  • pod.security_context.server.container.rabbitmq_password.runAsUser

    • Type: int

    • Description:

    • 0

  • pod.security_context.server.container.rabbitmq_perms.readOnlyRootFilesystem

    • Type: bool

    • Description:

    • true

  • pod.security_context.server.container.rabbitmq_perms.runAsUser

    • Type: int

    • Description:

    • 0

  • pod.security_context.server.pod.runAsUser

    • Type: int

    • Description:

    • 999

  • pod.security_context.test.container.rabbitmq_test.allowPrivilegeEscalation

    • Type: bool

    • Description:

    • false

  • pod.security_context.test.container.rabbitmq_test.readOnlyRootFilesystem

    • Type: bool

    • Description:

    • true

  • pod.security_context.test.pod.runAsUser

    • Type: int

    • Description:

    • 999

  • pod.security_context.topology_controller.container.topology_controller.allowPrivilegeEscalation

    • Type: bool

    • Description:

    • false

  • pod.security_context.topology_controller.container.topology_controller.capabilities.drop[0]

    • Type: string

    • Description:

    • “ALL”

  • pod.security_context.topology_controller.container.topology_controller.readOnlyRootFilesystem

    • Type: bool

    • Description:

    • true

  • pod.security_context.topology_controller.pod.runAsNonRoot

    • Type: bool

    • Description:

    • true

  • pod.security_context.topology_controller.pod.runAsUser

    • Type: int

    • Description:

    • 65534

  • pod.tolerations.rabbitmq.enabled

    • Type: bool

    • Description:

    • false

  • pod.tolerations.rabbitmq.tolerations[0].effect

    • Type: string

    • Description:

    • “NoSchedule”

  • pod.tolerations.rabbitmq.tolerations[0].key

    • Type: string

    • Description:

    • “node-role.kubernetes.io/master”

  • pod.tolerations.rabbitmq.tolerations[0].operator

    • Type: string

    • Description:

    • “Exists”

  • pod.tolerations.rabbitmq.tolerations[1].effect

    • Type: string

    • Description:

    • “NoSchedule”

  • pod.tolerations.rabbitmq.tolerations[1].key

    • Type: string

    • Description:

    • “node-role.kubernetes.io/control-plane”

  • pod.tolerations.rabbitmq.tolerations[1].operator

    • Type: string

    • Description:

    • “Exists”

  • secrets.oci_image_registry.rabbitmq

    • Type: string

    • Description:

    • “rabbitmq-oci-image-registry-key”

  • secrets.tls.oslo_messaging.server.internal

    • Type: string

    • Description:

    • “rabbitmq-tls-direct”

  • volume.chown_on_start

    • Type: bool

    • Description:

    • true

  • volume.class_name

    • Type: string

    • Description:

    • “general”

  • volume.enabled

    • Type: bool

    • Description:

    • true

  • volume.size

    • Type: string

    • Description:

    • “768Mi”

  • volume.use_local_path.enabled

    • Type: bool

    • Description:

    • false

  • volume.use_local_path.host_path

    • Type: string

    • Description:

    • “/var/lib/rabbitmq”