From b5c95f9cbfe8b1423711e3df17194591f23cb232 Mon Sep 17 00:00:00 2001 From: faizanahmad055 Date: Sun, 25 Apr 2021 23:05:36 +0200 Subject: [PATCH 1/3] Add Optional pod monitor Signed-off-by: faizanahmad055 --- README.md | 2 +- .../chart/reloader/templates/podmonitor.yaml | 31 +++++++++++++++++++ .../kubernetes/chart/reloader/values.yaml | 13 +++++++- .../kubernetes/manifests/podmonitor.yaml | 3 ++ .../templates/chart/values.yaml.tmpl | 12 +++++++ 5 files changed, 59 insertions(+), 2 deletions(-) create mode 100644 deployments/kubernetes/chart/reloader/templates/podmonitor.yaml create mode 100644 deployments/kubernetes/manifests/podmonitor.yaml diff --git a/README.md b/README.md index f4ae7b0f..b58abf05 100644 --- a/README.md +++ b/README.md @@ -219,7 +219,7 @@ Reloader can be configured to ignore the resources `secrets` and `configmaps` by You can also set the log format of Reloader to json by setting `logFormat` to `json` in values.yaml and apply the chart -You can enable to scrape Reloader's Prometheus metrics by setting `serviceMonitor.enabled` to `true` in values.yaml file. +You can enable to scrape Reloader's Prometheus metrics by setting `serviceMonitor.enabled` or `podMonitor.enabled` to `true` in values.yaml file. Service monitor will be removed in future releases of reloader in favour of Pod monitor. ## Help diff --git a/deployments/kubernetes/chart/reloader/templates/podmonitor.yaml b/deployments/kubernetes/chart/reloader/templates/podmonitor.yaml new file mode 100644 index 00000000..c6e9d8a9 --- /dev/null +++ b/deployments/kubernetes/chart/reloader/templates/podmonitor.yaml @@ -0,0 +1,31 @@ +{{- if and ( .Capabilities.APIVersions.Has "monitoring.coreos.com/v1" ) ( .Values.reloader.podMonitor.enabled ) }} +apiVersion: monitoring.coreos.com/v1 +kind: PodMonitor +metadata: + labels: +{{ include "reloader-labels.chart" . | indent 4 }} +{{- if .Values.reloader.podMonitor.labels }} +{{ toYaml .Values.reloader.podMonitor.labels | indent 4}} +{{- end }} + name: {{ template "reloader-fullname" . }} +{{- if .Values.reloader.podMonitor.namespace }} + namespace: {{ .Values.reloader.podMonitor.namespace }} +{{- end }} +spec: + podMetricsEndpoints: + - port: http + path: "/metrics" +{{- if .Values.reloader.podMonitor.interval }} + interval: {{ .Values.reloader.podMonitor.interval }} +{{- end }} +{{- if .Values.reloader.podMonitor.timeout }} + scrapeTimeout: {{ .Values.reloader.podMonitor.timeout }} +{{- end }} + jobLabel: {{ template "reloader-fullname" . }} + namespaceSelector: + matchNames: + - {{ .Release.Namespace }} + selector: + matchLabels: + {{ include "reloader-labels.chart" . | nindent 6 }} +{{- end }} \ No newline at end of file diff --git a/deployments/kubernetes/chart/reloader/values.yaml b/deployments/kubernetes/chart/reloader/values.yaml index 0bb8e985..7fdcd6ca 100644 --- a/deployments/kubernetes/chart/reloader/values.yaml +++ b/deployments/kubernetes/chart/reloader/values.yaml @@ -113,4 +113,15 @@ reloader: # labels: # Set timeout for scrape # timeout: 10s - + + podMonitor: + # enabling this requires service to be enabled as well, or no endpoints will be found + enabled: false + # Set the namespace the podMonitor should be deployed + # namespace: monitoring + # Set how frequently Prometheus should scrape + # interval: 30s + # Set labels for the podMonitor, use this to define your scrape label for Prometheus Operator + # labels: + # Set timeout for scrape + # timeout: 10s diff --git a/deployments/kubernetes/manifests/podmonitor.yaml b/deployments/kubernetes/manifests/podmonitor.yaml new file mode 100644 index 00000000..02746e7e --- /dev/null +++ b/deployments/kubernetes/manifests/podmonitor.yaml @@ -0,0 +1,3 @@ +--- +# Source: reloader/templates/podmonitor.yaml + diff --git a/deployments/kubernetes/templates/chart/values.yaml.tmpl b/deployments/kubernetes/templates/chart/values.yaml.tmpl index 2aeaae48..be67f844 100644 --- a/deployments/kubernetes/templates/chart/values.yaml.tmpl +++ b/deployments/kubernetes/templates/chart/values.yaml.tmpl @@ -114,3 +114,15 @@ reloader: # Set timeout for scrape # timeout: 10s + + podMonitor: + # enabling this requires service to be enabled as well, or no endpoints will be found + enabled: false + # Set the namespace the podMonitor should be deployed + # namespace: monitoring + # Set how frequently Prometheus should scrape + # interval: 30s + # Set labels for the podMonitor, use this to define your scrape label for Prometheus Operator + # labels: + # Set timeout for scrape + # timeout: 10s \ No newline at end of file From 12a7fed3aebc1b1b8bd46402453aa1ffa3a72890 Mon Sep 17 00:00:00 2001 From: faizanahmad055 Date: Sun, 25 Apr 2021 23:09:40 +0200 Subject: [PATCH 2/3] Add endline in values.yaml.tmpl Signed-off-by: faizanahmad055 --- deployments/kubernetes/templates/chart/values.yaml.tmpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deployments/kubernetes/templates/chart/values.yaml.tmpl b/deployments/kubernetes/templates/chart/values.yaml.tmpl index be67f844..084661ba 100644 --- a/deployments/kubernetes/templates/chart/values.yaml.tmpl +++ b/deployments/kubernetes/templates/chart/values.yaml.tmpl @@ -125,4 +125,4 @@ reloader: # Set labels for the podMonitor, use this to define your scrape label for Prometheus Operator # labels: # Set timeout for scrape - # timeout: 10s \ No newline at end of file + # timeout: 10s From 1e987db54dede370019d823ee3c8bf348528e06c Mon Sep 17 00:00:00 2001 From: faizanahmad055 Date: Sun, 25 Apr 2021 23:10:23 +0200 Subject: [PATCH 3/3] Add endline in podmonitor.yaml Signed-off-by: faizanahmad055 --- deployments/kubernetes/chart/reloader/templates/podmonitor.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deployments/kubernetes/chart/reloader/templates/podmonitor.yaml b/deployments/kubernetes/chart/reloader/templates/podmonitor.yaml index c6e9d8a9..7e1b2e9c 100644 --- a/deployments/kubernetes/chart/reloader/templates/podmonitor.yaml +++ b/deployments/kubernetes/chart/reloader/templates/podmonitor.yaml @@ -28,4 +28,4 @@ spec: selector: matchLabels: {{ include "reloader-labels.chart" . | nindent 6 }} -{{- end }} \ No newline at end of file +{{- end }}