From 01529585460b5217cf8c28682ac7badd04e789e1 Mon Sep 17 00:00:00 2001 From: Romain Manni-Bucau Date: Sat, 23 Mar 2024 20:50:33 +0100 Subject: [PATCH] [alveoli] add interval placeholder for prometheus and for prometheus and loki ensure to setup the rolebinding on the right namespace (for service account relationship) --- ...o.yupiik.alveoli_loki-simple.rolebinding.yaml | 2 +- ...oli_prometheus-simple.clusterrolebinding.yaml | 4 ++-- ...piik.alveoli_prometheus-simple.configmap.yaml | 4 ++-- .../src/main/resources/bundlebee/manifest.json | 16 ++++++++++++++++ 4 files changed, 21 insertions(+), 5 deletions(-) diff --git a/alveolus/loki-simple/src/main/resources/bundlebee/kubernetes/io.yupiik.alveoli_loki-simple.rolebinding.yaml b/alveolus/loki-simple/src/main/resources/bundlebee/kubernetes/io.yupiik.alveoli_loki-simple.rolebinding.yaml index 0b58786b..227e3e5d 100644 --- a/alveolus/loki-simple/src/main/resources/bundlebee/kubernetes/io.yupiik.alveoli_loki-simple.rolebinding.yaml +++ b/alveolus/loki-simple/src/main/resources/bundlebee/kubernetes/io.yupiik.alveoli_loki-simple.rolebinding.yaml @@ -22,7 +22,7 @@ metadata: subjects: - kind: ServiceAccount name: promtail-serviceaccount - namespace: default + namespace: "{{loki-simple.namespace:-{{bundlebee-kubernetes-namespace}}}}" roleRef: kind: ClusterRole name: promtail-clusterrole diff --git a/alveolus/prometheus-simple/src/main/resources/bundlebee/kubernetes/io.yupiik.alveoli_prometheus-simple.clusterrolebinding.yaml b/alveolus/prometheus-simple/src/main/resources/bundlebee/kubernetes/io.yupiik.alveoli_prometheus-simple.clusterrolebinding.yaml index b0aa5569..c47c5636 100644 --- a/alveolus/prometheus-simple/src/main/resources/bundlebee/kubernetes/io.yupiik.alveoli_prometheus-simple.clusterrolebinding.yaml +++ b/alveolus/prometheus-simple/src/main/resources/bundlebee/kubernetes/io.yupiik.alveoli_prometheus-simple.clusterrolebinding.yaml @@ -25,5 +25,5 @@ roleRef: name: prometheus subjects: - kind: ServiceAccount - name: default - namespace: default + name: "{{prometheus-simple.serviceaccount:-default}}" + namespace: "{{prometheus-simple.namespace:-{{bundlebee-kubernetes-namespace}}}}" diff --git a/alveolus/prometheus-simple/src/main/resources/bundlebee/kubernetes/io.yupiik.alveoli_prometheus-simple.configmap.yaml b/alveolus/prometheus-simple/src/main/resources/bundlebee/kubernetes/io.yupiik.alveoli_prometheus-simple.configmap.yaml index a9c31907..d446fc79 100644 --- a/alveolus/prometheus-simple/src/main/resources/bundlebee/kubernetes/io.yupiik.alveoli_prometheus-simple.configmap.yaml +++ b/alveolus/prometheus-simple/src/main/resources/bundlebee/kubernetes/io.yupiik.alveoli_prometheus-simple.configmap.yaml @@ -24,8 +24,8 @@ metadata: data: prometheus.yml: | global: - scrape_interval: 5s - evaluation_interval: 5s + scrape_interval: {{prometheus-simple.scrape_internal:-{{prometheus-simple.internal:-5s}}}} + evaluation_interval: {{prometheus-simple.evaluation_interval:-{{prometheus-simple.internal:-5s}}}} rule_files: - /etc/prometheus/prometheus.rules alerting: diff --git a/alveolus/prometheus-simple/src/main/resources/bundlebee/manifest.json b/alveolus/prometheus-simple/src/main/resources/bundlebee/manifest.json index 44732c42..795f43b0 100644 --- a/alveolus/prometheus-simple/src/main/resources/bundlebee/manifest.json +++ b/alveolus/prometheus-simple/src/main/resources/bundlebee/manifest.json @@ -26,6 +26,22 @@ } ], "placeholdersDoc": [ + { + "name": "prometheus-simple.serviceaccount", + "description": "Name of prometheus service account - where cluster role will be bound. Note that we use default by default for simplicity but in a real cluster it can make sense to create a dedicated service account.." + }, + { + "name": "prometheus-simple.internal", + "description": "Default for evaluation and scrape interval in prometheus configuration if not overridden by the specific placeholders." + }, + { + "name": "prometheus-simple.evaluation_interval", + "description": "Default evaluation interval in prometheus configuration." + }, + { + "name": "prometheus-simple.scrape_internal", + "description": "Default scrape interval in prometheus configuration." + }, { "name": "prometheus-simple.image", "description": "The image to use."