diff --git a/apps/base/k8up-system/kustomization.yaml b/apps/base/k8up-system/kustomization.yaml new file mode 100644 index 0000000..5122f9e --- /dev/null +++ b/apps/base/k8up-system/kustomization.yaml @@ -0,0 +1,6 @@ +--- +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +resources: + - namespace.yaml diff --git a/apps/base/k8up-system/namespace.yaml b/apps/base/k8up-system/namespace.yaml new file mode 100644 index 0000000..2ede6b2 --- /dev/null +++ b/apps/base/k8up-system/namespace.yaml @@ -0,0 +1,5 @@ +--- +apiVersion: v1 +kind: Namespace +metadata: + name: k8up-system diff --git a/apps/overlays/au-syd1/k8up-system/kustomization.yaml b/apps/overlays/au-syd1/k8up-system/kustomization.yaml new file mode 100644 index 0000000..585cac1 --- /dev/null +++ b/apps/overlays/au-syd1/k8up-system/kustomization.yaml @@ -0,0 +1,15 @@ +--- +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +resources: + - ../../../base/k8up-system + - poddisruptionbudget.yaml + +helmCharts: + - name: k8up + repo: https://artifactapi.k8s.syd1.au.unkin.net/api/v1/virtual/helm + version: "4.10.0" + releaseName: k8up + namespace: k8up-system + valuesFile: values.yaml diff --git a/apps/overlays/au-syd1/k8up-system/poddisruptionbudget.yaml b/apps/overlays/au-syd1/k8up-system/poddisruptionbudget.yaml new file mode 100644 index 0000000..8a9cf76 --- /dev/null +++ b/apps/overlays/au-syd1/k8up-system/poddisruptionbudget.yaml @@ -0,0 +1,12 @@ +--- +apiVersion: policy/v1 +kind: PodDisruptionBudget +metadata: + name: k8up + namespace: k8up-system +spec: + minAvailable: 1 + selector: + matchLabels: + app.kubernetes.io/name: k8up + app.kubernetes.io/instance: k8up diff --git a/apps/overlays/au-syd1/k8up-system/values.yaml b/apps/overlays/au-syd1/k8up-system/values.yaml new file mode 100644 index 0000000..e736888 --- /dev/null +++ b/apps/overlays/au-syd1/k8up-system/values.yaml @@ -0,0 +1,18 @@ +# CRDs are managed by the separate `k8up-crds` Helm release already present in +# the cluster; the k8up chart ships CRDs via its crds/ directory, which the +# kustomize helm inflator does not emit, so ArgoCD does not fight CRD ownership. +replicaCount: 2 + +resources: + limits: + cpu: 500m + memory: 256Mi + requests: + cpu: 20m + memory: 128Mi + +metrics: + serviceMonitor: + enabled: false # Requires Prometheus Operator CRDs. + prometheusRule: + enabled: false # Requires Prometheus Operator CRDs. diff --git a/argocd/applicationsets/platform.yaml b/argocd/applicationsets/platform.yaml index 22f8e08..97a4c39 100644 --- a/argocd/applicationsets/platform.yaml +++ b/argocd/applicationsets/platform.yaml @@ -31,6 +31,7 @@ spec: - path: apps/overlays/*/grafana-system - path: apps/overlays/*/inteldeviceplugins-system - path: apps/overlays/*/jfrog + - path: apps/overlays/*/k8up-system - path: apps/overlays/*/kanidm - path: apps/overlays/*/netbox - path: apps/overlays/*/node-feature-discovery