mirror of
https://github.com/helm/charts.git
synced 2026-08-23 22:37:45 +00:00
[stable/rabbitmq-ha]Endpoint for RabbitMQ Prometheus native port (#18106)
* Endpoint for RabbitMQ Prometheus native port The features add a new Endpoint for Prometheus, by default is 15692 Important for use the feature `kubernetes_sd_configs: - role: pod` Complete the PR: https://github.com/helm/charts/pull/17925 Signed-off-by: Gabriele Santomaggio <g.santomaggio@gmail.com> * Added service monitor for the native prometheus rabbitmq plugin Signed-off-by: Mihai Anei <mihai.anei@gmail.com> * Increase Chart version as 1.34.1 is already released Signed-off-by: Mihai Anei <mihai.anei@gmail.com> * Removed metrics port from service-discovery Signed-off-by: Mihai Anei <mihai.anei@gmail.com> * Cleaned duplication in servicemonitor and added the new values in Readme Signed-off-by: Mihai Anei <mihai.anei@gmail.com> * Upgraded RabbitMQ to 3.8.0-alpine Signed-off-by: Mihai Anei <mihai.anei@gmail.com> * Removed hardcoded metrics port value in StatefulSet Signed-off-by: Mihai Anei <mihai.anei@gmail.com> * Fixed trailing spaces for linting checks Signed-off-by: Mihai Anei <mihai.anei@gmail.com> * Simplified ServiceMonitor endpoints Signed-off-by: Mihai Anei <mihai.anei@gmail.com> * Fixed appVersion in Chart and Readme Signed-off-by: Mihai Anei <mihai.anei@gmail.com> * Added ci test values for prometheus exporter and native plugin Signed-off-by: Mihai Anei <mihai.anei@gmail.com> * Disable prometheus.operator in ci test values Signed-off-by: Mihai Anei <mihai.anei@gmail.com>
This commit is contained in:
committed by
Kubernetes Prow Robot
parent
d2c1c28429
commit
9522acbfd1
@@ -1,7 +1,7 @@
|
||||
name: rabbitmq-ha
|
||||
apiVersion: v1
|
||||
appVersion: 3.7.19
|
||||
version: 1.34.1
|
||||
appVersion: 3.8.0
|
||||
version: 1.35.0
|
||||
description: Highly available RabbitMQ cluster, the open source message broker
|
||||
software that implements the Advanced Message Queuing Protocol (AMQP).
|
||||
keywords:
|
||||
|
||||
@@ -86,7 +86,7 @@ and their default values.
|
||||
| `forceBoot` | [Force](https://www.rabbitmq.com/rabbitmqctl.8.html#force_boot) the cluster to start even if it was shutdown in an unexpected order, preferring availability over integrity | `false` |
|
||||
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
|
||||
| `image.repository` | RabbitMQ container image repository | `rabbitmq` |
|
||||
| `image.tag` | RabbitMQ container image tag | `3.7.19-alpine` |
|
||||
| `image.tag` | RabbitMQ container image tag | `3.8.0-alpine` |
|
||||
| `image.pullSecrets` | Specify docker-registry secret names as an array | `[]` |
|
||||
| `managementPassword` | Management user password. | _random 24 character long alphanumeric string_ |
|
||||
| `managementUsername` | Management user with minimal permissions used for health checks | `management` |
|
||||
@@ -142,7 +142,11 @@ and their default values.
|
||||
| `rabbitmqWebMQTTPlugin.enabled` | Enable MQTT over websocket plugin | `false` |
|
||||
| `rabbitmqWebSTOMPPlugin.config` | STOMP over websocket configuration | `` |
|
||||
| `rabbitmqWebSTOMPPlugin.enabled` | Enable STOMP over websocket plugin | `false` |
|
||||
| `rabbitmqPrometheusPlugin.enabled` | Enable native RabbitMQ prometheus plugin. (Available in RabbitMQ 3.8) | `false` |
|
||||
| `rabbitmqPrometheusPlugin.enabled` | Enable native RabbitMQ prometheus plugin. (Available in RabbitMQ 3.8) | `false` |
|
||||
| `rabbitmqPrometheusPlugin.nodePort` | Exposes the native prometheus metrics port on the given NodePort | `null` |
|
||||
| `rabbitmqPrometheusPlugin.port` | The port RabbitMQ prometheus plugin will use | `15692` |
|
||||
| `rabbitmqPrometheusPlugin.path` | The path RabbitMQ prometheus plugin will use | `/metrics` |
|
||||
| `rabbitmqPrometheusPlugin.config` | RabbitMQ prometheus plugin aditional configuration | `` |
|
||||
| `rbac.create` | If true, create & use RBAC resources | `true` |
|
||||
| `replicaCount` | Number of replica | `3` |
|
||||
| `resources` | CPU/Memory resource requests/limits | `{}` |
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
# Testing Prometheus exporter
|
||||
|
||||
prometheus:
|
||||
exporter:
|
||||
enabled: true
|
||||
|
||||
operator:
|
||||
enabled: false
|
||||
@@ -0,0 +1,8 @@
|
||||
# Testing native Prometheus plugin
|
||||
|
||||
rabbitmqPrometheusPlugin:
|
||||
enabled: true
|
||||
|
||||
prometheus:
|
||||
operator:
|
||||
enabled: false
|
||||
@@ -113,4 +113,4 @@ users, virtual hosts, permissions and parameters) to load by the management plug
|
||||
{{ .Values.definitions.bindings| indent 4 }}
|
||||
]
|
||||
}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
@@ -115,6 +115,8 @@ data:
|
||||
## Prometheus Plugin
|
||||
{{- if .Values.rabbitmqPrometheusPlugin.enabled }}
|
||||
{{ .Values.rabbitmqPrometheusPlugin.config | indent 4 }}
|
||||
prometheus.path = {{ .Values.rabbitmqPrometheusPlugin.path }}
|
||||
prometheus.tcp.port = {{ .Values.rabbitmqPrometheusPlugin.port }}
|
||||
{{- end }}
|
||||
|
||||
## AMQPS support
|
||||
|
||||
@@ -96,6 +96,15 @@ spec:
|
||||
port: {{ .Values.prometheus.exporter.port }}
|
||||
targetPort: exporter
|
||||
{{ end }}
|
||||
{{- if .Values.rabbitmqPrometheusPlugin.enabled }}
|
||||
- name: metrics
|
||||
protocol: TCP
|
||||
{{- if eq .Values.service.type "NodePort" "LoadBalancer" }}
|
||||
nodePort: {{ .Values.rabbitmqPrometheusPlugin.nodePort }}
|
||||
{{- end }}
|
||||
port: {{ .Values.rabbitmqPrometheusPlugin.port }}
|
||||
targetPort: metrics
|
||||
{{- end }}
|
||||
selector:
|
||||
app: {{ template "rabbitmq-ha.name" . }}
|
||||
release: {{ .Release.Name }}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{{ if and .Values.prometheus.exporter.enabled .Values.prometheus.operator.enabled }}
|
||||
{{ if and (or .Values.prometheus.exporter.enabled .Values.rabbitmqPrometheusPlugin.enabled) .Values.prometheus.operator.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
@@ -14,8 +14,13 @@ spec:
|
||||
app: {{ template "rabbitmq-ha.name" . }}
|
||||
release: {{ .Release.Name }}
|
||||
endpoints:
|
||||
- port: exporter
|
||||
interval: {{ .Values.prometheus.operator.serviceMonitor.interval }}
|
||||
- interval: {{ .Values.prometheus.operator.serviceMonitor.interval }}
|
||||
{{- if .Values.rabbitmqPrometheusPlugin.enabled }}
|
||||
port: metrics
|
||||
path: {{ .Values.rabbitmqPrometheusPlugin.path }}
|
||||
{{- else }}
|
||||
port: exporter
|
||||
{{- end }}
|
||||
namespaceSelector:
|
||||
any: true
|
||||
{{ end }}
|
||||
{{- end }}
|
||||
@@ -137,6 +137,11 @@ spec:
|
||||
protocol: TCP
|
||||
containerPort: 5671
|
||||
{{- end }}
|
||||
{{- if .Values.rabbitmqPrometheusPlugin.enabled }}
|
||||
- name: metrics
|
||||
protocol: TCP
|
||||
containerPort: {{ .Values.rabbitmqPrometheusPlugin.port }}
|
||||
{{- end }}
|
||||
livenessProbe:
|
||||
{{- toYaml .Values.livenessProbe | trim | nindent 12 }}
|
||||
readinessProbe:
|
||||
|
||||
@@ -257,10 +257,22 @@ rabbitmqWebSTOMPPlugin:
|
||||
## Ref: https://www.rabbitmq.com/prometheus.html
|
||||
rabbitmqPrometheusPlugin:
|
||||
enabled: false
|
||||
|
||||
## NodePort
|
||||
nodePort: null
|
||||
|
||||
## metrics port, overrides configuration:
|
||||
## prometheus.tcp.port
|
||||
port: 15692
|
||||
|
||||
## metrics path, overrides configuration:
|
||||
## prometheus.path
|
||||
path: /metrics
|
||||
|
||||
## Prometheus configuration:
|
||||
## https://github.com/rabbitmq/rabbitmq-prometheus
|
||||
config: |
|
||||
# prometheus.path = /metrics
|
||||
# prometheus.tcp.port = 15692
|
||||
## prometheus.path and prometheus.tcp.port can be set above
|
||||
|
||||
## AMQPS support
|
||||
## Ref: http://www.rabbitmq.com/ssl.html
|
||||
@@ -284,7 +296,7 @@ replicaCount: 3
|
||||
|
||||
image:
|
||||
repository: rabbitmq
|
||||
tag: 3.7.19-alpine
|
||||
tag: 3.8.0-alpine
|
||||
pullPolicy: IfNotPresent
|
||||
## Optionally specify an array of imagePullSecrets.
|
||||
## Secrets must be manually created in the namespace.
|
||||
|
||||
Reference in New Issue
Block a user