Skip to content

Commit 14de943

Browse files
committed
chore(promtheus): service discovery in namespace
1 parent f333fe7 commit 14de943

3 files changed

Lines changed: 54 additions & 40 deletions

File tree

addons/prometheus/2/chart/prometheus/templates/_scrape_config.tpl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ Usage:
1212
kubernetes_sd_configs:
1313
- role: endpoints
1414
namespaces:
15+
own_namespace: true
1516
names:
1617
- {{ include "common.names.namespace" .context }}
1718
metrics_path: /metrics
@@ -83,4 +84,4 @@ relabel_configs:
8384
- __tmp_hash
8485
regex: 0
8586
action: keep
86-
{{- end -}}
87+
{{- end -}}

addons/prometheus/2/chart/prometheus/templates/bind.yaml

Lines changed: 0 additions & 34 deletions
This file was deleted.

addons/prometheus/2/chart/prometheus/values.yaml

Lines changed: 52 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -628,6 +628,9 @@ server:
628628
{{- if .Values.server.extraScrapeConfigs}}
629629
{{- include "common.tplvalues.render" (dict "value" .Values.server.extraScrapeConfigs "context" $) | nindent 2 }}
630630
{{- end }}
631+
{{- if .Values.server.dsScrapeConfigs}}
632+
{{- include "common.tplvalues.render" (dict "value" .Values.server.dsScrapeConfigs "context" $) | nindent 2 }}
633+
{{- end }}
631634
{{- if or .Values.alertmanager.enabled .Values.server.alertingEndpoints}}
632635
alerting:
633636
alertmanagers:
@@ -649,7 +652,50 @@ server:
649652
## @param server.extraScrapeConfigs Promethus configuration, useful to declare new scrape_configs. This content will be merged with the 'server.configuration' value and stored in the the prometheus.yaml file.
650653
## ref: <https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config>
651654
##
652-
extraScrapeConfigs: []
655+
extraScrapeConfigs: []
656+
dsScrapeConfigs:
657+
- job_name: 'service-endpoints'
658+
honor_labels: true
659+
kubernetes_sd_configs:
660+
- role: endpoints
661+
namespaces:
662+
own_namespace: true
663+
names:
664+
- default
665+
relabel_configs:
666+
- source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape]
667+
action: keep
668+
regex: true
669+
- source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape_slow]
670+
action: drop
671+
regex: true
672+
- source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scheme]
673+
action: replace
674+
target_label: __scheme__
675+
regex: (https?)
676+
- source_labels: [__meta_kubernetes_service_annotation_prometheus_io_path]
677+
action: replace
678+
target_label: __metrics_path__
679+
regex: (.+)
680+
- source_labels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port]
681+
action: replace
682+
target_label: __address__
683+
regex: (.+?)(?::\d+)?;(\d+)
684+
replacement: $1:$2
685+
- action: labelmap
686+
regex: __meta_kubernetes_service_annotation_prometheus_io_param_(.+)
687+
replacement: __param_$1
688+
- action: labelmap
689+
regex: __meta_kubernetes_service_label_(.+)
690+
- source_labels: [__meta_kubernetes_namespace]
691+
action: replace
692+
target_label: namespace
693+
- source_labels: [__meta_kubernetes_service_name]
694+
action: replace
695+
target_label: service
696+
- source_labels: [__meta_kubernetes_pod_node_name]
697+
action: replace
698+
target_label: node
653699
## @param server.replicaCount Number of Prometheus replicas to deploy
654700
##
655701
replicaCount: 1
@@ -824,7 +870,7 @@ server:
824870
## StrategyType
825871
## Can be set to RollingUpdate or Recreate
826872
##
827-
type: RollingUpdate
873+
type: Recreate
828874

829875
## @param server.priorityClassName Prometheus pods' priorityClassName
830876
##
@@ -1465,15 +1511,16 @@ server:
14651511
networkPolicy:
14661512
## @param networkPolicy.enabled Enable creation of NetworkPolicy resources
14671513
##
1468-
enabled: true
1514+
enabled: true
14691515
## @param networkPolicy.allowExternal The Policy model to apply.
14701516
## When set to false, only pods with the correct
14711517
## client label will have network access to the port MySQL is listening
14721518
## on. When true, MySQL will accept connections from any source
14731519
## (with the correct destination port).
14741520
##
14751521
allowCurrentNamespace: true
1476-
allowNamespaces: []
1522+
allowNamespaces:
1523+
- traefik
14771524
## @section Init Container Parameters
14781525
##
14791526

@@ -1521,4 +1568,4 @@ volumePermissions:
15211568
## "auto" is especially useful for OpenShift which has scc with dynamic user ids (and 0 is not allowed)
15221569
##
15231570
containerSecurityContext:
1524-
runAsUser: 0
1571+
runAsUser: 0

0 commit comments

Comments
 (0)