[bitnami/prometheus-operator] add ServiceMonitor for Kubelet Service

This commit is contained in:
Sameer Naik
2020-01-21 12:30:29 +05:30
parent bab97b0db0
commit 2102992aab
5 changed files with 127 additions and 6 deletions

View File

@@ -2,7 +2,7 @@ apiVersion: v1
appVersion: 0.35.0
description: The Prometheus Operator for Kubernetes provides easy monitoring definitions for Kubernetes services and deployment and management of Prometheus instances.
name: prometheus-operator
version: 0.8.3
version: 0.9.0
keywords:
- prometheus
- alertmanager

View File

@@ -270,11 +270,18 @@ The following table lists the configurable parameters of the Prometheus Operator
### Exporters
| Parameter | Description | Default |
|----------------------------------------|-----------------------------|---------|
| `exporters.enabled` | Deploy exporters | `true` |
| `exporters.node-exporter.enabled` | Deploy `node-exporter` | `true` |
| `exporters.kube-state-metrics.enabled` | Deploy `kube-state-metrics` | `true` |
| Parameter | Description | Default |
|----------------------------------------------------|--------------------------------------------------------------------------------------------------------|---------------|
| `exporters.enabled` | Deploy exporters | `true` |
| `exporters.node-exporter.enabled` | Deploy `node-exporter` | `true` |
| `exporters.kube-state-metrics.enabled` | Deploy `kube-state-metrics` | `true` |
| `kubelet.namespace` | Namespace where kubelet service is deployed. Related configuration `operator.kubeletService.namespace` | `kube-system` |
| `kubelet.enabled` | Create a ServiceMonitor to scrape kubelet service | `true` |
| `kubelet.serviceMonitor.interval` | Scrape interval (use by default, falling back to Prometheus' default) | `nil` |
| `kubelet.serviceMonitor.metricRelabelings` | Metric relabeling | `[]` |
| `kubelet.serviceMonitor.relabelings` | Relabel configs | `[]` |
| `kubelet.serviceMonitor.cAdvisorMetricRelabelings` | Metric relabeling for scraping cAdvisor | `[]` |
| `kubelet.serviceMonitor.cAdvisorRelabelings` | Relabel configs for scraping cAdvisor | `[]` |
The above parameters map to the env variables defined in [bitnami/prometheus-operator](http://github.com/bitnami/bitnami-docker-prometheus-operator). For more information please refer to the [bitnami/prometheus-operator](http://github.com/bitnami/bitnami-docker-prometheus-operator) image documentation.

View File

@@ -0,0 +1,46 @@
{{- if .Values.kubelet.enabled }}
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: {{ template "prometheus-operator.fullname" . }}-kubelet
labels: {{- include "prometheus-operator.labels" . | nindent 4 }}
app.kubernetes.io/component: kubelet
spec:
jobLabel: k8s-app
selector:
matchLabels:
k8s-app: kubelet
namespaceSelector:
matchNames:
- {{ .Values.kubelet.namespace }}
endpoints:
- port: http-metrics
scheme: http
tlsConfig:
insecureSkipVerify: false
honorLabels: true
{{- if .Values.kubelet.serviceMonitor.interval }}
interval: {{ .Values.kubelet.serviceMonitor.interval }}
{{- end }}
{{- if .Values.kubelet.serviceMonitor.metricRelabelings }}
metricRelabelings: {{- include "prometheus-operator.tplValue" ( dict "value" .Values.kubelet.serviceMonitor.metricRelabelings "context" $) | nindent 8 }}
{{- end }}
{{- if .Values.kubelet.serviceMonitor.relabelings }}
relabelings: {{- toYaml .Values.kubelet.serviceMonitor.relabelings | nindent 8 }}
{{- end }}
- port: http-metrics
path: /metrics/cadvisor
scheme: http
tlsConfig:
insecureSkipVerify: false
honorLabels: true
{{- if .Values.kubelet.serviceMonitor.interval }}
interval: {{ .Values.kubelet.serviceMonitor.interval }}
{{- end }}
{{- if .Values.kubelet.serviceMonitor.cAdvisorMetricRelabelings }}
metricRelabelings: {{- include "prometheus-operator.tplValue" ( dict "value" .Values.kubelet.serviceMonitor.cAdvisorMetricRelabelings "context" $) | nindent 8 }}
{{- end }}
{{- if .Values.kubelet.serviceMonitor.cAdvisorRelabelings }}
relabelings: {{- toYaml .Values.kubelet.serviceMonitor.cAdvisorRelabelings | nindent 8 }}
{{- end }}
{{- end }}

View File

@@ -786,3 +786,37 @@ kube-state-metrics:
replicaCount: 2
serviceMonitor:
enabled: true
# Component scraping for kubelet and kubelet hosted cAdvisor
kubelet:
## Create a ServiceMonitor to scrape kubelet service
enabled: true
## Namespace where kubelet service is deployed
namespace: kube-system
serviceMonitor:
## Scrape interval. If not set, the Prometheus default scrape interval is used.
## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#endpoint
##
interval: ""
## Metric relabeling
## ref: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs
##
metricRelabelings: []
## Relabel configs
## ref: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
##
relabelings: []
## Metric relabeling for scraping cAdvisor
## ref: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs
##
cAdvisorMetricRelabelings: []
## Relabel configs for scraping cAdvisor
## ref: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs
##
cAdvisorRelabelings: []

View File

@@ -785,3 +785,37 @@ node-exporter:
kube-state-metrics:
serviceMonitor:
enabled: true
# Component scraping for kubelet and kubelet hosted cAdvisor
kubelet:
## Create a ServiceMonitor to scrape kubelet service
enabled: true
## Namespace where kubelet service is deployed
namespace: kube-system
serviceMonitor:
## Scrape interval. If not set, the Prometheus default scrape interval is used.
## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#endpoint
##
interval: ""
## Metric relabeling
## ref: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs
##
metricRelabelings: []
## Relabel configs
## ref: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config
##
relabelings: []
## Metric relabeling for scraping cAdvisor
## ref: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs
##
cAdvisorMetricRelabelings: []
## Relabel configs for scraping cAdvisor
## ref: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs
##
cAdvisorRelabelings: []