50 lines
1.7 KiB
YAML
50 lines
1.7 KiB
YAML
{{- if and .Values.metaMonitoring.grafanaAgent.enabled .Values.metaMonitoring.grafanaAgent.metrics.enabled .Values.metaMonitoring.grafanaAgent.metrics.scrapeK8s.enabled }}
|
|
{{- with .Values.metaMonitoring.serviceMonitor }}
|
|
{{- if .enabled }}
|
|
apiVersion: monitoring.coreos.com/v1
|
|
kind: ServiceMonitor
|
|
metadata:
|
|
name: {{ include "mimir.resourceName" (dict "ctx" $ "component" "k8s-ksm") }}
|
|
namespace: {{ .namespace | default $.Release.Namespace | quote }}
|
|
labels:
|
|
{{- include "mimir.labels" (dict "ctx" $ "component" "meta-monitoring") | nindent 4 }}
|
|
{{- with .labels }}
|
|
{{- toYaml . | nindent 4 }}
|
|
{{- end }}
|
|
{{- with .annotations }}
|
|
annotations:
|
|
{{- toYaml . | nindent 4 }}
|
|
{{- end }}
|
|
spec:
|
|
endpoints:
|
|
- port: {{ $.Values.metaMonitoring.grafanaAgent.metrics.scrapeK8s.kubeStateMetrics.service.port }}
|
|
metricRelabelings:
|
|
- action: keep
|
|
regex: "(^|.*;){{ include "mimir.resourceName" (dict "ctx" $) }}.*"
|
|
sourceLabels:
|
|
- deployment
|
|
- statefulset
|
|
- pod
|
|
separator: ';'
|
|
{{- if kindIs "string" .clusterLabel }}
|
|
relabelings:
|
|
- targetLabel: cluster
|
|
replacement: "{{ .clusterLabel | default (include "mimir.clusterName" $) }}"
|
|
{{- end }}
|
|
path: /metrics
|
|
honorLabels: true # retain namespace label from kube-state-metrics
|
|
{{- with .scrapeTimeout }}
|
|
scrapeTimeout: {{ . }}
|
|
{{- end }}
|
|
{{- with ((((($.Values).metaMonitoring).grafanaAgent).metrics).scrapeK8s).kubeStateMetrics }}
|
|
namespaceSelector:
|
|
matchNames:
|
|
- {{ .namespace }}
|
|
selector:
|
|
matchLabels:
|
|
{{- toYaml .labelSelectors | nindent 6 }}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
{{- end -}}
|