feat: add snapshot-system and openebs mayastor
This commit is contained in:
parent
47a36fb75d
commit
ad8e7853a6
|
@ -7,7 +7,8 @@ resources:
|
|||
- ./traefik
|
||||
- ../../common/apps/cert-manager
|
||||
# storage
|
||||
#- ../../common/apps/openebs
|
||||
- ./snapshot-system/ks.yaml
|
||||
- ./openebs/ks.yaml
|
||||
# hardware
|
||||
- ../../common/apps/nfd/ks.yaml
|
||||
- ../../common/apps/intel-gpu/ks.yaml
|
||||
|
|
|
@ -0,0 +1,70 @@
|
|||
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2.json
|
||||
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: openebs
|
||||
namespace: openebs
|
||||
spec:
|
||||
interval: 5m
|
||||
chart:
|
||||
spec:
|
||||
chart: openebs
|
||||
version: 4.1.0
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: openebs
|
||||
namespace: flux-system
|
||||
|
||||
values:
|
||||
openebs-crds:
|
||||
csi:
|
||||
volumeSnapshots:
|
||||
enabled: false
|
||||
keep: false
|
||||
|
||||
# Refer to https://github.com/openebs/dynamic-localpv-provisioner/blob/HEAD/deploy/helm/charts/values.yaml for complete set of values.
|
||||
localpv-provisioner:
|
||||
rbac:
|
||||
create: true
|
||||
localpv:
|
||||
enabled: true
|
||||
hostpathClass:
|
||||
enabled: true
|
||||
|
||||
# Refer to https://github.com/openebs/mayastor-extensions/blob/v2.7.0/chart/values.yaml for complete set of values.
|
||||
mayastor:
|
||||
enabled: true
|
||||
nodeSelector:
|
||||
kubernetes.io/arch: amd64
|
||||
openebs.io/engine: mayastor
|
||||
csi:
|
||||
node:
|
||||
initContainers:
|
||||
enabled: true
|
||||
etcd:
|
||||
# -- Kubernetes Cluster Domain
|
||||
clusterDomain: cluster.local
|
||||
crds:
|
||||
enabled: false
|
||||
monitoring:
|
||||
enabled: false
|
||||
loki-stack:
|
||||
enabled: false
|
||||
storageClass:
|
||||
nameSuffix: single
|
||||
tolerations:
|
||||
# tolerate control plane
|
||||
- key: "node-role.kubernetes.io/control-plane"
|
||||
operator: "Exists"
|
||||
effect: "NoSchedule"
|
||||
|
||||
engines:
|
||||
local:
|
||||
lvm:
|
||||
enabled: true
|
||||
zfs:
|
||||
enabled: true
|
||||
replicated:
|
||||
mayastor:
|
||||
enabled: true
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
apiVersion: source.toolkit.fluxcd.io/v1
|
||||
kind: HelmRepository
|
||||
metadata:
|
||||
name: openebs
|
||||
namespace: flux-system
|
||||
spec:
|
||||
interval: 1m
|
||||
url: https://openebs.github.io/openebs
|
||||
---
|
||||
apiVersion: source.toolkit.fluxcd.io/v1
|
||||
kind: HelmRepository
|
||||
metadata:
|
||||
name: openebs-monitoring-charts
|
||||
namespace: flux-system
|
||||
spec:
|
||||
interval: 1m
|
||||
url: https://openebs.github.io/monitoring
|
|
@ -0,0 +1,7 @@
|
|||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
resources:
|
||||
- ./namespace.yaml
|
||||
- ./helm-repository.yaml
|
||||
- ./helm-release.yaml
|
||||
#- ./monitoring-helm-release.yaml
|
|
@ -0,0 +1,41 @@
|
|||
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2.json
|
||||
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: openebs-monitoring
|
||||
namespace: openebs
|
||||
spec:
|
||||
interval: 5m
|
||||
chart:
|
||||
spec:
|
||||
chart: openebs-monitoring
|
||||
version: 0.4.13
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: openebs-monitoring-charts
|
||||
namespace: flux-system
|
||||
dependsOn:
|
||||
- name: openebs
|
||||
values:
|
||||
kube-prometheus-stack:
|
||||
install: false
|
||||
|
||||
openebsMonitoringAddon:
|
||||
# this is the only provisioner enabled
|
||||
localPV:
|
||||
enabled: true
|
||||
|
||||
cStore:
|
||||
enabled: false
|
||||
jiva:
|
||||
enabled: false
|
||||
ndm:
|
||||
enabled: false
|
||||
npd:
|
||||
enabled: false
|
||||
deviceLocalPV:
|
||||
enabled: false
|
||||
lvmLocalPV:
|
||||
enabled: false
|
||||
zfsLocalPV:
|
||||
enabled: false
|
|
@ -0,0 +1,4 @@
|
|||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: openebs
|
|
@ -0,0 +1,59 @@
|
|||
|
||||
---
|
||||
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
|
||||
apiVersion: kustomize.toolkit.fluxcd.io/v1
|
||||
kind: Kustomization
|
||||
metadata:
|
||||
name: openebs
|
||||
namespace: flux-system
|
||||
spec:
|
||||
timeout: 5m
|
||||
interval: 10m
|
||||
path: ./kubernetes/thin/apps/openebs/app
|
||||
prune: true
|
||||
sourceRef:
|
||||
kind: GitRepository
|
||||
name: home-cluster
|
||||
decryption:
|
||||
provider: sops
|
||||
secretRef:
|
||||
name: sops-gpg
|
||||
dependsOn:
|
||||
- name: snapshot-controller
|
||||
namespace: flux-system
|
||||
postBuild:
|
||||
substitute: {}
|
||||
substituteFrom:
|
||||
- kind: ConfigMap
|
||||
name: cluster-settings
|
||||
- kind: Secret
|
||||
name: cluster-secrets
|
||||
---
|
||||
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
|
||||
apiVersion: kustomize.toolkit.fluxcd.io/v1
|
||||
kind: Kustomization
|
||||
metadata:
|
||||
name: openebs-sc
|
||||
namespace: flux-system
|
||||
spec:
|
||||
timeout: 5m
|
||||
interval: 10m
|
||||
path: ./kubernetes/thin/apps/openebs/storage-class
|
||||
prune: true
|
||||
sourceRef:
|
||||
kind: GitRepository
|
||||
name: home-cluster
|
||||
decryption:
|
||||
provider: sops
|
||||
secretRef:
|
||||
name: sops-gpg
|
||||
dependsOn:
|
||||
- name: openebs
|
||||
namespace: flux-system
|
||||
postBuild:
|
||||
substitute: {}
|
||||
substituteFrom:
|
||||
- kind: ConfigMap
|
||||
name: cluster-settings
|
||||
- kind: Secret
|
||||
name: cluster-secrets
|
|
@ -0,0 +1,8 @@
|
|||
apiVersion: storage.k8s.io/v1
|
||||
kind: StorageClass
|
||||
metadata:
|
||||
name: openebs-dual
|
||||
parameters:
|
||||
protocol: nvmf
|
||||
repl: "2"
|
||||
provisioner: io.openebs.csi-mayastor
|
|
@ -0,0 +1,5 @@
|
|||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
resources:
|
||||
- ./pool.yaml
|
||||
- ./dual-replica-sc.yaml
|
|
@ -0,0 +1,39 @@
|
|||
apiVersion: "openebs.io/v1beta2"
|
||||
kind: DiskPool
|
||||
metadata:
|
||||
name: pool-dorm-controller-d52ycbgv
|
||||
namespace: openebs
|
||||
spec:
|
||||
node: dorm-controller-d52ycbgv
|
||||
disks:
|
||||
- /dev/disk/by-id/nvme-SAMSUNG_MZVLB256HAHQ-000H1_S425NX1MA23444
|
||||
---
|
||||
apiVersion: "openebs.io/v1beta2"
|
||||
kind: DiskPool
|
||||
metadata:
|
||||
name: pool-dorm-worker-3ssgwrlx
|
||||
namespace: openebs
|
||||
spec:
|
||||
node: dorm-worker-3ssgwrlx
|
||||
disks:
|
||||
- /dev/disk/by-id/nvme-KXG60ZNV256G_TOSHIBA_69CA70CIK34N
|
||||
---
|
||||
apiVersion: "openebs.io/v1beta2"
|
||||
kind: DiskPool
|
||||
metadata:
|
||||
name: pool-dorm-worker-hklqhcrv
|
||||
namespace: openebs
|
||||
spec:
|
||||
node: dorm-worker-hklqhcrv
|
||||
disks:
|
||||
- /dev/disk/by-id/nvme-SAMSUNG_MZVLW256HEHP-000L7_S35ENX0K125956
|
||||
---
|
||||
apiVersion: "openebs.io/v1beta2"
|
||||
kind: DiskPool
|
||||
metadata:
|
||||
name: pool-dorm-worker-kgoutccb
|
||||
namespace: openebs
|
||||
spec:
|
||||
node: dorm-worker-kgoutccb
|
||||
disks:
|
||||
- /dev/disk/by-id/nvme-SAMSUNG_MZVLW256HEHP-000L7_S35ENX0K173346
|
|
@ -0,0 +1,31 @@
|
|||
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2.json
|
||||
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: snapshot-controller
|
||||
namespace: snapshot-system
|
||||
spec:
|
||||
interval: 30m
|
||||
timeout: 15m
|
||||
chart:
|
||||
spec:
|
||||
chart: snapshot-controller
|
||||
version: 3.0.6
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: piraeus
|
||||
namespace: flux-system
|
||||
install:
|
||||
remediation:
|
||||
retries: 3
|
||||
upgrade:
|
||||
cleanupOnFail: true
|
||||
remediation:
|
||||
strategy: rollback
|
||||
retries: 3
|
||||
values:
|
||||
controller:
|
||||
serviceMonitor:
|
||||
create: false # TODO
|
||||
webhook:
|
||||
enabled: false
|
|
@ -0,0 +1,8 @@
|
|||
apiVersion: source.toolkit.fluxcd.io/v1
|
||||
kind: HelmRepository
|
||||
metadata:
|
||||
name: piraeus
|
||||
namespace: flux-system
|
||||
spec:
|
||||
interval: 1m
|
||||
url: https://piraeus.io/helm-charts/
|
|
@ -0,0 +1,6 @@
|
|||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
resources:
|
||||
- ./namespace.yaml
|
||||
- ./helm-repo.yaml
|
||||
- ./helm-release.yaml
|
|
@ -0,0 +1,4 @@
|
|||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: snapshot-system
|
|
@ -0,0 +1,18 @@
|
|||
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
|
||||
apiVersion: kustomize.toolkit.fluxcd.io/v1
|
||||
kind: Kustomization
|
||||
metadata:
|
||||
name: snapshot-controller
|
||||
namespace: flux-system
|
||||
spec:
|
||||
timeout: 5m
|
||||
interval: 10m
|
||||
path: ./kubernetes/thin/apps/snapshot-controller/app
|
||||
prune: true
|
||||
sourceRef:
|
||||
kind: GitRepository
|
||||
name: home-cluster
|
||||
decryption:
|
||||
provider: sops
|
||||
secretRef:
|
||||
name: sops-gpg
|
Loading…
Reference in New Issue