From 6e4cf47756c5cc0e5b6262c3c45ade7e6dd4a2a9 Mon Sep 17 00:00:00 2001 From: Alex Lebens Date: Fri, 21 Nov 2025 22:21:23 -0600 Subject: [PATCH] change mounts and use replication --- .../booklore/templates/external-secret.yaml | 23 +++++++++++++++++ .../templates/persistent-volume-claim.yaml | 19 -------------- .../booklore/templates/persistent-volume.yaml | 25 ------------------- .../templates/replication-destination.yaml | 15 +++++++++++ .../templates/replication-source.yaml | 19 ++++++++++++++ .../cl01tl/applications/booklore/values.yaml | 9 +------ .../templates/persistent-volume-claim.yaml | 17 ------------- .../ephemera/templates/persistent-volume.yaml | 23 ----------------- .../cl01tl/applications/ephemera/values.yaml | 7 ------ 9 files changed, 58 insertions(+), 99 deletions(-) create mode 100644 clusters/cl01tl/applications/booklore/templates/replication-destination.yaml delete mode 100644 clusters/cl01tl/applications/ephemera/templates/persistent-volume-claim.yaml delete mode 100644 clusters/cl01tl/applications/ephemera/templates/persistent-volume.yaml diff --git a/clusters/cl01tl/applications/booklore/templates/external-secret.yaml b/clusters/cl01tl/applications/booklore/templates/external-secret.yaml index bea56bdb2..bae429731 100644 --- a/clusters/cl01tl/applications/booklore/templates/external-secret.yaml +++ b/clusters/cl01tl/applications/booklore/templates/external-secret.yaml @@ -20,6 +20,29 @@ spec: metadataPolicy: None property: password +--- +apiVersion: external-secrets.io/v1 +kind: ExternalSecret +metadata: + name: booklore-data-replication-secret + namespace: {{ .Release.Namespace }} + labels: + app.kubernetes.io/name: booklore-data-replication-secret + app.kubernetes.io/instance: {{ .Release.Name }} + app.kubernetes.io/part-of: {{ .Release.Name }} +spec: + secretStoreRef: + kind: ClusterSecretStore + name: vault + data: + - secretKey: psk.txt + remoteRef: + conversionStrategy: Default + decodingStrategy: None + key: /cl01tl/booklore/replication + metadataPolicy: None + property: psk.txt + --- apiVersion: external-secrets.io/v1 kind: ExternalSecret diff --git a/clusters/cl01tl/applications/booklore/templates/persistent-volume-claim.yaml b/clusters/cl01tl/applications/booklore/templates/persistent-volume-claim.yaml index f21d20472..34052b021 100644 --- a/clusters/cl01tl/applications/booklore/templates/persistent-volume-claim.yaml +++ b/clusters/cl01tl/applications/booklore/templates/persistent-volume-claim.yaml @@ -15,22 +15,3 @@ spec: resources: requests: storage: 1Gi - ---- -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: booklore-books-import-nfs-storage - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: booklore-books-import-nfs-storage - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - volumeName: booklore-books-import-nfs-storage - storageClassName: nfs-client - accessModes: - - ReadWriteMany - resources: - requests: - storage: 1Gi diff --git a/clusters/cl01tl/applications/booklore/templates/persistent-volume.yaml b/clusters/cl01tl/applications/booklore/templates/persistent-volume.yaml index f50dc7e7a..fd8bae751 100644 --- a/clusters/cl01tl/applications/booklore/templates/persistent-volume.yaml +++ b/clusters/cl01tl/applications/booklore/templates/persistent-volume.yaml @@ -21,28 +21,3 @@ spec: - vers=4 - minorversion=1 - noac - ---- -apiVersion: v1 -kind: PersistentVolume -metadata: - name: booklore-books-import-nfs-storage - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: booklore-books-import-nfs-storage - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - persistentVolumeReclaimPolicy: Retain - storageClassName: nfs-client - capacity: - storage: 1Gi - accessModes: - - ReadWriteMany - nfs: - path: /volume2/Storage/Books Import - server: synologybond.alexlebens.net - mountOptions: - - vers=4 - - minorversion=1 - - noac diff --git a/clusters/cl01tl/applications/booklore/templates/replication-destination.yaml b/clusters/cl01tl/applications/booklore/templates/replication-destination.yaml new file mode 100644 index 000000000..5b70c0281 --- /dev/null +++ b/clusters/cl01tl/applications/booklore/templates/replication-destination.yaml @@ -0,0 +1,15 @@ +apiVersion: volsync.backube/v1alpha1 +kind: ReplicationDestination +metadata: + name: booklore-data-replication-destination + namespace: {{ .Release.Namespace }} + labels: + app.kubernetes.io/name: booklore-data-replication-destination + app.kubernetes.io/instance: {{ .Release.Name }} + app.kubernetes.io/part-of: {{ .Release.Name }} +spec: + rsyncTLS: + copyMethod: Direct + accessModes: ["ReadWriteMany"] + destinationPVC: booklore-books-nfs-storage + keySecret: booklore-data-replication-secret diff --git a/clusters/cl01tl/applications/booklore/templates/replication-source.yaml b/clusters/cl01tl/applications/booklore/templates/replication-source.yaml index 95d08be2f..08a399579 100644 --- a/clusters/cl01tl/applications/booklore/templates/replication-source.yaml +++ b/clusters/cl01tl/applications/booklore/templates/replication-source.yaml @@ -1,5 +1,24 @@ apiVersion: volsync.backube/v1alpha1 kind: ReplicationSource +metadata: + name: booklore-data-replication-source + namespace: {{ .Release.Namespace }} + labels: + app.kubernetes.io/name: booklore-data-replication-source + app.kubernetes.io/instance: {{ .Release.Name }} + app.kubernetes.io/part-of: {{ .Release.Name }} +spec: + sourcePVC: booklore-data + trigger: + schedule: "0 0 * * *" + rsyncTLS: + keySecret: booklore-data-replication-secret + address: placeholder + copyMethod: Snapshot + +--- +apiVersion: volsync.backube/v1alpha1 +kind: ReplicationSource metadata: name: booklore-config-backup-source namespace: {{ .Release.Namespace }} diff --git a/clusters/cl01tl/applications/booklore/values.yaml b/clusters/cl01tl/applications/booklore/values.yaml index e265a6ab4..54e840ce4 100644 --- a/clusters/cl01tl/applications/booklore/values.yaml +++ b/clusters/cl01tl/applications/booklore/values.yaml @@ -60,15 +60,8 @@ booklore: main: - path: /data readOnly: false - books: - existingClaim: booklore-books-nfs-storage - advancedMounts: - main: - main: - - path: /books - readOnly: false books-import: - existingClaim: booklore-books-import-nfs-storage + type: emptyDir advancedMounts: main: main: diff --git a/clusters/cl01tl/applications/ephemera/templates/persistent-volume-claim.yaml b/clusters/cl01tl/applications/ephemera/templates/persistent-volume-claim.yaml deleted file mode 100644 index 4218f447a..000000000 --- a/clusters/cl01tl/applications/ephemera/templates/persistent-volume-claim.yaml +++ /dev/null @@ -1,17 +0,0 @@ -apiVersion: v1 -kind: PersistentVolumeClaim -metadata: - name: ephemera-nfs-storage - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: ephemera-nfs-storage - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - volumeName: ephemera-nfs-storage - storageClassName: nfs-client - accessModes: - - ReadWriteMany - resources: - requests: - storage: 1Gi diff --git a/clusters/cl01tl/applications/ephemera/templates/persistent-volume.yaml b/clusters/cl01tl/applications/ephemera/templates/persistent-volume.yaml deleted file mode 100644 index 62bfefa63..000000000 --- a/clusters/cl01tl/applications/ephemera/templates/persistent-volume.yaml +++ /dev/null @@ -1,23 +0,0 @@ -apiVersion: v1 -kind: PersistentVolume -metadata: - name: ephemera-nfs-storage - namespace: {{ .Release.Namespace }} - labels: - app.kubernetes.io/name: ephemera-nfs-storage - app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/part-of: {{ .Release.Name }} -spec: - persistentVolumeReclaimPolicy: Retain - storageClassName: nfs-client - capacity: - storage: 1Gi - accessModes: - - ReadWriteMany - nfs: - path: /volume2/Storage/Books Import - server: synologybond.alexlebens.net - mountOptions: - - vers=4 - - minorversion=1 - - noac diff --git a/clusters/cl01tl/applications/ephemera/values.yaml b/clusters/cl01tl/applications/ephemera/values.yaml index 9a9226400..1ab85dac7 100644 --- a/clusters/cl01tl/applications/ephemera/values.yaml +++ b/clusters/cl01tl/applications/ephemera/values.yaml @@ -98,10 +98,3 @@ ephemera: main: - path: /app/downloads readOnly: false - books-import: - existingClaim: ephemera-nfs-storage - advancedMounts: - main: - main: - - path: /app/ingest - readOnly: false