--- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: postgres annotations: kubernetes.io/description: | Storage class for Postgres, Postgis and similar applications that implement high availability in application layer. This storage class uses XFS, has no block level redundancy and has block device level caching disabled. provisioner: csi.proxmox.sinextra.dev reclaimPolicy: Retain volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true parameters: csi.storage.k8s.io/fstype: xfs storage: ks-pvs cache: none ssd: "true" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: mysql annotations: kubernetes.io/description: | Storage class for MySQL, MariaDB and similar applications that implement high availability in application layer. This storage class uses XFS, has no block level redundancy and has block device level caching disabled. provisioner: csi.proxmox.sinextra.dev reclaimPolicy: Retain volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true parameters: csi.storage.k8s.io/fstype: xfs storage: ks-pvs cache: none ssd: "true" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: mongo annotations: kubernetes.io/description: | Storage class for Mongo and similar applications that implement high availability in application layer. This storage class uses XFS, has no block level redundancy and has block device level caching disabled. provisioner: csi.proxmox.sinextra.dev reclaimPolicy: Retain volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true parameters: csi.storage.k8s.io/fstype: xfs storage: ks-pvs cache: none ssd: "true" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: prometheus annotations: kubernetes.io/description: | Storage class for Prometheus and similar applications that implement high availability in application layer. This storage class uses XFS, has no block level redundancy and has block device level caching disabled. provisioner: csi.proxmox.sinextra.dev reclaimPolicy: Retain volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true parameters: csi.storage.k8s.io/fstype: xfs storage: ks-pvs cache: none ssd: "true" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: woodpecker annotations: kubernetes.io/description: | Storage class for Drone, Woodpecker and similar application pipeline runs where Git repos are checked out to. This storage class uses XFS, has no block level redundancy and it's deleted as soon as the pod exits. provisioner: driver.longhorn.io reclaimPolicy: Delete volumeBindingMode: Immediate allowVolumeExpansion: true parameters: dataLocality: best-effort numberOfReplicas: "1" fsType: "xfs" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: gitea annotations: kubernetes.io/description: | Storage class for Gitea and similar applications needing block device level replication with 3 replicas using XFS filesystem and best effort data locality. provisioner: driver.longhorn.io reclaimPolicy: Retain volumeBindingMode: Immediate allowVolumeExpansion: true parameters: dataLocality: best-effort numberOfReplicas: "3" fsType: "xfs" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: rabbitmq annotations: kubernetes.io/description: | Storage class for RabbitMQ and similar applications deployed in highly available fashion utilizing application level replication needing persistent volume. This storage class uses XFS, has no block level redundancy and has block device level caching disabled. provisioner: csi.proxmox.sinextra.dev reclaimPolicy: Retain volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true parameters: csi.storage.k8s.io/fstype: xfs storage: ks-pvs cache: none ssd: "true" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: redis annotations: kubernetes.io/description: | Storage class for Redis, KeyDB, DragonflyDB and similar applications deployed in highly available fashion utilizing application level replication needing persistent volume for storing the snapshots. This storage class uses XFS, has no block level redundancy and has block device level caching disabled. provisioner: csi.proxmox.sinextra.dev reclaimPolicy: Retain volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true parameters: csi.storage.k8s.io/fstype: xfs storage: ks-pvs cache: none ssd: "true" --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: "null" annotations: kubernetes.io/description: | Storage class for applications insisting on having a PV, but actually do not and for data that can be discarded immediately provisioner: rancher.io/local-path reclaimPolicy: Delete volumeBindingMode: WaitForFirstConsumer