mirror of
https://github.com/helm/charts.git
synced 2026-08-23 22:37:45 +00:00
[stable/prometheus-blackbox-exporter] Breaking change: general upgrade and ServiceMonitor (#11426)
* [stable/prometheus-blackbox-exporter] Add optional ServiceMonitor. Signed-off-by: Cédric de Saint Martin <cdesaintmartin@wiremind.fr> * [stable/prometheus-blackbox-exporter] Breaking change: use recommended labels. Signed-off-by: Cédric de Saint Martin <cdesaintmartin@wiremind.fr> * Add desaintmartin to owners. Signed-off-by: Cédric de Saint Martin <cdesaintmartin@wiremind.fr> * [stable/prometheus-blackbox-exporter] Update deployment to apps/v1. Signed-off-by: Cédric de Saint Martin <cdesaintmartin@wiremind.fr> * Fix default servicemonitor name to example.com. Signed-off-by: Cédric de Saint Martin <cdesaintmartin@wiremind.fr>
This commit is contained in:
committed by
Kubernetes Prow Robot
parent
b12fdfa50b
commit
9fb9f2adc2
@@ -1,7 +1,7 @@
|
||||
apiVersion: v1
|
||||
description: Prometheus Blackbox Exporter
|
||||
name: prometheus-blackbox-exporter
|
||||
version: 0.4.0
|
||||
version: 1.0.0
|
||||
appVersion: 0.14.0
|
||||
home: https://github.com/prometheus/blackbox_exporter
|
||||
sources:
|
||||
@@ -11,5 +11,7 @@ keywords:
|
||||
- blackbox
|
||||
- monitoring
|
||||
maintainers:
|
||||
- name: desaintmartin
|
||||
email: cedric@desaintmartin.fr
|
||||
- name: gianrubio
|
||||
email: gianrubio@gmail.com
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
approvers:
|
||||
- desaintmartin
|
||||
- gianrubio
|
||||
reviewers:
|
||||
- gianrubio
|
||||
- desaintmartin
|
||||
- gianrubio
|
||||
|
||||
@@ -72,6 +72,11 @@ The following table lists the configurable parameters of the Blackbox-Exporter c
|
||||
| `service.type` | type of service to create | `ClusterIP` |
|
||||
| `service.port` | port for the blackbox http service | `9115` |
|
||||
| `service.externalIPs` | list of external ips | [] |
|
||||
| `serviceMonitor.enabled` | If true, a ServiceMonitor CRD is created for a prometheus operator | `false` |
|
||||
| `serviceMonitor.labels` | Labels for prometheus operator | `{}` |
|
||||
| `serviceMonitor.interval` | Interval for prometheus operator endpoint | `30s` |
|
||||
| `serviceMonitor.url` | The URL that blackbox will scrape if serviceMonitor is enabled | `http://example.com/healthz` |
|
||||
| `serviceMonitor.urlHumanReadable` | Optional human readable URL that will appear in Prometheus / AlertManager | `nil` |
|
||||
|
||||
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example,
|
||||
|
||||
@@ -89,3 +94,16 @@ $ helm install --name my-release -f values.yaml stable/prometheus-blackbox-expor
|
||||
```
|
||||
|
||||
> **Tip**: You can use the default [values.yaml](values.yaml)
|
||||
|
||||
## Upgrading an existing Release to a new major version
|
||||
|
||||
### 1.0.0
|
||||
|
||||
This version introduce the new recommended labels.
|
||||
|
||||
In order to upgrade, delete the Deployment before upgrading:
|
||||
```bash
|
||||
$ kubectl delete deployment my-release-prometheus-blackbox-exporter
|
||||
```
|
||||
|
||||
Note that this will cause downtime of the blackbox.
|
||||
|
||||
@@ -4,10 +4,10 @@ kind: {{ if .Values.secretConfig -}} Secret {{- else -}} ConfigMap {{- end }}
|
||||
metadata:
|
||||
name: {{ template "prometheus-blackbox-exporter.fullname" . }}
|
||||
labels:
|
||||
chart: {{ template "prometheus-blackbox-exporter.chart" . }}
|
||||
app: {{ template "prometheus-blackbox-exporter.name" . }}
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
app.kubernetes.io/name: {{ include "prometheus-blackbox-exporter.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
helm.sh/chart: {{ include "prometheus-blackbox-exporter.chart" . }}
|
||||
{{ if .Values.secretConfig -}} stringData: {{- else -}} data: {{- end }}
|
||||
blackbox.yaml: |
|
||||
{{ toYaml .Values.config | indent 4 }}
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
apiVersion: apps/v1beta2
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "prometheus-blackbox-exporter.fullname" . }}
|
||||
labels:
|
||||
chart: {{ template "prometheus-blackbox-exporter.chart" . }}
|
||||
app: {{ template "prometheus-blackbox-exporter.name" . }}
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
app.kubernetes.io/name: {{ include "prometheus-blackbox-exporter.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
helm.sh/chart: {{ include "prometheus-blackbox-exporter.chart" . }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicas }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ template "prometheus-blackbox-exporter.name" . }}
|
||||
release: "{{ .Release.Name }}"
|
||||
app.kubernetes.io/name: {{ include "prometheus-blackbox-exporter.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
strategy:
|
||||
rollingUpdate:
|
||||
maxSurge: 1
|
||||
@@ -21,8 +21,10 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: {{ template "prometheus-blackbox-exporter.name" . }}
|
||||
release: "{{ .Release.Name }}"
|
||||
app.kubernetes.io/name: {{ include "prometheus-blackbox-exporter.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
helm.sh/chart: {{ include "prometheus-blackbox-exporter.chart" . }}
|
||||
annotations:
|
||||
{{ toYaml .Values.podAnnotations | indent 8 }}
|
||||
spec:
|
||||
|
||||
@@ -6,10 +6,10 @@ kind: Ingress
|
||||
metadata:
|
||||
name: {{ template "prometheus-blackbox-exporter.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "prometheus-blackbox-exporter.name" . }}
|
||||
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
app.kubernetes.io/name: {{ include "prometheus-blackbox-exporter.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
helm.sh/chart: {{ include "prometheus-blackbox-exporter.chart" . }}
|
||||
annotations:
|
||||
{{ toYaml .Values.ingress.annotations | indent 4 }}
|
||||
spec:
|
||||
@@ -27,4 +27,4 @@ spec:
|
||||
tls:
|
||||
{{ toYaml .Values.ingress.tls | indent 4 }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
@@ -7,10 +7,10 @@ metadata:
|
||||
{{ toYaml .Values.service.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
chart: {{ template "prometheus-blackbox-exporter.chart" . }}
|
||||
app: {{ template "prometheus-blackbox-exporter.name" . }}
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
app.kubernetes.io/name: {{ include "prometheus-blackbox-exporter.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
helm.sh/chart: {{ include "prometheus-blackbox-exporter.chart" . }}
|
||||
{{- if .Values.service.labels }}
|
||||
{{ toYaml .Values.service.labels | indent 4 }}
|
||||
{{- end }}
|
||||
@@ -25,5 +25,5 @@ spec:
|
||||
{{ toYaml .Values.service.externalIPs | indent 4 }}
|
||||
{{- end }}
|
||||
selector:
|
||||
app: {{ template "prometheus-blackbox-exporter.name" . }}
|
||||
release: "{{ .Release.Name }}"
|
||||
app.kubernetes.io/name: {{ include "prometheus-blackbox-exporter.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
{{- if .Values.serviceMonitor.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ template "prometheus-blackbox-exporter.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "prometheus-blackbox-exporter.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
helm.sh/chart: {{ include "prometheus-blackbox-exporter.chart" . }}
|
||||
{{- if .Values.serviceMonitor.labels }}
|
||||
{{- toYaml .Values.serviceMonitor.labels | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
endpoints:
|
||||
- port: http
|
||||
scheme: http
|
||||
path: "/probe"
|
||||
interval: {{ .Values.serviceMonitor.interval }}
|
||||
scrapeTimeout: {{ .Values.serviceMonitor.scrapeTimeout }}
|
||||
params:
|
||||
module:
|
||||
- http_2xx
|
||||
target:
|
||||
- {{ .Values.serviceMonitor.url }}
|
||||
metricRelabelings:
|
||||
- sourceLabels: [__address__]
|
||||
targetLabel: __param_target
|
||||
- sourceLabels: [__param_target]
|
||||
targetLabel: instance
|
||||
- targetLabel: target
|
||||
{{- if .Values.serviceMonitor.urlHumanReadable }}
|
||||
replacement: {{ .Values.serviceMonitor.urlHumanReadable }}
|
||||
{{- else }}
|
||||
replacement: {{ .Values.serviceMonitor.url }}
|
||||
{{- end }}
|
||||
jobLabel: "{{ .Release.Name }}"
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: {{ include "prometheus-blackbox-exporter.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
namespaceSelector:
|
||||
matchNames:
|
||||
- {{ .Release.Namespace }}
|
||||
{{- end }}
|
||||
@@ -80,3 +80,16 @@ configmapReload:
|
||||
## Ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
||||
##
|
||||
resources: {}
|
||||
|
||||
serviceMonitor:
|
||||
## If true, a ServiceMonitor CRD is created for a prometheus operator
|
||||
## https://github.com/coreos/prometheus-operator
|
||||
##
|
||||
enabled: false
|
||||
labels: {}
|
||||
interval: 30s
|
||||
scrapeTimeout: 30s
|
||||
# The URL that blackbox will scrape
|
||||
url: http://example.com/healthz
|
||||
# Optional human readable URL that will appear in Prometheus / AlertManager
|
||||
urlHumanReadable: # www.changemeoriwillfail.com
|
||||
|
||||
Reference in New Issue
Block a user