[bitnami/kube-prometheus] Added routePrefix and portName to alertmanager and prometheus (#5573)

* Added support for portName in prometheus manifest

* Added support for routePrefix and portName in alertManager manifest

* Updated values.yaml for kube-prometheus chart to support routePrefix and portName for alertmanager and prometheus

* Updated README to include the new options

* uncomment the prometheus.portName to make it consistent

* Bumping Chart version to 4.0.2

* fix trailing spaces in values.yaml

* Updated alertmanager/servicemonitor.yaml to use alertmanager.routePrefix as path

* Increase Chart.yaml version to 4.1.0

Co-authored-by: Ibone González Mauraza <gibone@vmware.com>
This commit is contained in:
petersin0422
2021-02-23 01:33:08 -08:00
committed by GitHub
parent 5e600624c0
commit 2c8aea703b
6 changed files with 24 additions and 6 deletions

View File

@@ -34,4 +34,4 @@ sources:
- https://github.com/bitnami/bitnami-docker-prometheus
- https://github.com/bitnami/bitnami-docker-alertmanager
- https://github.com/prometheus-operator/kube-prometheus
version: 4.0.2
version: 4.1.0

View File

@@ -209,6 +209,7 @@ The following table lists the configurable parameters of the kube-prometheus cha
| `prometheus.externalLabels` | External labels to add to any time series | `{}` |
| `prometheus.replicaExternalLabelName` | Name of the external label used to denote replica name | `nil` |
| `prometheus.replicaExternalLabelNameClear` | Clear external label used to denote replica name | `false` |
| `prometheus.portName` | Port name used for the pods and governing service. This defaults to web | `web` |
| `prometheus.routePrefix` | Prefix used to register routes, overriding externalUrl route | `/` |
| `prometheus.prometheusExternalLabelName` | Name of the external label used to denote Prometheus instance name | `nil` |
| `prometheus.prometheusExternalLabelNameClear` | Clear external label used to denote Prometheus instance name | `false` |
@@ -337,6 +338,8 @@ The following table lists the configurable parameters of the kube-prometheus cha
| `alertmanager.config` | Alertmanager configuration directive | `{"global":{"resolve_timeout":"5m"},"route":{"group_by":["job"],"group_wait":"30s","group_interval":"5m","repeat_interval":"12h","receiver":"null","routes":[{"match":{"alertname":"Watchdog"},"receiver":"null"}]},"receivers":[{"name":"null"}]}` |
| `alertmanager.externalConfig` | Alertmanager configuration is created externally. If true, `alertmanager.config` is ignored, and a secret will not be created. | `false` See [docs](https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation/user-guides/alerting.md) for details |
| `alertmanager.replicaCount` | Number of Alertmanager replicas desired | `1` |
| `alertmanager.portName` | Port name used for the pods and governing service. This defaults to web | `web` |
| `alertmanager.routePrefix` | Prefix used to register routes, overriding externalUrl route | `/` |
| `alertmanager.logLevel` | Log level for Alertmanager | `info` |
| `alertmanager.logFormat` | Log format for Alertmanager | `logfmt` |
| `alertmanager.podMetadata` | Standard objects metadata | `{}` |

View File

@@ -15,10 +15,11 @@ spec:
{{- if index .Values.alertmanager "externalUrl" }}
externalUrl: "{{ .Values.alertmanager.externalUrl }}"
{{- else if and .Values.alertmanager.ingress.enabled .Values.alertmanager.ingress.hosts }}
externalUrl: {{ if .Values.alertmanager.ingress.tls }}https{{else}}http{{ end }}://{{ (index .Values.alertmanager.ingress.hosts 0).name }}/
externalUrl: {{ if .Values.alertmanager.ingress.tls }}https{{else}}http{{ end }}://{{ (index .Values.alertmanager.ingress.hosts 0).name }}{{ .Values.alertmanager.routePrefix }}
{{- else }}
externalUrl: http://{{ template "kube-prometheus.alertmanager.fullname" . }}.{{ .Release.Namespace }}:{{ .Values.alertmanager.service.port }}
externalUrl: http://{{ template "kube-prometheus.alertmanager.fullname" . }}.{{ .Release.Namespace }}:{{ .Values.alertmanager.service.port }}{{ .Values.alertmanager.routePrefix }}
{{- end }}
portName: "{{ .Values.alertmanager.portName }}"
paused: {{ .Values.alertmanager.paused }}
logFormat: {{ .Values.alertmanager.logFormat }}
logLevel: {{ .Values.alertmanager.logLevel }}
@@ -30,7 +31,7 @@ spec:
configMaps: {{- include "common.tplvalues.render" (dict "value" .Values.alertmanager.configMaps "context" $) | nindent 4 }}
{{- end }}
resources: {{- toYaml .Values.alertmanager.resources | nindent 4 }}
routePrefix: "/"
routePrefix: "{{ .Values.alertmanager.routePrefix }}"
{{- if .Values.alertmanager.securityContext.enabled }}
securityContext:
runAsUser: {{ .Values.alertmanager.securityContext.runAsUser }}

View File

@@ -16,7 +16,7 @@ spec:
{{- if .Values.alertmanager.serviceMonitor.interval }}
interval: {{ .Values.alertmanager.serviceMonitor.interval }}
{{- end }}
path: "/metrics"
path: {{ trimSuffix "/" .Values.alertmanager.routePrefix }}/metrics
{{- if .Values.alertmanager.serviceMonitor.metricRelabelings }}
metricRelabelings: {{- include "common.tplvalues.render" ( dict "value" .Values.alertmanager.serviceMonitor.metricRelabelings "context" $) | nindent 8 }}
{{- end }}

View File

@@ -31,7 +31,7 @@ spec:
- namespace: {{ .Release.Namespace }}
name: {{ template "kube-prometheus.alertmanager.fullname" . }}
port: http
pathPrefix: "/"
pathPrefix: "{{ .Values.alertmanager.routePrefix }}"
{{- else }}
[]
{{- end }}
@@ -82,6 +82,7 @@ spec:
{{- if .Values.prometheus.walCompression }}
walCompression: {{ .Values.prometheus.walCompression }}
{{- end }}
portName: "{{ .Values.prometheus.portName }}"
routePrefix: "{{ .Values.prometheus.routePrefix }}"
{{- if .Values.prometheus.secrets }}
secrets: {{- include "common.tplvalues.render" (dict "value" .Values.prometheus.secrets "context" $) | nindent 4 }}

View File

@@ -937,6 +937,10 @@ prometheus:
##
tls: {}
## Port name used for the pods and governing service. This defaults to web
##
portName: web
## Configuration for alertmanager
## ref: https://prometheus.io/docs/alerting/alertmanager/
##
@@ -1311,6 +1315,15 @@ alertmanager:
##
additionalPeers: []
## Prefix used to register routes, overriding externalUrl route.
## Useful for proxies that rewrite URLs.
##
routePrefix: /
## Port name used for the pods and governing service. This defaults to web
##
portName: web
## Exporters
##
exporters: