cluster

Infrastructure files for Nordgedanken and Midnightthoughts.
git clone git://archive.git.mtrnord.blog/MTRNord/cluster.git
Log | Files | Refs | README

commit eeb4e00a66a633a38b172a342f9e7c6056dff65e
parent 42a3a9051928e4eec7a93e4988095a4a10659478
Author: MTRNord <mtrnord1@gmail.com>
Date:   Sat,  8 Apr 2023 21:45:44 +0200

Add monitoring for kube-router

Diffstat:
Mapps/base/kube-prometheus-stack/release.yaml | 2++
Minfrastructure/controllers/kube-router.yaml | 27+++++++++++++++++++++++++++
2 files changed, 29 insertions(+), 0 deletions(-)

diff --git a/apps/base/kube-prometheus-stack/release.yaml b/apps/base/kube-prometheus-stack/release.yaml @@ -88,6 +88,8 @@ spec: url: https://raw.githubusercontent.com/cilium/cilium/v1.13.1/examples/kubernetes/addons/prometheus/files/grafana-dashboards/hubble-dashboard.json postgres-dashboard: url: https://raw.githubusercontent.com/prometheus-community/postgres_exporter/master/postgres_mixin/dashboards/postgres-overview.json + kube-router-dashboard: + url: https://raw.githubusercontent.com/cloudnativelabs/kube-router/master/dashboard/kube-router.json nats: nats-jetstream: url: https://git.nordgedanken.dev/kubernetes/grafana/raw/branch/main/nats.json diff --git a/infrastructure/controllers/kube-router.yaml b/infrastructure/controllers/kube-router.yaml @@ -5,6 +5,11 @@ metadata: labels: k8s-app: kube-router tier: node + annotations: + checkov.io/skip1: CKV_K8S_19=The container needs to modify host network rules. + checkov.io/skip2: CKV_K8S_35=The container needs to know values from the node. + prometheus.io/scrape: "true" + prometheus.io/port: "20244" name: kube-router namespace: kube-system spec: @@ -45,6 +50,8 @@ spec: #- "--peer-router-ips=<CHANGE ME>" #- "--peer-router-asns=<CHANGE ME>" #- "--cluster-asn=<CHANGE ME>" + # Metrics + - "--metrics-port=20244" env: - name: NODE_NAME valueFrom: @@ -56,6 +63,9 @@ spec: port: 20244 initialDelaySeconds: 10 periodSeconds: 3 + ports: + - containerPort: 20244 + name: monitoring resources: requests: cpu: 250m @@ -135,3 +145,20 @@ subjects: - kind: ServiceAccount name: kube-router namespace: kube-system +--- +apiVersion: monitoring.coreos.com/v1 +kind: PodMonitor +metadata: + name: kube-router + namespace: kube-system +spec: + namespaceSelector: + matchNames: + - "kube-system" + podMetricsEndpoints: + - interval: 5s + path: /metrics + port: monitoring + selector: + matchLabels: + k8s-app: kube-router