# Persistent Volumes for EveAI Dev Environment # File: persistent-volumes.yaml --- # MinIO Data Storage apiVersion: v1 kind: PersistentVolume metadata: name: minio-data-pv labels: app: minio environment: dev spec: capacity: storage: 10Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain storageClassName: local-storage local: path: /mnt/minio-data nodeAffinity: required: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - eveai-dev-cluster-control-plane --- # Application Logs Storage apiVersion: v1 kind: PersistentVolume metadata: name: app-logs-pv labels: app: eveai environment: dev spec: capacity: storage: 5Gi accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Retain storageClassName: local-storage local: path: /mnt/app-logs nodeAffinity: required: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - eveai-dev-cluster-control-plane --- # Prometheus Data Storage apiVersion: v1 kind: PersistentVolume metadata: name: prometheus-data-pv labels: app: prometheus environment: dev spec: capacity: storage: 5Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain storageClassName: local-storage local: path: /mnt/prometheus-data nodeAffinity: required: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - eveai-dev-cluster-control-plane --- # Grafana Data Storage apiVersion: v1 kind: PersistentVolume metadata: name: grafana-data-pv labels: app: grafana environment: dev spec: capacity: storage: 1Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain storageClassName: local-storage local: path: /mnt/grafana-data nodeAffinity: required: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - eveai-dev-cluster-control-plane --- # Static Files Storage apiVersion: v1 kind: PersistentVolume metadata: name: static-files-pv labels: app: static-files environment: dev spec: capacity: storage: 1Gi accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Retain storageClassName: local-storage local: path: /mnt/static-files nodeAffinity: required: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - eveai-dev-cluster-control-plane --- # Static Files Persistent Volume Claim apiVersion: v1 kind: PersistentVolumeClaim metadata: name: static-files-pvc namespace: eveai-dev spec: accessModes: - ReadWriteMany storageClassName: local-storage resources: requests: storage: 1Gi selector: matchLabels: app: static-files environment: dev --- # StorageClass for local storage apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: local-storage provisioner: kubernetes.io/no-provisioner volumeBindingMode: WaitForFirstConsumer