manifests: add headless services for k8s components
This way they are discoverable via the kubernetes endpoints discovery of Prometheus.
This commit is contained in:
@@ -0,0 +1,18 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: kube-controller-manager-prometheus-discovery
|
||||||
|
labels:
|
||||||
|
k8s-app: kube-controller-manager
|
||||||
|
annotations:
|
||||||
|
prometheus.io/scrape: 'true'
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
k8s-app: kube-controller-manager
|
||||||
|
type: ClusterIP
|
||||||
|
clusterIP: None
|
||||||
|
ports:
|
||||||
|
- name: prometheus
|
||||||
|
port: 10252
|
||||||
|
targetPort: 10252
|
||||||
|
protocol: TCP
|
||||||
18
manifests/k8s/kube-dns-prom-bootkube-vagrant-multi.yaml
Normal file
18
manifests/k8s/kube-dns-prom-bootkube-vagrant-multi.yaml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: kube-dns-prometheus-discovery
|
||||||
|
labels:
|
||||||
|
k8s-app: kube-dns
|
||||||
|
annotations:
|
||||||
|
prometheus.io/scrape: 'true'
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
k8s-app: kube-dns
|
||||||
|
type: ClusterIP
|
||||||
|
clusterIP: None
|
||||||
|
ports:
|
||||||
|
- name: prometheus
|
||||||
|
port: 8082
|
||||||
|
targetPort: 8082
|
||||||
|
protocol: TCP
|
||||||
18
manifests/k8s/kube-scheduler-bootkube-vagrant-multi.yaml
Normal file
18
manifests/k8s/kube-scheduler-bootkube-vagrant-multi.yaml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: kube-scheduler-prometheus-discovery
|
||||||
|
labels:
|
||||||
|
k8s-app: kube-scheduler
|
||||||
|
annotations:
|
||||||
|
prometheus.io/scrape: 'true'
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
k8s-app: kube-scheduler
|
||||||
|
type: ClusterIP
|
||||||
|
clusterIP: None
|
||||||
|
ports:
|
||||||
|
- name: prometheus
|
||||||
|
port: 10251
|
||||||
|
targetPort: 10251
|
||||||
|
protocol: TCP
|
||||||
@@ -50,3 +50,27 @@ data:
|
|||||||
regex: kubernetes
|
regex: kubernetes
|
||||||
target_label: __scheme__
|
target_label: __scheme__
|
||||||
replacement: https
|
replacement: https
|
||||||
|
|
||||||
|
# Scrapes the endpoint lists for the kube-dns server. Which we consider
|
||||||
|
# part of a default setup.
|
||||||
|
- job_name: kube-components
|
||||||
|
scrape_interval: 20s
|
||||||
|
tls_config:
|
||||||
|
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
|
||||||
|
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
|
||||||
|
|
||||||
|
kubernetes_sd_configs:
|
||||||
|
- role: endpoints
|
||||||
|
|
||||||
|
relabel_configs:
|
||||||
|
- action: replace
|
||||||
|
source_labels: [__meta_kubernetes_service_name]
|
||||||
|
target_label: job
|
||||||
|
regex: "kube-(.*)-prometheus-discovery"
|
||||||
|
replacement: "kube-${1}"
|
||||||
|
- action: keep
|
||||||
|
source_labels: [__meta_kubernetes_service_name]
|
||||||
|
regex: "kube-(.*)-prometheus-discovery"
|
||||||
|
- action: keep
|
||||||
|
source_labels: [__meta_kubernetes_endpoint_port_name]
|
||||||
|
regex: "prometheus"
|
||||||
|
|||||||
Reference in New Issue
Block a user