From 5a54485462ab7d61734b3d63b63ff713651f99a9 Mon Sep 17 00:00:00 2001 From: enjenjenje Date: Mon, 24 Feb 2025 11:29:35 +0100 Subject: [PATCH 01/10] init --- flux/components/monitoring/controllers/loki-stack/release.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/flux/components/monitoring/controllers/loki-stack/release.yaml b/flux/components/monitoring/controllers/loki-stack/release.yaml index c63673e..58838a3 100644 --- a/flux/components/monitoring/controllers/loki-stack/release.yaml +++ b/flux/components/monitoring/controllers/loki-stack/release.yaml @@ -22,6 +22,8 @@ spec: valuesKey: logs.yaml optional: true values: + global: + priorityClassName: system-cluster-critical promtail: enabled: true loki: From 7fbca712f7a520926f36cedef74108b20bbf6fdc Mon Sep 17 00:00:00 2001 From: enjenjenje Date: Mon, 24 Feb 2025 12:04:42 +0100 Subject: [PATCH 02/10] test --- flux/components/monitoring/controllers/loki-stack/release.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/flux/components/monitoring/controllers/loki-stack/release.yaml b/flux/components/monitoring/controllers/loki-stack/release.yaml index 58838a3..fd37bad 100644 --- a/flux/components/monitoring/controllers/loki-stack/release.yaml +++ b/flux/components/monitoring/controllers/loki-stack/release.yaml @@ -29,6 +29,7 @@ spec: loki: enabled: true isDefault: false + priorityClassName: system-cluster-critical serviceMonitor: enabled: true additionalLabels: From bdb69019bbaa06fec56f4467968e1c2a55a0e9cf Mon Sep 17 00:00:00 2001 From: enjenjenje Date: Mon, 24 Feb 2025 12:07:11 +0100 Subject: [PATCH 03/10] f --- flux/components/monitoring/controllers/loki-stack/release.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/flux/components/monitoring/controllers/loki-stack/release.yaml b/flux/components/monitoring/controllers/loki-stack/release.yaml index fd37bad..a8813c1 100644 --- a/flux/components/monitoring/controllers/loki-stack/release.yaml +++ b/flux/components/monitoring/controllers/loki-stack/release.yaml @@ -22,10 +22,9 @@ spec: valuesKey: logs.yaml optional: true values: - global: - priorityClassName: system-cluster-critical promtail: enabled: true + priorityClassName: system-cluster-critical loki: enabled: true isDefault: false From da6283d15b3b11e2b9a57ed8a4ab2f6758b064d0 Mon Sep 17 00:00:00 2001 From: enjenjenje Date: Mon, 24 Feb 2025 12:22:16 +0100 Subject: [PATCH 04/10] f --- .../kube-prometheus-stack/release.yaml | 7 +++++++ terraform-modules/spectrum/flux.tf | 16 ++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/flux/components/monitoring/controllers/kube-prometheus-stack/release.yaml b/flux/components/monitoring/controllers/kube-prometheus-stack/release.yaml index 352a684..1998b79 100644 --- a/flux/components/monitoring/controllers/kube-prometheus-stack/release.yaml +++ b/flux/components/monitoring/controllers/kube-prometheus-stack/release.yaml @@ -31,7 +31,10 @@ spec: alertmanager: enabled: false prometheus: + prometheusOperator: + priorityClassName: system-cluster-critical prometheusSpec: + priorityClassName: system-cluster-critical retention: 168h resources: requests: @@ -56,6 +59,7 @@ spec: app.kubernetes.io/part-of: spectrum-monitoring grafana: + priorityClassName: system-cluster-critical defaultDashboardsEnabled: false adminPassword: fluence sidecar: @@ -68,3 +72,6 @@ spec: provider: allowUiUpdates: true foldersFromFilesStructure: true + + prometheus-node-exporter: + priorityClassName: system-cluster-critical diff --git a/terraform-modules/spectrum/flux.tf b/terraform-modules/spectrum/flux.tf index a5a006d..3b7d544 100644 --- a/terraform-modules/spectrum/flux.tf +++ b/terraform-modules/spectrum/flux.tf @@ -21,6 +21,22 @@ resource "helm_release" "flux" { name = "imageAutomationController.create" value = "false" } + set { + name = "helmController.priorityClassName" + value = "system-cluster-critical" + } + set { + name = "kustomizeController.priorityClassName" + value = "system-cluster-critical" + } + set { + name = "notificationController.priorityClassName" + value = "system-cluster-critical" + } + set { + name = "sourceController.priorityClassName" + value = "system-cluster-critical" + } } resource "helm_release" "flux-sync" { From 61f5ef92d2174750f2fb2d16ea49601d2c166547 Mon Sep 17 00:00:00 2001 From: enjenjenje Date: Mon, 24 Feb 2025 12:35:17 +0100 Subject: [PATCH 05/10] f --- .../controllers/kube-prometheus-stack/release.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/flux/components/monitoring/controllers/kube-prometheus-stack/release.yaml b/flux/components/monitoring/controllers/kube-prometheus-stack/release.yaml index 1998b79..2bfe26d 100644 --- a/flux/components/monitoring/controllers/kube-prometheus-stack/release.yaml +++ b/flux/components/monitoring/controllers/kube-prometheus-stack/release.yaml @@ -30,9 +30,9 @@ spec: values: alertmanager: enabled: false - prometheus: - prometheusOperator: + prometheusOperator: priorityClassName: system-cluster-critical + prometheus: prometheusSpec: priorityClassName: system-cluster-critical retention: 168h @@ -73,5 +73,7 @@ spec: allowUiUpdates: true foldersFromFilesStructure: true + kube-state-metrics: + priorityClassName: system-cluster-critical prometheus-node-exporter: priorityClassName: system-cluster-critical From d8c055cfca04ccb0e7ae39e40165261a1fad4643 Mon Sep 17 00:00:00 2001 From: enjenjenje Date: Mon, 24 Feb 2025 12:40:13 +0100 Subject: [PATCH 06/10] m --- flux/core/local-path-provisioner/kustomization.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/flux/core/local-path-provisioner/kustomization.yml b/flux/core/local-path-provisioner/kustomization.yml index b632a80..06d2b43 100644 --- a/flux/core/local-path-provisioner/kustomization.yml +++ b/flux/core/local-path-provisioner/kustomization.yml @@ -33,3 +33,11 @@ patches: name: local-path-storage labels: pod-security.kubernetes.io/enforce: privileged + - patch: |- + - op: replace + path: /spec/priorityClassName: + value: system-cluster-critical + target: + kind: Deployment + name: local-path-provisioner + namespace: local-path-storage From 54b91f6b82d92aae981920d881da6f4415641774 Mon Sep 17 00:00:00 2001 From: enjenjenje Date: Mon, 24 Feb 2025 12:45:22 +0100 Subject: [PATCH 07/10] g --- flux/core/local-path-provisioner/kustomization.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flux/core/local-path-provisioner/kustomization.yml b/flux/core/local-path-provisioner/kustomization.yml index 06d2b43..e7f4feb 100644 --- a/flux/core/local-path-provisioner/kustomization.yml +++ b/flux/core/local-path-provisioner/kustomization.yml @@ -35,7 +35,7 @@ patches: pod-security.kubernetes.io/enforce: privileged - patch: |- - op: replace - path: /spec/priorityClassName: + path: /spec/template/spec/priorityClassName: value: system-cluster-critical target: kind: Deployment From c2f06332beea50d2d6ed27cd92fc9ab8a076c739 Mon Sep 17 00:00:00 2001 From: enjenjenje Date: Mon, 24 Feb 2025 12:47:54 +0100 Subject: [PATCH 08/10] g --- flux/core/local-path-provisioner/kustomization.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flux/core/local-path-provisioner/kustomization.yml b/flux/core/local-path-provisioner/kustomization.yml index e7f4feb..713c6f7 100644 --- a/flux/core/local-path-provisioner/kustomization.yml +++ b/flux/core/local-path-provisioner/kustomization.yml @@ -34,7 +34,7 @@ patches: labels: pod-security.kubernetes.io/enforce: privileged - patch: |- - - op: replace + - op: replace path: /spec/template/spec/priorityClassName: value: system-cluster-critical target: From 0b57318d695fd65b7b8a7fd2ac993fb208f4bbd9 Mon Sep 17 00:00:00 2001 From: enjenjenje Date: Mon, 24 Feb 2025 12:48:10 +0100 Subject: [PATCH 09/10] g --- flux/core/local-path-provisioner/kustomization.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flux/core/local-path-provisioner/kustomization.yml b/flux/core/local-path-provisioner/kustomization.yml index 713c6f7..9cc8343 100644 --- a/flux/core/local-path-provisioner/kustomization.yml +++ b/flux/core/local-path-provisioner/kustomization.yml @@ -35,7 +35,7 @@ patches: pod-security.kubernetes.io/enforce: privileged - patch: |- - op: replace - path: /spec/template/spec/priorityClassName: + path: /spec/template/spec/priorityClassName value: system-cluster-critical target: kind: Deployment From be4145613b37465093ed30889c83b6e860a0b324 Mon Sep 17 00:00:00 2001 From: enjenjenje Date: Mon, 24 Feb 2025 16:29:30 +0100 Subject: [PATCH 10/10] custom priority --- flux/clusters/default/kustomization.yml | 1 + flux/clusters/ephemeral/kustomization.yml | 1 + .../controllers/kube-prometheus-stack/release.yaml | 10 +++++----- .../monitoring/controllers/loki-stack/release.yaml | 4 ++-- flux/core/monitoring-prerequisites/kustomization.yaml | 4 ++++ flux/core/monitoring-prerequisites/manifests.yaml | 9 +++++++++ 6 files changed, 22 insertions(+), 7 deletions(-) create mode 100644 flux/core/monitoring-prerequisites/kustomization.yaml create mode 100644 flux/core/monitoring-prerequisites/manifests.yaml diff --git a/flux/clusters/default/kustomization.yml b/flux/clusters/default/kustomization.yml index 44bae8b..ce1947e 100644 --- a/flux/clusters/default/kustomization.yml +++ b/flux/clusters/default/kustomization.yml @@ -4,4 +4,5 @@ resources: - ../../core/local-path-provisioner - ../../core/metrics-server - ../../core/kubelet-serving-cert-approver + - ../../core/monitoring-prerequisites - ../../components/monitoring diff --git a/flux/clusters/ephemeral/kustomization.yml b/flux/clusters/ephemeral/kustomization.yml index d63b551..4611c9b 100644 --- a/flux/clusters/ephemeral/kustomization.yml +++ b/flux/clusters/ephemeral/kustomization.yml @@ -9,6 +9,7 @@ resources: - ../../core/local-path-provisioner - ../../core/metrics-server - ../../core/kubelet-serving-cert-approver + - ../../core/monitoring-prerequisites - ../../components/kubevirt - ../../components/monitoring - hubble-ingress.yml diff --git a/flux/components/monitoring/controllers/kube-prometheus-stack/release.yaml b/flux/components/monitoring/controllers/kube-prometheus-stack/release.yaml index 2bfe26d..9509086 100644 --- a/flux/components/monitoring/controllers/kube-prometheus-stack/release.yaml +++ b/flux/components/monitoring/controllers/kube-prometheus-stack/release.yaml @@ -31,10 +31,10 @@ spec: alertmanager: enabled: false prometheusOperator: - priorityClassName: system-cluster-critical + priorityClassName: spectrum-monitoring prometheus: prometheusSpec: - priorityClassName: system-cluster-critical + priorityClassName: spectrum-monitoring retention: 168h resources: requests: @@ -59,7 +59,7 @@ spec: app.kubernetes.io/part-of: spectrum-monitoring grafana: - priorityClassName: system-cluster-critical + priorityClassName: spectrum-monitoring defaultDashboardsEnabled: false adminPassword: fluence sidecar: @@ -74,6 +74,6 @@ spec: foldersFromFilesStructure: true kube-state-metrics: - priorityClassName: system-cluster-critical + priorityClassName: spectrum-monitoring prometheus-node-exporter: - priorityClassName: system-cluster-critical + priorityClassName: spectrum-monitoring diff --git a/flux/components/monitoring/controllers/loki-stack/release.yaml b/flux/components/monitoring/controllers/loki-stack/release.yaml index a8813c1..8cfc4cc 100644 --- a/flux/components/monitoring/controllers/loki-stack/release.yaml +++ b/flux/components/monitoring/controllers/loki-stack/release.yaml @@ -24,11 +24,11 @@ spec: values: promtail: enabled: true - priorityClassName: system-cluster-critical + priorityClassName: spectrum-monitoring loki: enabled: true isDefault: false - priorityClassName: system-cluster-critical + priorityClassName: spectrum-monitoring serviceMonitor: enabled: true additionalLabels: diff --git a/flux/core/monitoring-prerequisites/kustomization.yaml b/flux/core/monitoring-prerequisites/kustomization.yaml new file mode 100644 index 0000000..f81cecb --- /dev/null +++ b/flux/core/monitoring-prerequisites/kustomization.yaml @@ -0,0 +1,4 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - ./manifests.yaml diff --git a/flux/core/monitoring-prerequisites/manifests.yaml b/flux/core/monitoring-prerequisites/manifests.yaml new file mode 100644 index 0000000..483c73b --- /dev/null +++ b/flux/core/monitoring-prerequisites/manifests.yaml @@ -0,0 +1,9 @@ + +--- +apiVersion: scheduling.k8s.io/v1 +kind: PriorityClass +metadata: + name: spectrum-monitoring +value: 100000 +globalDefault: false +description: "Spectrum monitoring priority class"