diff --git a/k8s/apps-of-apps/apps/nfs-provisioner.yaml b/k8s/apps-of-apps/apps/nfs-provisioner.yaml new file mode 100644 index 0000000..498caab --- /dev/null +++ b/k8s/apps-of-apps/apps/nfs-provisioner.yaml @@ -0,0 +1,22 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: nfs-provisioner + namespace: argocd + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: default + source: + repoURL: git@github.com:Alkatrazz24/Funk-lab.git + targetRevision: main + path: k8s/infra/nfs-provisioner + destination: + server: https://kubernetes.default.svc + namespace: nfs-provisioner + syncPolicy: + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true diff --git a/k8s/infra/monitoring/values.yaml b/k8s/infra/monitoring/values.yaml index 012ab85..6653446 100644 --- a/k8s/infra/monitoring/values.yaml +++ b/k8s/infra/monitoring/values.yaml @@ -15,7 +15,9 @@ grafana: limits: memory: 256Mi persistence: - enabled: false + enabled: true + storageClassName: nfs + size: 2Gi prometheus: prometheusSpec: @@ -27,8 +29,14 @@ prometheus: memory: 512Mi limits: memory: 1Gi - # Pas de StorageClass encore — emptyDir implicite (éphémère) - # À remplacer par Longhorn une fois installé + storageSpec: + volumeClaimTemplate: + spec: + storageClassName: nfs + accessModes: ["ReadWriteOnce"] + resources: + requests: + storage: 20Gi # Scrape des nœuds hors cluster (storage-01, gpu-01) additionalScrapeConfigs: diff --git a/k8s/infra/nfs-provisioner/helmrelease.yaml b/k8s/infra/nfs-provisioner/helmrelease.yaml new file mode 100644 index 0000000..52ccc0e --- /dev/null +++ b/k8s/infra/nfs-provisioner/helmrelease.yaml @@ -0,0 +1,28 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: nfs-provisioner + namespace: argocd + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: default + sources: + - repoURL: https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/ + chart: nfs-subdir-external-provisioner + targetRevision: 4.0.18 + helm: + valueFiles: + - $values/k8s/infra/nfs-provisioner/values.yaml + - repoURL: git@github.com:Alkatrazz24/Funk-lab.git + targetRevision: main + ref: values + destination: + server: https://kubernetes.default.svc + namespace: nfs-provisioner + syncPolicy: + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true diff --git a/k8s/infra/nfs-provisioner/values.yaml b/k8s/infra/nfs-provisioner/values.yaml new file mode 100644 index 0000000..9b140df --- /dev/null +++ b/k8s/infra/nfs-provisioner/values.yaml @@ -0,0 +1,16 @@ +nfs: + server: 192.168.10.1 + path: /srv/data/nfs/k8s + +storageClass: + name: nfs + defaultClass: true + reclaimPolicy: Retain + archiveOnDelete: false + +resources: + requests: + cpu: 50m + memory: 64Mi + limits: + memory: 128Mi