From 3aeca3de7ba242e68c94db6b263091ff79a9a7ef Mon Sep 17 00:00:00 2001 From: Frederic Branczyk <fbranczyk@gmail.com> Date: Tue, 30 May 2017 16:48:52 -0700 Subject: [PATCH] kube-prometheus: simplify service monitors --- ...heus-k8s-service-monitor-alertmanager.yaml | 14 +++++++---- ...metheus-k8s-service-monitor-apiserver.yaml | 6 ++--- ...eus-k8s-service-monitor-k8s-apps-http.yaml | 23 ------------------- ...rvice-monitor-kube-controller-manager.yaml | 17 ++++++++++++++ ...us-k8s-service-monitor-kube-scheduler.yaml | 17 ++++++++++++++ ...8s-service-monitor-kube-state-metrics.yaml | 5 ++-- ...rometheus-k8s-service-monitor-kubelet.yaml | 10 ++++---- ...eus-k8s-service-monitor-node-exporter.yaml | 5 ++-- ...etheus-k8s-service-monitor-prometheus.yaml | 12 ++++++---- 9 files changed, 63 insertions(+), 46 deletions(-) delete mode 100644 manifests/prometheus/prometheus-k8s-service-monitor-k8s-apps-http.yaml create mode 100644 manifests/prometheus/prometheus-k8s-service-monitor-kube-controller-manager.yaml create mode 100644 manifests/prometheus/prometheus-k8s-service-monitor-kube-scheduler.yaml diff --git a/manifests/prometheus/prometheus-k8s-service-monitor-alertmanager.yaml b/manifests/prometheus/prometheus-k8s-service-monitor-alertmanager.yaml index d193b676..29d68c82 100644 --- a/manifests/prometheus/prometheus-k8s-service-monitor-alertmanager.yaml +++ b/manifests/prometheus/prometheus-k8s-service-monitor-alertmanager.yaml @@ -1,12 +1,16 @@ apiVersion: monitoring.coreos.com/v1alpha1 kind: ServiceMonitor metadata: - labels: - alertmanager: main name: alertmanager + labels: + app: alertmanager spec: + selector: + matchLabels: + alertmanager: main + namespaceSelector: + matchNames: + - monitoring endpoints: - port: web - selector: - matchExpressions: - - {key: alertmanager, operator: In, values: [main]} + interval: 30s diff --git a/manifests/prometheus/prometheus-k8s-service-monitor-apiserver.yaml b/manifests/prometheus/prometheus-k8s-service-monitor-apiserver.yaml index 1fd793e5..09a87c2e 100644 --- a/manifests/prometheus/prometheus-k8s-service-monitor-apiserver.yaml +++ b/manifests/prometheus/prometheus-k8s-service-monitor-apiserver.yaml @@ -3,9 +3,9 @@ kind: ServiceMonitor metadata: name: kube-apiserver labels: - k8s-apps: https + k8s-app: apiserver spec: - jobLabel: provider + jobLabel: component selector: matchLabels: component: apiserver @@ -15,7 +15,7 @@ spec: - default endpoints: - port: https - interval: 15s + interval: 30s scheme: https tlsConfig: caFile: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt diff --git a/manifests/prometheus/prometheus-k8s-service-monitor-k8s-apps-http.yaml b/manifests/prometheus/prometheus-k8s-service-monitor-k8s-apps-http.yaml deleted file mode 100644 index fbfcda97..00000000 --- a/manifests/prometheus/prometheus-k8s-service-monitor-k8s-apps-http.yaml +++ /dev/null @@ -1,23 +0,0 @@ -apiVersion: monitoring.coreos.com/v1alpha1 -kind: ServiceMonitor -metadata: - name: k8s-apps-http - namespace: monitoring - labels: - k8s-apps: http -spec: - jobLabel: k8s-app - selector: - matchExpressions: - - {key: k8s-app, operator: Exists} - - {key: k8s-app, operator: NotIn, values: [kubelet]} - namespaceSelector: - matchNames: - - kube-system - endpoints: - - port: http-metrics - interval: 15s - - port: http-metrics-dnsmasq - interval: 15s - - port: http-metrics-skydns - interval: 15s diff --git a/manifests/prometheus/prometheus-k8s-service-monitor-kube-controller-manager.yaml b/manifests/prometheus/prometheus-k8s-service-monitor-kube-controller-manager.yaml new file mode 100644 index 00000000..eef95a84 --- /dev/null +++ b/manifests/prometheus/prometheus-k8s-service-monitor-kube-controller-manager.yaml @@ -0,0 +1,17 @@ +apiVersion: monitoring.coreos.com/v1alpha1 +kind: ServiceMonitor +metadata: + name: kube-controller-manager + labels: + k8s-app: kube-controller-manager +spec: + jobLabel: k8s-app + endpoints: + - port: http-metrics + interval: 30s + selector: + matchLabels: + k8s-app: kube-controller-manager + namespaceSelector: + matchNames: + - kube-system diff --git a/manifests/prometheus/prometheus-k8s-service-monitor-kube-scheduler.yaml b/manifests/prometheus/prometheus-k8s-service-monitor-kube-scheduler.yaml new file mode 100644 index 00000000..663f8cfb --- /dev/null +++ b/manifests/prometheus/prometheus-k8s-service-monitor-kube-scheduler.yaml @@ -0,0 +1,17 @@ +apiVersion: monitoring.coreos.com/v1alpha1 +kind: ServiceMonitor +metadata: + name: kube-scheduler + labels: + k8s-app: kube-scheduler +spec: + jobLabel: k8s-app + endpoints: + - port: http-metrics + interval: 30s + selector: + matchLabels: + k8s-app: kube-scheduler + namespaceSelector: + matchNames: + - kube-system diff --git a/manifests/prometheus/prometheus-k8s-service-monitor-kube-state-metrics.yaml b/manifests/prometheus/prometheus-k8s-service-monitor-kube-state-metrics.yaml index c4ed1afc..a276702a 100644 --- a/manifests/prometheus/prometheus-k8s-service-monitor-kube-state-metrics.yaml +++ b/manifests/prometheus/prometheus-k8s-service-monitor-kube-state-metrics.yaml @@ -2,9 +2,8 @@ apiVersion: monitoring.coreos.com/v1alpha1 kind: ServiceMonitor metadata: name: kube-state-metrics - namespace: monitoring labels: - k8s-apps: http + k8s-app: kube-state-metrics spec: jobLabel: k8s-app selector: @@ -15,5 +14,5 @@ spec: - monitoring endpoints: - port: http-metrics - interval: 15s + interval: 30s honorLabels: true diff --git a/manifests/prometheus/prometheus-k8s-service-monitor-kubelet.yaml b/manifests/prometheus/prometheus-k8s-service-monitor-kubelet.yaml index 5729d8f0..cdc3ffb6 100644 --- a/manifests/prometheus/prometheus-k8s-service-monitor-kubelet.yaml +++ b/manifests/prometheus/prometheus-k8s-service-monitor-kubelet.yaml @@ -3,16 +3,16 @@ kind: ServiceMonitor metadata: name: kubelet labels: - k8s-apps: http + k8s-app: kubelet spec: jobLabel: k8s-app + endpoints: + - port: http-metrics + interval: 30s + honorLabels: true selector: matchLabels: k8s-app: kubelet namespaceSelector: matchNames: - kube-system - endpoints: - - port: http-metrics - interval: 15s - honorLabels: true diff --git a/manifests/prometheus/prometheus-k8s-service-monitor-node-exporter.yaml b/manifests/prometheus/prometheus-k8s-service-monitor-node-exporter.yaml index a7b20301..b68ed89f 100644 --- a/manifests/prometheus/prometheus-k8s-service-monitor-node-exporter.yaml +++ b/manifests/prometheus/prometheus-k8s-service-monitor-node-exporter.yaml @@ -2,9 +2,8 @@ apiVersion: monitoring.coreos.com/v1alpha1 kind: ServiceMonitor metadata: name: node-exporter - namespace: monitoring labels: - k8s-apps: http + k8s-app: node-exporter spec: jobLabel: k8s-app selector: @@ -15,4 +14,4 @@ spec: - monitoring endpoints: - port: http-metrics - interval: 15s + interval: 30s diff --git a/manifests/prometheus/prometheus-k8s-service-monitor-prometheus.yaml b/manifests/prometheus/prometheus-k8s-service-monitor-prometheus.yaml index 5e5d17be..be74cd6d 100644 --- a/manifests/prometheus/prometheus-k8s-service-monitor-prometheus.yaml +++ b/manifests/prometheus/prometheus-k8s-service-monitor-prometheus.yaml @@ -3,10 +3,14 @@ kind: ServiceMonitor metadata: name: prometheus labels: - prometheus: k8s + app: prometheus spec: + selector: + matchLabels: + prometheus: k8s + namespaceSelector: + matchNames: + - monitoring endpoints: - port: web - selector: - matchExpressions: - - {key: prometheus, operator: In, values: [k8s]} + interval: 30s -- GitLab