Enable management api metrics collection

The default rabbitmq image disables metrics collection via the management
api. This is implemented by adding a file named:

/etc/rabbitmq/conf.d/management_agent.disable_metrics_collector.conf

with the contents:

management_agent.disable_metrics_collector = true

The prometheus exporter currently used by osh requires this value to be
false.

This change was introduced when rabbit introduced the integrated
prometheus exporter:

https://github.com/docker-library/rabbitmq/issues/419

Change-Id: I9a94f49a7827bb4725ed3fd98404e637bfefa086
This commit is contained in:
Ritchie, Frank (fr801x) 2023-12-15 16:19:45 -05:00
parent f66c924b2f
commit 5cbce03f21
5 changed files with 13 additions and 1 deletions

View File

@ -15,6 +15,6 @@ apiVersion: v1
appVersion: v3.9.0 appVersion: v3.9.0
description: OpenStack-Helm RabbitMQ description: OpenStack-Helm RabbitMQ
name: rabbitmq name: rabbitmq
version: 0.1.30 version: 0.1.31
home: https://github.com/rabbitmq/rabbitmq-server home: https://github.com/rabbitmq/rabbitmq-server
... ...

View File

@ -77,4 +77,8 @@ data:
rabbitmq-env.conf: | rabbitmq-env.conf: |
SERVER_ADDITIONAL_ERL_ARGS={{ $erlvm_scheduler_conf | quote }} SERVER_ADDITIONAL_ERL_ARGS={{ $erlvm_scheduler_conf | quote }}
{{- end }} {{- end }}
{{ if not .Values.conf.prometheus_exporter.rabbitmq_mgmt_metrics_collector_disabled }}
management_agent.disable_metrics_collector.conf: |
management_agent.disable_metrics_collector = false
{{- end }}
{{ end }} {{ end }}

View File

@ -290,6 +290,12 @@ spec:
subPath: erl_inetrc subPath: erl_inetrc
readOnly: true readOnly: true
{{- end }} {{- end }}
{{- if not .Values.conf.prometheus_exporter.rabbitmq_mgmt_metrics_collector_disabled }}
- name: rabbitmq-etc
mountPath: /etc/rabbitmq/conf.d/management_agent.disable_metrics_collector.conf
subPath: management_agent.disable_metrics_collector.conf
readOnly: true
{{- end }}
{{ dict "enabled" $envAll.Values.manifests.certificates "name" $envAll.Values.secrets.tls.oslo_messaging.server.internal "path" "/etc/rabbitmq/certs" | include "helm-toolkit.snippets.tls_volume_mount" | indent 12 }} {{ dict "enabled" $envAll.Values.manifests.certificates "name" $envAll.Values.secrets.tls.oslo_messaging.server.internal "path" "/etc/rabbitmq/certs" | include "helm-toolkit.snippets.tls_volume_mount" | indent 12 }}
volumes: volumes:
- name: pod-tmp - name: pod-tmp

View File

@ -189,6 +189,7 @@ conf:
skip_queues: "^$" skip_queues: "^$"
include_queues: ".*" include_queues: ".*"
rabbit_exporters: "overview,exchange,node,queue" rabbit_exporters: "overview,exchange,node,queue"
rabbitmq_mgmt_metrics_collector_disabled: false
# This IP could be IPv4/IPv6 and the tcp port will be appended to it and eventually it is set to rabbitmq.listeners.tcp.1 # This IP could be IPv4/IPv6 and the tcp port will be appended to it and eventually it is set to rabbitmq.listeners.tcp.1
bind_address: "::" bind_address: "::"
rabbitmq: rabbitmq:

View File

@ -30,4 +30,5 @@ rabbitmq:
- 0.1.28 Add IPv6 environment support for rabbitmq - 0.1.28 Add IPv6 environment support for rabbitmq
- 0.1.29 Add build-in prometheus plugin and disable external exporter - 0.1.29 Add build-in prometheus plugin and disable external exporter
- 0.1.30 Add labels to rabbitmq service - 0.1.30 Add labels to rabbitmq service
- 0.1.31 Support management api metrics collection
... ...