diff --git a/kubernetes/apps/code-server/app/pvc.yaml b/kubernetes/apps/code-server/app/pvc.yaml index 286a271..e5331ec 100644 --- a/kubernetes/apps/code-server/app/pvc.yaml +++ b/kubernetes/apps/code-server/app/pvc.yaml @@ -6,7 +6,7 @@ metadata: labels: type: local spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 8Gi @@ -37,7 +37,7 @@ metadata: labels: name: code-server-pvc spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem accessModes: - ReadWriteOnce diff --git a/kubernetes/apps/dokuwiki/app/volume.yaml b/kubernetes/apps/dokuwiki/app/volume.yaml index 5cf01cb..934af61 100644 --- a/kubernetes/apps/dokuwiki/app/volume.yaml +++ b/kubernetes/apps/dokuwiki/app/volume.yaml @@ -6,7 +6,7 @@ metadata: labels: type: local spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 12Gi @@ -37,7 +37,7 @@ metadata: labels: name: dokuwiki-pvc spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem accessModes: - ReadWriteOnce diff --git a/kubernetes/apps/gitea/app/volume.yaml b/kubernetes/apps/gitea/app/volume.yaml index 219f22a..51a5097 100644 --- a/kubernetes/apps/gitea/app/volume.yaml +++ b/kubernetes/apps/gitea/app/volume.yaml @@ -6,7 +6,7 @@ metadata: labels: type: local spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 32Gi @@ -37,7 +37,7 @@ metadata: labels: name: gitea-pvc spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem accessModes: - ReadWriteOnce diff --git a/kubernetes/apps/jellyfin/app/pvc.yaml b/kubernetes/apps/jellyfin/app/pvc.yaml index 027d597..2c1be5e 100644 --- a/kubernetes/apps/jellyfin/app/pvc.yaml +++ b/kubernetes/apps/jellyfin/app/pvc.yaml @@ -6,7 +6,7 @@ metadata: labels: type: local spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 250Mi @@ -32,7 +32,7 @@ metadata: labels: type: local spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 2Gi diff --git a/kubernetes/apps/jellyfin/app/release.yaml b/kubernetes/apps/jellyfin/app/release.yaml index 8a40bf9..82cdf88 100644 --- a/kubernetes/apps/jellyfin/app/release.yaml +++ b/kubernetes/apps/jellyfin/app/release.yaml @@ -36,7 +36,7 @@ spec: - name: movies readOnly: false volumeSpec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 8Gi @@ -62,7 +62,7 @@ spec: - name: series readOnly: false volumeSpec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 8Gi @@ -88,7 +88,7 @@ spec: - name: music-videos readOnly: false volumeSpec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 8Gi @@ -114,7 +114,7 @@ spec: - name: short-videos readOnly: false volumeSpec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 8Gi @@ -140,7 +140,7 @@ spec: - name: gv readOnly: false volumeSpec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 8Gi diff --git a/kubernetes/apps/qbittorrent/app/volume.yaml b/kubernetes/apps/qbittorrent/app/volume.yaml index 9084bc2..1d2e300 100644 --- a/kubernetes/apps/qbittorrent/app/volume.yaml +++ b/kubernetes/apps/qbittorrent/app/volume.yaml @@ -6,7 +6,7 @@ metadata: labels: type: local spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 5Gi @@ -37,7 +37,7 @@ spec: # labels: # name: qbittorrent-config-pvc #spec: -# storageClassName: local-path +# storageClassName: local-mount-nfs # volumeMode: Filesystem # accessModes: # - ReadWriteOnce @@ -53,7 +53,7 @@ metadata: labels: type: local spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 5Gi @@ -84,7 +84,7 @@ metadata: labels: name: qbittorrent-download-pvc spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem accessModes: - ReadWriteOnce diff --git a/kubernetes/apps/redis/app/volume.yaml b/kubernetes/apps/redis/app/volume.yaml index 41567d0..38581fe 100644 --- a/kubernetes/apps/redis/app/volume.yaml +++ b/kubernetes/apps/redis/app/volume.yaml @@ -6,7 +6,7 @@ metadata: labels: name: redis-master-pvc spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem accessModes: - ReadWriteOnce @@ -22,7 +22,7 @@ metadata: labels: name: redis-replica-pvc spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem accessModes: - ReadWriteOnce diff --git a/kubernetes/apps/sonarqube/app/release.yaml b/kubernetes/apps/sonarqube/app/release.yaml index 6b2364d..532fcf6 100644 --- a/kubernetes/apps/sonarqube/app/release.yaml +++ b/kubernetes/apps/sonarqube/app/release.yaml @@ -34,7 +34,7 @@ spec: elastic: 30091 persistence: enabled: true - storageClass: "local-path" + storageClass: local-mount-nfs size: "32Gi" existingClaim: "sonarqube-pvc" postgresql: diff --git a/kubernetes/apps/sonarqube/app/volume.yaml b/kubernetes/apps/sonarqube/app/volume.yaml index d6f625d..cac45d0 100644 --- a/kubernetes/apps/sonarqube/app/volume.yaml +++ b/kubernetes/apps/sonarqube/app/volume.yaml @@ -6,7 +6,7 @@ metadata: labels: type: local spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 32Gi @@ -37,7 +37,7 @@ metadata: labels: name: sonarqube-pvc spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem accessModes: - ReadWriteOnce diff --git a/kubernetes/apps/uptime-kuma/app/pvc.yaml b/kubernetes/apps/uptime-kuma/app/pvc.yaml index 279e744..f569f93 100644 --- a/kubernetes/apps/uptime-kuma/app/pvc.yaml +++ b/kubernetes/apps/uptime-kuma/app/pvc.yaml @@ -6,7 +6,7 @@ metadata: labels: type: local spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 4Gi @@ -37,7 +37,7 @@ metadata: labels: name: uptime-kuma-pvc spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem accessModes: - ReadWriteOnce diff --git a/kubernetes/infrastructure/kube-system/kube-system-misc.yaml b/kubernetes/infrastructure/kube-system/kube-system-misc.yaml new file mode 100644 index 0000000..bc79ad9 --- /dev/null +++ b/kubernetes/infrastructure/kube-system/kube-system-misc.yaml @@ -0,0 +1,16 @@ +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/source.toolkit.fluxcd.io/gitrepository_v1.json +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: kube-system-misc + namespace: kube-system +spec: + interval: 10m + timeout: 1m30s + retryInterval: 30s + path: ./kubernetes/infrastructure/kube-system/misc + prune: true + sourceRef: + kind: GitRepository + namespace: flux-system + name: flux-system diff --git a/kubernetes/infrastructure/kube-system/misc/storage-class-local-mount-nfs.yaml b/kubernetes/infrastructure/kube-system/misc/storage-class-local-mount-nfs.yaml new file mode 100644 index 0000000..328e763 --- /dev/null +++ b/kubernetes/infrastructure/kube-system/misc/storage-class-local-mount-nfs.yaml @@ -0,0 +1,7 @@ +apiVersion: storage.k8s.io/v1 +kind: StorageClass +metadata: + name: local-mount-nfs +provisioner: kubernetes.io/no-provisioner +reclaimPolicy: Retain +volumeBindingMode: WaitForFirstConsumer diff --git a/kubernetes/infrastructure/kustomization.yaml b/kubernetes/infrastructure/kustomization.yaml index e9d3dc3..c8b2874 100644 --- a/kubernetes/infrastructure/kustomization.yaml +++ b/kubernetes/infrastructure/kustomization.yaml @@ -4,9 +4,11 @@ resources: - ./cert-manager/cert-manager.yaml # - ./cilium/cilium.yaml - ./consul/consul.yaml - - ./minio/minio.yaml + - ./grafana-dashboards/grafana-dashboards.yaml - ./ingress-nginx/ingress-nginx.yaml - ./ingress-nginx/ingress-nginx-config.yaml + - ./kube-system/storage-class-local-mount-nfs.yaml + - ./minio/minio.yaml - ./namespaces/namespaces.yaml - ./postgresql/postgresql.yaml - ./prometheus/prometheus.yaml diff --git a/kubernetes/infrastructure/minio/app/volume.yaml b/kubernetes/infrastructure/minio/app/volume.yaml index a2b5259..403e5fe 100644 --- a/kubernetes/infrastructure/minio/app/volume.yaml +++ b/kubernetes/infrastructure/minio/app/volume.yaml @@ -6,7 +6,7 @@ metadata: labels: type: local spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 256Gi @@ -37,7 +37,7 @@ metadata: labels: name: minio-pvc spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem accessModes: - ReadWriteOnce diff --git a/kubernetes/infrastructure/minio/minio.yaml b/kubernetes/infrastructure/minio/minio.yaml index 8809671..ee25bf0 100644 --- a/kubernetes/infrastructure/minio/minio.yaml +++ b/kubernetes/infrastructure/minio/minio.yaml @@ -42,6 +42,8 @@ spec: namespace: flux-system - name: minio-secrets namespace: flux-system + - name: kube-system-misc + namespace: kube-system postBuild: substituteFrom: - kind: Secret diff --git a/kubernetes/infrastructure/postgresql/app/pvc.yaml b/kubernetes/infrastructure/postgresql/app/pvc.yaml index 994d5cd..13b2765 100644 --- a/kubernetes/infrastructure/postgresql/app/pvc.yaml +++ b/kubernetes/infrastructure/postgresql/app/pvc.yaml @@ -6,7 +6,7 @@ metadata: labels: type: local spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 8Gi @@ -37,7 +37,7 @@ metadata: labels: name: postgresql-primary-pvc spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem accessModes: - ReadWriteOnce @@ -53,7 +53,7 @@ metadata: labels: type: local spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem capacity: storage: 8Gi @@ -84,7 +84,7 @@ metadata: labels: name: postgresql-replica-pvc spec: - storageClassName: local-path + storageClassName: local-mount-nfs volumeMode: Filesystem accessModes: - ReadWriteOnce diff --git a/kubernetes/infrastructure/postgresql/postgresql.yaml b/kubernetes/infrastructure/postgresql/postgresql.yaml index b2e216c..f2bcd84 100644 --- a/kubernetes/infrastructure/postgresql/postgresql.yaml +++ b/kubernetes/infrastructure/postgresql/postgresql.yaml @@ -42,6 +42,10 @@ spec: dependsOn: - name: postgresql-secrets namespace: flux-system + - name: kube-system-misc + namespace: kube-system + - name: namespaces + namespace: flux-system postBuild: substituteFrom: - kind: Secret