From 494ea0433deff326592fb60dc285585eb8624194 Mon Sep 17 00:00:00 2001 From: Edward Cheng Date: Thu, 18 Jul 2024 22:37:25 +1000 Subject: [PATCH 1/2] add PVs and PVCs for postgresql --- .../env/k3s-cluster/kuztomization.yaml | 3 -- .../templates/postgresql-primary-pv.yaml | 30 +++++++++++++++++++ .../templates/postgresql-primary-pvc.yaml | 15 ++++++++++ .../templates/postgresql-replica-pv.yaml | 30 +++++++++++++++++++ .../templates/postgresql-replica-pvc.yaml | 15 ++++++++++ 5 files changed, 90 insertions(+), 3 deletions(-) create mode 100644 resources/app-volumes/env/k3s-cluster/templates/postgresql-primary-pv.yaml create mode 100644 resources/app-volumes/env/k3s-cluster/templates/postgresql-primary-pvc.yaml create mode 100644 resources/app-volumes/env/k3s-cluster/templates/postgresql-replica-pv.yaml create mode 100644 resources/app-volumes/env/k3s-cluster/templates/postgresql-replica-pvc.yaml diff --git a/infrastructures/postgresql/env/k3s-cluster/kuztomization.yaml b/infrastructures/postgresql/env/k3s-cluster/kuztomization.yaml index 6301cb5..f7d5c56 100644 --- a/infrastructures/postgresql/env/k3s-cluster/kuztomization.yaml +++ b/infrastructures/postgresql/env/k3s-cluster/kuztomization.yaml @@ -1,8 +1,5 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization -resources: - - ./volume.yaml - - ./ingress.yaml helmCharts: - name: postgresql repo: oci://registry-1.docker.io/bitnamicharts diff --git a/resources/app-volumes/env/k3s-cluster/templates/postgresql-primary-pv.yaml b/resources/app-volumes/env/k3s-cluster/templates/postgresql-primary-pv.yaml new file mode 100644 index 0000000..03dd795 --- /dev/null +++ b/resources/app-volumes/env/k3s-cluster/templates/postgresql-primary-pv.yaml @@ -0,0 +1,30 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: postgresql-primary-pv + namespace: postgresql + labels: + type: local +spec: + storageClassName: local-path + volumeMode: Filesystem + capacity: + storage: 16Gi + accessModes: + - ReadWriteOnce + persistentVolumeReclaimPolicy: Retain + local: + path: "/mnt/nfs/AppData/postgresql/primary" + claimRef: + apiVersion: v1 + kind: PersistentVolumeClaim + name: postgresql-primary-pvc + namespace: postgresql + nodeAffinity: + required: + nodeSelectorTerms: + - matchExpressions: + - key: kubernetes.io/hostname + operator: In + values: + - rpi5-cluster-node-2 \ No newline at end of file diff --git a/resources/app-volumes/env/k3s-cluster/templates/postgresql-primary-pvc.yaml b/resources/app-volumes/env/k3s-cluster/templates/postgresql-primary-pvc.yaml new file mode 100644 index 0000000..d95e66d --- /dev/null +++ b/resources/app-volumes/env/k3s-cluster/templates/postgresql-primary-pvc.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: postgresql-primary-pvc + namespace: postgresql + labels: + name: postgresql-primary-pvc +spec: + storageClassName: local-path + volumeMode: Filesystem + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 16Gi \ No newline at end of file diff --git a/resources/app-volumes/env/k3s-cluster/templates/postgresql-replica-pv.yaml b/resources/app-volumes/env/k3s-cluster/templates/postgresql-replica-pv.yaml new file mode 100644 index 0000000..b59866e --- /dev/null +++ b/resources/app-volumes/env/k3s-cluster/templates/postgresql-replica-pv.yaml @@ -0,0 +1,30 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: postgresql-replica-pv + namespace: flux-system + labels: + type: local +spec: + storageClassName: local-path + volumeMode: Filesystem + capacity: + storage: 16Gi + accessModes: + - ReadWriteOnce + persistentVolumeReclaimPolicy: Retain + local: + path: "/mnt/nfs/AppData/postgresql/replica" + claimRef: + apiVersion: v1 + kind: PersistentVolumeClaim + name: postgresql-replica-pvc + namespace: postgresql + nodeAffinity: + required: + nodeSelectorTerms: + - matchExpressions: + - key: kubernetes.io/hostname + operator: In + values: + - rpi5-cluster-node-2 \ No newline at end of file diff --git a/resources/app-volumes/env/k3s-cluster/templates/postgresql-replica-pvc.yaml b/resources/app-volumes/env/k3s-cluster/templates/postgresql-replica-pvc.yaml new file mode 100644 index 0000000..5953fb6 --- /dev/null +++ b/resources/app-volumes/env/k3s-cluster/templates/postgresql-replica-pvc.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: postgresql-replica-pvc + namespace: postgresql + labels: + name: postgresql-replica-pvc +spec: + storageClassName: local-path + volumeMode: Filesystem + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 16Gi \ No newline at end of file From ff0c3d71003eceda80800ca112f68f38f94a0257 Mon Sep 17 00:00:00 2001 From: Edward Cheng Date: Thu, 18 Jul 2024 22:40:17 +1000 Subject: [PATCH 2/2] remove unneeded files --- .../env/k3s-cluster/templates/ingress.yaml | 31 ------- .../env/k3s-cluster/templates/volume.yaml | 93 ------------------- 2 files changed, 124 deletions(-) delete mode 100644 infrastructures/postgresql/env/k3s-cluster/templates/ingress.yaml delete mode 100644 infrastructures/postgresql/env/k3s-cluster/templates/volume.yaml diff --git a/infrastructures/postgresql/env/k3s-cluster/templates/ingress.yaml b/infrastructures/postgresql/env/k3s-cluster/templates/ingress.yaml deleted file mode 100644 index cb15c97..0000000 --- a/infrastructures/postgresql/env/k3s-cluster/templates/ingress.yaml +++ /dev/null @@ -1,31 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: postgresql-ingress - namespace: postgresql - annotations: - nginx.ingress.kubernetes.io/ssl-redirect: "false" - nginx.ingress.kubernetes.io/use-regex: "true" -spec: - ingressClassName: nginx - rules: - - host: "postgres.cluster.local" - http: - paths: - - pathType: Prefix - path: "/" - backend: - service: - name: postgresql-primary - port: - number: 5432 - - host: "replica.postgres.cluster.local" - http: - paths: - - pathType: Prefix - path: "/" - backend: - service: - name: postgresql-replica - port: - number: 5432 \ No newline at end of file diff --git a/infrastructures/postgresql/env/k3s-cluster/templates/volume.yaml b/infrastructures/postgresql/env/k3s-cluster/templates/volume.yaml deleted file mode 100644 index 3875f79..0000000 --- a/infrastructures/postgresql/env/k3s-cluster/templates/volume.yaml +++ /dev/null @@ -1,93 +0,0 @@ -apiVersion: v1 -kind: PersistentVolume -metadata: - name: postgresql-primary-pv - namespace: postgresql - labels: - type: local -spec: - storageClassName: local-path - volumeMode: Filesystem - capacity: - storage: 8Gi - accessModes: - - ReadWriteOnce - persistentVolumeReclaimPolicy: Retain - local: - path: "/mnt/nfs/AppData/postgresql/primary" - claimRef: - apiVersion: v1 - kind: PersistentVolumeClaim - name: postgresql-primary-pvc - namespace: postgresql - nodeAffinity: - required: - nodeSelectorTerms: - - matchExpressions: - - key: kubernetes.io/hostname - operator: In - values: - - rpi5-cluster-node-2 ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: postgresql-primary-pvc - namespace: postgresql - labels: - name: postgresql-primary-pvc -spec: - storageClassName: local-path - volumeMode: Filesystem - accessModes: - - ReadWriteOnce - resources: - requests: - storage: 8Gi ---- -apiVersion: v1 -kind: PersistentVolume -metadata: - name: postgresql-replica-pv - namespace: flux-system - labels: - type: local -spec: - storageClassName: local-path - volumeMode: Filesystem - capacity: - storage: 8Gi - accessModes: - - ReadWriteOnce - persistentVolumeReclaimPolicy: Retain - local: - path: "/mnt/nfs/AppData/postgresql/replica" - claimRef: - apiVersion: v1 - kind: PersistentVolumeClaim - name: postgresql-replica-pvc - namespace: postgresql - nodeAffinity: - required: - nodeSelectorTerms: - - matchExpressions: - - key: kubernetes.io/hostname - operator: In - values: - - rpi5-cluster-node-2 ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: postgresql-replica-pvc - namespace: postgresql - labels: - name: postgresql-replica-pvc -spec: - storageClassName: local-path - volumeMode: Filesystem - accessModes: - - ReadWriteOnce - resources: - requests: - storage: 8Gi