diff --git a/kubernetes/main/apps/observability/kube-prometheus-stack/app/helmrelease.yaml b/kubernetes/main/apps/observability/kube-prometheus-stack/app/helmrelease.yaml index e26114569e3af..b89af00f7773a 100644 --- a/kubernetes/main/apps/observability/kube-prometheus-stack/app/helmrelease.yaml +++ b/kubernetes/main/apps/observability/kube-prometheus-stack/app/helmrelease.yaml @@ -25,7 +25,7 @@ spec: strategy: rollback retries: 3 dependsOn: - - name: prometheus-operator-crds + - name: kube-prometheus-stack-crds namespace: observability - name: rook-ceph-cluster namespace: rook-ceph diff --git a/kubernetes/main/apps/observability/prometheus-operator-crds/app/helmrelease.yaml b/kubernetes/main/apps/observability/kube-prometheus-stack/crds/helmrelease.yaml similarity index 93% rename from kubernetes/main/apps/observability/prometheus-operator-crds/app/helmrelease.yaml rename to kubernetes/main/apps/observability/kube-prometheus-stack/crds/helmrelease.yaml index da0f397aeda05..d426472c7665d 100644 --- a/kubernetes/main/apps/observability/prometheus-operator-crds/app/helmrelease.yaml +++ b/kubernetes/main/apps/observability/kube-prometheus-stack/crds/helmrelease.yaml @@ -3,7 +3,7 @@ apiVersion: helm.toolkit.fluxcd.io/v2 kind: HelmRelease metadata: - name: prometheus-operator-crds + name: kube-prometheus-stack-crds spec: interval: 30m chart: diff --git a/kubernetes/main/apps/observability/prometheus-operator-crds/app/kustomization.yaml b/kubernetes/main/apps/observability/kube-prometheus-stack/crds/kustomization.yaml similarity index 100% rename from kubernetes/main/apps/observability/prometheus-operator-crds/app/kustomization.yaml rename to kubernetes/main/apps/observability/kube-prometheus-stack/crds/kustomization.yaml diff --git a/kubernetes/main/apps/observability/kube-prometheus-stack/ks.yaml b/kubernetes/main/apps/observability/kube-prometheus-stack/ks.yaml index 1e119a5c34a46..4b8f4f0ddfdc3 100644 --- a/kubernetes/main/apps/observability/kube-prometheus-stack/ks.yaml +++ b/kubernetes/main/apps/observability/kube-prometheus-stack/ks.yaml @@ -24,3 +24,23 @@ spec: substitute: APP: *app GATUS_SUBDOMAIN: prometheus +--- +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: &app kube-prometheus-stack-crds + namespace: flux-system +spec: + targetNamespace: observability + commonMetadata: + labels: + app.kubernetes.io/name: *app + path: ./kubernetes/main/apps/observability/kube-prometheus-stack/crds + prune: false # never should be deleted + sourceRef: + kind: GitRepository + name: home-kubernetes + wait: false + interval: 30m + timeout: 5m diff --git a/kubernetes/main/apps/observability/kustomization.yaml b/kubernetes/main/apps/observability/kustomization.yaml index 57cf477ea5720..d7959f650ade4 100644 --- a/kubernetes/main/apps/observability/kustomization.yaml +++ b/kubernetes/main/apps/observability/kustomization.yaml @@ -12,8 +12,8 @@ resources: - ./kromgo/ks.yaml - ./kube-prometheus-stack/ks.yaml - ./loki/ks.yaml - - ./prometheus-operator-crds/ks.yaml - ./promtail/ks.yaml + - ./silence-operator/ks.yaml - ./smartctl-exporter/ks.yaml - ./snmp-exporter/ks.yaml - ./unpoller/ks.yaml diff --git a/kubernetes/main/apps/observability/prometheus-operator-crds/ks.yaml b/kubernetes/main/apps/observability/prometheus-operator-crds/ks.yaml deleted file mode 100644 index 76d2ab43786d6..0000000000000 --- a/kubernetes/main/apps/observability/prometheus-operator-crds/ks.yaml +++ /dev/null @@ -1,20 +0,0 @@ ---- -# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json -apiVersion: kustomize.toolkit.fluxcd.io/v1 -kind: Kustomization -metadata: - name: &app prometheus-operator-crds - namespace: flux-system -spec: - targetNamespace: observability - commonMetadata: - labels: - app.kubernetes.io/name: *app - path: ./kubernetes/main/apps/observability/prometheus-operator-crds/app - prune: false # never should be deleted - sourceRef: - kind: GitRepository - name: home-kubernetes - wait: false - interval: 30m - timeout: 5m diff --git a/kubernetes/main/apps/observability/silence-operator/app/helmrelease.yaml b/kubernetes/main/apps/observability/silence-operator/app/helmrelease.yaml new file mode 100644 index 0000000000000..30b6ceb8cbaae --- /dev/null +++ b/kubernetes/main/apps/observability/silence-operator/app/helmrelease.yaml @@ -0,0 +1,67 @@ +--- +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2.json +apiVersion: helm.toolkit.fluxcd.io/v2 +kind: HelmRelease +metadata: + name: silence-operator +spec: + interval: 30m + chart: + spec: + chart: silence-operator + version: 0.0.7 + sourceRef: + kind: HelmRepository + name: wiremind + namespace: flux-system + install: + remediation: + retries: 3 + upgrade: + cleanupOnFail: true + remediation: + strategy: rollback + retries: 3 + dependsOn: + - name: silence-operator-crds + namespace: observability + values: + image: + name: quay.io/giantswarm/silence-operator + extraDeply: + - apiVersion: monitoring.giantswarm.io/v1alpha1 + kind: Silence + metadata: + name: ceph-node-nfsmount-diskspace-warning + spec: + matchers: + - name: alertname + value: CephNodeDiskspaceWarning + isRegex: false + - name: mountpoint + value: /etc/nfsmount.conf + isRegex: false + - apiVersion: monitoring.giantswarm.io/v1alpha1 + kind: Silence + metadata: + name: ceph-node-local-diskspace-warning + spec: + matchers: + - name: alertname + value: CephNodeDiskspaceWarning + isRegex: false + - name: device + value: /dev/sd.* + isRegex: true + - apiVersion: monitoring.giantswarm.io/v1alpha1 + kind: Silence + metadata: + name: expanse-memory-high-utilization + spec: + matchers: + - name: alertname + value: NodeMemoryHighUtilization + isRegex: false + - name: instance + value: expanse.internal:9100 + isRegex: false diff --git a/kubernetes/main/apps/observability/silence-operator/app/kustomization.yaml b/kubernetes/main/apps/observability/silence-operator/app/kustomization.yaml new file mode 100644 index 0000000000000..e6e03c60544e4 --- /dev/null +++ b/kubernetes/main/apps/observability/silence-operator/app/kustomization.yaml @@ -0,0 +1,7 @@ +--- +# yaml-language-server: $schema=https://json.schemastore.org/kustomization +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - ./helmrelease.yaml + - ./probes.yaml diff --git a/kubernetes/main/apps/observability/silence-operator/crds/helmrelease.yaml b/kubernetes/main/apps/observability/silence-operator/crds/helmrelease.yaml new file mode 100644 index 0000000000000..d8aaf5afc5d25 --- /dev/null +++ b/kubernetes/main/apps/observability/silence-operator/crds/helmrelease.yaml @@ -0,0 +1,24 @@ +--- +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2.json +apiVersion: helm.toolkit.fluxcd.io/v2 +kind: HelmRelease +metadata: + name: silence-operator-crds +spec: + interval: 30m + chart: + spec: + chart: silence-operator-crds + version: 0.0.2 + sourceRef: + kind: HelmRepository + name: wiremind + namespace: flux-system + install: + remediation: + retries: 3 + upgrade: + cleanupOnFail: true + remediation: + strategy: rollback + retries: 3 diff --git a/kubernetes/main/apps/observability/silence-operator/crds/kustomization.yaml b/kubernetes/main/apps/observability/silence-operator/crds/kustomization.yaml new file mode 100644 index 0000000000000..e6e03c60544e4 --- /dev/null +++ b/kubernetes/main/apps/observability/silence-operator/crds/kustomization.yaml @@ -0,0 +1,7 @@ +--- +# yaml-language-server: $schema=https://json.schemastore.org/kustomization +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - ./helmrelease.yaml + - ./probes.yaml diff --git a/kubernetes/main/apps/observability/silence-operator/ks.yaml b/kubernetes/main/apps/observability/silence-operator/ks.yaml new file mode 100644 index 0000000000000..c7fc7b31157fd --- /dev/null +++ b/kubernetes/main/apps/observability/silence-operator/ks.yaml @@ -0,0 +1,40 @@ +--- +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: &app silence-operator + namespace: flux-system +spec: + targetNamespace: observability + commonMetadata: + labels: + app.kubernetes.io/name: *app + path: ./kubernetes/main/apps/observability/silence-operator/app + prune: true + sourceRef: + kind: GitRepository + name: home-kubernetes + wait: false + interval: 30m + timeout: 15m +--- +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: &app silence-operator-crds + namespace: flux-system +spec: + targetNamespace: observability + commonMetadata: + labels: + app.kubernetes.io/name: *app + path: ./kubernetes/main/apps/observability/silence-operator/crds + prune: false # never should be deleted + sourceRef: + kind: GitRepository + name: home-kubernetes + wait: false + interval: 30m + timeout: 5m diff --git a/kubernetes/main/bootstrap/apps/helmfile.yaml b/kubernetes/main/bootstrap/apps/helmfile.yaml index fcf8d6a310e03..788baab738e6d 100644 --- a/kubernetes/main/bootstrap/apps/helmfile.yaml +++ b/kubernetes/main/bootstrap/apps/helmfile.yaml @@ -22,7 +22,7 @@ repositories: url: https://postfinance.github.io/kubelet-csr-approver releases: - - name: prometheus-operator-crds + - name: kube-prometheus-stack-crds namespace: observability chart: oci://ghcr.io/prometheus-community/charts/prometheus-operator-crds version: 17.0.2 @@ -32,7 +32,7 @@ releases: chart: cilium/cilium version: 1.16.5 values: ["../../apps/kube-system/cilium/app/helm-values.yaml"] - needs: ["observability/prometheus-operator-crds"] + needs: ["observability/kube-prometheus-stack-crds"] - name: coredns namespace: kube-system diff --git a/kubernetes/shared/repos/helm/kustomization.yaml b/kubernetes/shared/repos/helm/kustomization.yaml index bc8e9d826b734..0cba55de48819 100644 --- a/kubernetes/shared/repos/helm/kustomization.yaml +++ b/kubernetes/shared/repos/helm/kustomization.yaml @@ -32,4 +32,5 @@ resources: - ./rook-ceph.yaml - ./spegel.yaml - ./stakater.yaml - - ./stevehipwell.yaml + # - ./stevehipwell.yaml + - ./wiremind.yaml diff --git a/kubernetes/shared/repos/helm/wiremind.yaml b/kubernetes/shared/repos/helm/wiremind.yaml new file mode 100644 index 0000000000000..52b242595190c --- /dev/null +++ b/kubernetes/shared/repos/helm/wiremind.yaml @@ -0,0 +1,10 @@ +--- +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/source.toolkit.fluxcd.io/helmrepository_v1.json +apiVersion: source.toolkit.fluxcd.io/v1 +kind: HelmRepository +metadata: + name: wiremind + namespace: flux-system +spec: + interval: 2h + url: https://wiremind.github.io/wiremind-helm-charts/