zfs-to-hostpath until talos 1.8 #409
45 changed files with 148 additions and 85 deletions
|
@ -12,7 +12,7 @@ spec:
|
|||
app.kubernetes.io/name: *app
|
||||
dependsOn:
|
||||
- name: external-secrets-stores
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
- name: volsync
|
||||
path: ./kubernetes/apps/home-automation/home-assistant/app
|
||||
prune: true
|
||||
|
|
|
@ -11,7 +11,7 @@ spec:
|
|||
labels:
|
||||
app.kubernetes.io/name: *app
|
||||
dependsOn:
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
- name: volsync
|
||||
path: ./kubernetes/apps/home-automation/matter-server/app
|
||||
prune: true
|
||||
|
|
9
.archive/kubernetes/openebs-system/kustomization.yaml
Normal file
9
.archive/kubernetes/openebs-system/kustomization.yaml
Normal file
|
@ -0,0 +1,9 @@
|
|||
---
|
||||
# yaml-language-server: $schema=https://json.schemastore.org/kustomization
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
resources:
|
||||
# Pre Flux-Kustomizations
|
||||
- ./namespace.yaml
|
||||
# Flux-Kustomizations
|
||||
- ./openebs/ks.yaml
|
8
.archive/kubernetes/openebs-system/namespace.yaml
Normal file
8
.archive/kubernetes/openebs-system/namespace.yaml
Normal file
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: openebs-system
|
||||
annotations:
|
||||
kustomize.toolkit.fluxcd.io/prune: disabled
|
||||
volsync.backube/privileged-movers: "true"
|
|
@ -0,0 +1,32 @@
|
|||
---
|
||||
# yaml-language-server: $schema=https://ks.hsn.dev/helm.toolkit.fluxcd.io/helmrelease_v2beta2.json
|
||||
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: openebs-zfs
|
||||
spec:
|
||||
interval: 30m
|
||||
chart:
|
||||
spec:
|
||||
chart: zfs-localpv
|
||||
version: 2.6.0
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: openebs-zfs
|
||||
namespace: flux-system
|
||||
install:
|
||||
remediation:
|
||||
retries: 3
|
||||
upgrade:
|
||||
cleanupOnFail: true
|
||||
remediation:
|
||||
retries: 3
|
||||
uninstall:
|
||||
keepHistory: false
|
||||
values:
|
||||
zfsNode:
|
||||
encrKeysDir: /var/openebs/keys
|
||||
crds:
|
||||
csi:
|
||||
volumeSnapshots:
|
||||
enabled: false
|
|
@ -0,0 +1,6 @@
|
|||
---
|
||||
# yaml-language-server: $schema=https://json.schemastore.org/kustomization
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
resources:
|
||||
- ./helmrelease.yaml
|
21
.archive/kubernetes/openebs-system/openebs/ks.yaml
Normal file
21
.archive/kubernetes/openebs-system/openebs/ks.yaml
Normal file
|
@ -0,0 +1,21 @@
|
|||
---
|
||||
# yaml-language-server: $schema=https://ks.hsn.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
|
||||
apiVersion: kustomize.toolkit.fluxcd.io/v1
|
||||
kind: Kustomization
|
||||
metadata:
|
||||
name: &app openebs
|
||||
namespace: flux-system
|
||||
spec:
|
||||
targetNamespace: openebs-system
|
||||
commonMetadata:
|
||||
labels:
|
||||
app.kubernetes.io/name: *app
|
||||
path: ./kubernetes/apps/openebs-system/openebs/app
|
||||
prune: true
|
||||
sourceRef:
|
||||
kind: GitRepository
|
||||
name: homelab
|
||||
wait: false
|
||||
interval: 30m
|
||||
retryInterval: 1m
|
||||
timeout: 5m
|
|
@ -9,7 +9,7 @@ spec:
|
|||
resources:
|
||||
requests:
|
||||
storage: 2Gi
|
||||
storageClassName: "openebs-zfs"
|
||||
storageClassName: "openebs-hostpath"
|
||||
accessModes:
|
||||
- "ReadWriteOnce"
|
||||
source:
|
||||
|
|
|
@ -8,7 +8,7 @@ metadata:
|
|||
app.kubernetes.io/component: storage
|
||||
app.kubernetes.io/managed-by: cdi-controller
|
||||
cdi.kubevirt.io: ""
|
||||
name: openebs-zfs
|
||||
name: openebs-hostpath
|
||||
spec:
|
||||
claimPropertySets:
|
||||
- accessModes:
|
||||
|
@ -22,5 +22,5 @@ status:
|
|||
cloneStrategy: copy
|
||||
dataImportCronSourceFormat: pvc
|
||||
provisioner: zfs.csi.openebs.io
|
||||
snapshotClass: openebs-zfs
|
||||
storageClass: openebs-zfs
|
||||
snapshotClass: openebs-hostpath
|
||||
storageClass: openebs-hostpath
|
||||
|
|
|
@ -9,7 +9,7 @@ spec:
|
|||
targetNamespace: cdi
|
||||
dependsOn:
|
||||
- name: kubevirt
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
path: ./deploy
|
||||
prune: true
|
||||
sourceRef:
|
||||
|
|
|
@ -41,7 +41,7 @@ spec:
|
|||
app.kubernetes.io/name: crunchy-postgres
|
||||
replicas: &replica 1
|
||||
dataVolumeClaimSpec:
|
||||
storageClassName: openebs-zfs
|
||||
storageClassName: openebs-hostpath
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
|
|
|
@ -18,7 +18,7 @@ spec:
|
|||
name: homelab
|
||||
wait: false
|
||||
dependsOn:
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
- name: volsync
|
||||
- name: external-secrets-stores
|
||||
postBuild:
|
||||
|
|
|
@ -16,7 +16,7 @@ spec:
|
|||
kind: GitRepository
|
||||
name: homelab
|
||||
dependsOn:
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
- name: volsync
|
||||
wait: false
|
||||
interval: 30m
|
||||
|
|
|
@ -13,7 +13,7 @@ spec:
|
|||
dependsOn:
|
||||
- name: crunchy-postgres-operator
|
||||
- name: external-secrets-stores
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
path: ./kubernetes/apps/default/radarr/app
|
||||
prune: true
|
||||
sourceRef:
|
||||
|
|
|
@ -12,7 +12,7 @@ spec:
|
|||
app.kubernetes.io/name: *app
|
||||
dependsOn:
|
||||
- name: external-secrets-stores
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
- name: volsync
|
||||
path: ./kubernetes/apps/default/sabnzbd/app
|
||||
prune: true
|
||||
|
|
|
@ -14,7 +14,7 @@ spec:
|
|||
- name: crunchy-postgres-operator
|
||||
- name: external-secrets-stores
|
||||
- name: volsync
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
path: ./kubernetes/apps/default/sonarr/app
|
||||
prune: true
|
||||
sourceRef:
|
||||
|
|
|
@ -16,7 +16,7 @@ spec:
|
|||
kind: GitRepository
|
||||
name: homelab
|
||||
dependsOn:
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
- name: volsync
|
||||
wait: false
|
||||
interval: 30m
|
||||
|
|
|
@ -18,7 +18,7 @@ spec:
|
|||
name: homelab
|
||||
wait: true
|
||||
dependsOn:
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
- name: volsync
|
||||
- name: external-secrets-stores
|
||||
postBuild:
|
||||
|
|
|
@ -13,8 +13,8 @@ resources:
|
|||
- ./kubelet-csr-approver/ks.yaml
|
||||
- ./metrics-server/ks.yaml
|
||||
- ./multus/ks.yaml
|
||||
# - ./nvidia-device-plugin/ks.yaml # Until nvidia-container-plugin issues are resolved with the ZFS extension.
|
||||
- ./nvidia-device-plugin/ks.yaml
|
||||
- ./node-feature-discovery/ks.yaml
|
||||
- ./reloader/ks.yaml
|
||||
- ./spegel/ks.yaml
|
||||
- ./zfs-scrub/ks.yaml
|
||||
# - ./zfs-scrub/ks.yaml # Until nvidia-container-plugin issues are resolved with the ZFS extension.
|
||||
|
|
|
@ -8,7 +8,7 @@ metadata:
|
|||
spec:
|
||||
targetNamespace: kubevirt
|
||||
dependsOn:
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
path: ./deploy
|
||||
prune: true
|
||||
sourceRef:
|
||||
|
@ -40,7 +40,7 @@ spec:
|
|||
featureGates:
|
||||
- CPUNodeDiscovery
|
||||
- ExpandDisks
|
||||
vmStateStorageClass: openebs-zfs
|
||||
vmStateStorageClass: openebs-hostpath
|
||||
target:
|
||||
group: kubevirt.io
|
||||
kind: KubeVirt
|
||||
|
|
|
@ -9,4 +9,4 @@ spec:
|
|||
resources:
|
||||
requests:
|
||||
storage: 80Gi
|
||||
storageClassName: openebs-zfs
|
||||
storageClassName: openebs-hostpath
|
||||
|
|
|
@ -9,4 +9,4 @@ spec:
|
|||
resources:
|
||||
requests:
|
||||
storage: 80Gi
|
||||
storageClassName: openebs-zfs
|
||||
storageClassName: openebs-hostpath
|
||||
|
|
|
@ -46,7 +46,7 @@ spec:
|
|||
storage:
|
||||
volumeClaimTemplate:
|
||||
spec:
|
||||
storageClassName: openebs-zfs
|
||||
storageClassName: openebs-hostpath
|
||||
resources:
|
||||
requests:
|
||||
storage: 1Gi
|
||||
|
@ -142,7 +142,7 @@ spec:
|
|||
storageSpec:
|
||||
volumeClaimTemplate:
|
||||
spec:
|
||||
storageClassName: openebs-zfs
|
||||
storageClassName: openebs-hostpath
|
||||
resources:
|
||||
requests:
|
||||
storage: 20Gi
|
||||
|
|
|
@ -12,7 +12,7 @@ spec:
|
|||
app.kubernetes.io/name: *app
|
||||
dependsOn:
|
||||
- name: external-secrets-stores
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
- name: volsync
|
||||
path: ./kubernetes/apps/observability/kube-prometheus-stack/app
|
||||
prune: true
|
||||
|
|
|
@ -104,7 +104,7 @@ spec:
|
|||
replicas: 1
|
||||
persistence:
|
||||
size: 20Gi
|
||||
storageClass: openebs-zfs
|
||||
storageClass: openebs-hostpath
|
||||
gateway:
|
||||
replicas: 1
|
||||
image:
|
||||
|
@ -125,7 +125,7 @@ spec:
|
|||
replicas: 1
|
||||
persistence:
|
||||
size: 20Gi
|
||||
storageClass: openebs-zfs
|
||||
storageClass: openebs-hostpath
|
||||
sidecar:
|
||||
image:
|
||||
repository: ghcr.io/kiwigrid/k8s-sidecar
|
||||
|
|
|
@ -12,7 +12,7 @@ spec:
|
|||
app.kubernetes.io/name: *app
|
||||
dependsOn:
|
||||
- name: external-secrets-stores
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
- name: vector
|
||||
path: ./kubernetes/apps/observability/loki/app
|
||||
prune: true
|
||||
|
|
|
@ -65,7 +65,7 @@ spec:
|
|||
- --retention.resolution-1h=60d
|
||||
persistence: &persistence
|
||||
enabled: true
|
||||
storageClass: openebs-zfs
|
||||
storageClass: openebs-hostpath
|
||||
size: 10Gi
|
||||
query:
|
||||
replicas: 1
|
||||
|
|
|
@ -12,7 +12,7 @@ spec:
|
|||
app.kubernetes.io/name: *app
|
||||
dependsOn:
|
||||
- name: external-secrets-stores
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
- name: dragonfly-operator
|
||||
path: ./kubernetes/apps/observability/thanos/app
|
||||
prune: true
|
||||
|
|
|
@ -3,16 +3,16 @@
|
|||
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: openebs-zfs
|
||||
name: openebs
|
||||
spec:
|
||||
interval: 30m
|
||||
chart:
|
||||
spec:
|
||||
chart: zfs-localpv
|
||||
version: 2.6.0
|
||||
chart: openebs
|
||||
version: 4.0.1
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: openebs-zfs
|
||||
name: openebs
|
||||
namespace: flux-system
|
||||
install:
|
||||
remediation:
|
||||
|
@ -20,13 +20,34 @@ spec:
|
|||
upgrade:
|
||||
cleanupOnFail: true
|
||||
remediation:
|
||||
strategy: rollback
|
||||
retries: 3
|
||||
uninstall:
|
||||
keepHistory: false
|
||||
values:
|
||||
zfsNode:
|
||||
encrKeysDir: /var/openebs/keys
|
||||
crds:
|
||||
localpv-provisioner:
|
||||
localpv:
|
||||
image:
|
||||
registry: quay.io/
|
||||
repository: openebs/provisioner-localpv
|
||||
hostpathClass:
|
||||
name: openebs-hostpath
|
||||
isDefaultClass: true
|
||||
openebs-crds:
|
||||
csi:
|
||||
volumeSnapshots:
|
||||
enabled: false
|
||||
keep: false
|
||||
zfs-localpv:
|
||||
enabled: false
|
||||
lvm-localpv:
|
||||
enabled: false
|
||||
mayastor:
|
||||
enabled: false
|
||||
engines:
|
||||
local:
|
||||
lvm:
|
||||
enabled: false
|
||||
zfs:
|
||||
enabled: false
|
||||
replicated:
|
||||
mayastor:
|
||||
enabled: false
|
||||
|
|
|
@ -19,26 +19,3 @@ spec:
|
|||
interval: 30m
|
||||
retryInterval: 1m
|
||||
timeout: 5m
|
||||
---
|
||||
# yaml-language-server: $schema=https://ks.hsn.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
|
||||
apiVersion: kustomize.toolkit.fluxcd.io/v1
|
||||
kind: Kustomization
|
||||
metadata:
|
||||
name: &app openebs-cluster
|
||||
namespace: flux-system
|
||||
spec:
|
||||
targetNamespace: openebs-system
|
||||
commonMetadata:
|
||||
labels:
|
||||
app.kubernetes.io/name: *app
|
||||
path: ./kubernetes/apps/openebs-system/openebs/cluster
|
||||
dependsOn:
|
||||
- name: openebs
|
||||
prune: true
|
||||
sourceRef:
|
||||
kind: GitRepository
|
||||
name: homelab
|
||||
wait: false
|
||||
interval: 30m
|
||||
retryInterval: 1m
|
||||
timeout: 5m
|
||||
|
|
|
@ -18,7 +18,7 @@ spec:
|
|||
name: homelab
|
||||
wait: true
|
||||
dependsOn:
|
||||
- name: openebs-cluster
|
||||
- name: openebs-system
|
||||
- name: volsync
|
||||
- name: external-secrets-stores
|
||||
postBuild:
|
||||
|
|
|
@ -26,7 +26,6 @@ resources:
|
|||
- kubernetes-sigs-external-dns.yaml
|
||||
- nvidia.yaml
|
||||
- openebs.yaml
|
||||
- openebs-zfs.yaml
|
||||
- piraeus.yaml
|
||||
- postfinance.yaml
|
||||
- prometheus-community.yaml
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
---
|
||||
# yaml-language-server: $schema=https://ks.hsn.dev/source.toolkit.fluxcd.io/helmrepository_v1beta2.json
|
||||
apiVersion: source.toolkit.fluxcd.io/v1
|
||||
kind: HelmRepository
|
||||
metadata:
|
||||
name: openebs-zfs
|
||||
namespace: flux-system
|
||||
spec:
|
||||
interval: 2h
|
||||
url: https://openebs.github.io/zfs-localpv
|
|
@ -36,7 +36,7 @@ spec:
|
|||
app.kubernetes.io/name: pgo-${APP}
|
||||
replicas: 1
|
||||
dataVolumeClaimSpec:
|
||||
storageClassName: openebs-zfs
|
||||
storageClassName: openebs-hostpath
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
|
|
|
@ -12,4 +12,4 @@ spec:
|
|||
resources:
|
||||
requests:
|
||||
storage: "${VOLSYNC_CAPACITY}"
|
||||
storageClassName: "${VOLSYNC_STORAGECLASS:-openebs-zfs}"
|
||||
storageClassName: "${VOLSYNC_STORAGECLASS:-openebs-hostpath}"
|
||||
|
|
|
@ -36,11 +36,11 @@ spec:
|
|||
copyMethod: "${VOLSYNC_COPYMETHOD:-Snapshot}"
|
||||
pruneIntervalDays: 7
|
||||
repository: "${APP}-volsync-secret"
|
||||
volumeSnapshotClassName: "${VOLSYNC_SNAPSHOTCLASS:-openebs-zfs}"
|
||||
volumeSnapshotClassName: "${VOLSYNC_SNAPSHOTCLASS:-openebs-hostpath}"
|
||||
cacheCapacity: "${VOLSYNC_CACHE_CAPACITY:-4Gi}"
|
||||
cacheStorageClassName: "${VOLSYNC_CACHE_SNAPSHOTCLASS:-openebs-zfs}"
|
||||
cacheStorageClassName: "${VOLSYNC_CACHE_SNAPSHOTCLASS:-openebs-hostpath}"
|
||||
cacheAccessModes: ["${VOLSYNC_CACHE_ACCESSMODES:-ReadWriteOnce}"]
|
||||
storageClassName: "${VOLSYNC_STORAGECLASS:-openebs-zfs}"
|
||||
storageClassName: "${VOLSYNC_STORAGECLASS:-openebs-hostpath}"
|
||||
accessModes: ["${VOLSYNC_ACCESSMODES:-ReadWriteOnce}"]
|
||||
moverSecurityContext:
|
||||
runAsUser: ${APP_UID:-568}
|
||||
|
@ -62,11 +62,11 @@ spec:
|
|||
restic:
|
||||
repository: "${APP}-volsync-secret"
|
||||
copyMethod: Snapshot # must be Snapshot
|
||||
volumeSnapshotClassName: "${VOLSYNC_SNAPSHOTCLASS:-openebs-zfs}"
|
||||
cacheStorageClassName: "${VOLSYNC_CACHE_SNAPSHOTCLASS:-openebs-zfs}"
|
||||
volumeSnapshotClassName: "${VOLSYNC_SNAPSHOTCLASS:-openebs-hostpath}"
|
||||
cacheStorageClassName: "${VOLSYNC_CACHE_SNAPSHOTCLASS:-openebs-hostpath}"
|
||||
cacheAccessModes: ["${VOLSYNC_CACHE_ACCESSMODES:-ReadWriteOnce}"]
|
||||
cacheCapacity: "${VOLSYNC_CACHE_CAPACITY:-4Gi}"
|
||||
storageClassName: "${VOLSYNC_STORAGECLASS:-openebs-zfs}"
|
||||
storageClassName: "${VOLSYNC_STORAGECLASS:-openebs-hostpath}"
|
||||
accessModes: ["${VOLSYNC_ACCESSMODES:-ReadWriteOnce}"]
|
||||
capacity: "${VOLSYNC_CAPACITY}"
|
||||
moverSecurityContext:
|
||||
|
|
|
@ -36,11 +36,11 @@ spec:
|
|||
copyMethod: "${VOLSYNC_COPYMETHOD:-Snapshot}"
|
||||
pruneIntervalDays: 7
|
||||
repository: "${APP}-volsync-r2-secret"
|
||||
volumeSnapshotClassName: "${VOLSYNC_SNAPSHOTCLASS:-openebs-zfs}"
|
||||
volumeSnapshotClassName: "${VOLSYNC_SNAPSHOTCLASS:-openebs-hostpath}"
|
||||
cacheCapacity: "${VOLSYNC_CACHE_CAPACITY:-4Gi}"
|
||||
cacheStorageClassName: "${VOLSYNC_CACHE_SNAPSHOTCLASS:-openebs-zfs}"
|
||||
cacheStorageClassName: "${VOLSYNC_CACHE_SNAPSHOTCLASS:-openebs-hostpath}"
|
||||
cacheAccessModes: ["${VOLSYNC_CACHE_ACCESSMODES:-ReadWriteOnce}"]
|
||||
storageClassName: "${VOLSYNC_STORAGECLASS:-openebs-zfs}"
|
||||
storageClassName: "${VOLSYNC_STORAGECLASS:-openebs-hostpath}"
|
||||
accessModes: ["${VOLSYNC_ACCESSMODES:-ReadWriteOnce}"]
|
||||
moverSecurityContext:
|
||||
runAsUser: ${APP_UID:-568}
|
||||
|
|
|
@ -4,7 +4,7 @@ apiVersion: v1
|
|||
metadata:
|
||||
name: kbench-pvc
|
||||
spec:
|
||||
storageClassName: openebs-zfs
|
||||
storageClassName: openebs-hostpath
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
|
|
Loading…
Reference in a new issue