From 64edadbe22aa3474fd863e73503d4204e50a72f8 Mon Sep 17 00:00:00 2001 From: Arthur Date: Tue, 24 Dec 2024 03:40:32 +0000 Subject: [PATCH] feat(Virt): CI StorageClass --- .../ceph/base/block-ci/ceph-block-pool.yaml | 26 +++++++++++++++++++ kubernetes/kubevirt/base/storage-profile.yaml | 20 ++++++++++++++ sandbox/kubevirt/k3s/vms/k3s-server-0.yaml | 1 + sandbox/kubevirt/k3s/vms/k3s-server-1.yaml | 1 + sandbox/kubevirt/k3s/vms/k3s-server-2.yaml | 1 + sandbox/kubevirt/okd/vm/datavolume.yaml | 1 + sandbox/kubevirt/okd/vm/okd1.yml | 1 + sandbox/kubevirt/okd/vm/okd2.yml | 1 + sandbox/kubevirt/okd/vm/okd3.yml | 1 + 9 files changed, 53 insertions(+) diff --git a/kubernetes/ceph/base/block-ci/ceph-block-pool.yaml b/kubernetes/ceph/base/block-ci/ceph-block-pool.yaml index d7d5cc7c5..bd46e36ab 100644 --- a/kubernetes/ceph/base/block-ci/ceph-block-pool.yaml +++ b/kubernetes/ceph/base/block-ci/ceph-block-pool.yaml @@ -10,3 +10,29 @@ spec: failureDomain: host replicated: size: 2 +--- +kind: StorageClass +apiVersion: storage.k8s.io/v1 +metadata: + name: rook-ceph-block-virtualization-ci + annotations: + description: Provides RWO and RWX Block volumes suitable for Virtual Machine disks + storageclass.kubevirt.io/is-default-virt-class: "true" +provisioner: rook-ceph.rbd.csi.ceph.com +parameters: + csi.storage.k8s.io/fstype: ext4 + mapOptions: "krbd:rxbounce" + mounter: rbd + csi.storage.k8s.io/provisioner-secret-name: rook-csi-rbd-provisioner + csi.storage.k8s.io/provisioner-secret-namespace: rook-ceph + csi.storage.k8s.io/controller-expand-secret-name: rook-csi-rbd-provisioner + csi.storage.k8s.io/controller-expand-secret-namespace: rook-ceph + csi.storage.k8s.io/node-stage-secret-name: rook-csi-rbd-node + csi.storage.k8s.io/node-stage-secret-namespace: rook-ceph + imageFormat: "2" + clusterID: rook-ceph + imageFeatures: "layering,deep-flatten,exclusive-lock,object-map,fast-diff" + pool: replicapool-ci +reclaimPolicy: Delete +allowVolumeExpansion: true +volumeBindingMode: Immediate diff --git a/kubernetes/kubevirt/base/storage-profile.yaml b/kubernetes/kubevirt/base/storage-profile.yaml index bcb2e28e9..7bbc109b0 100644 --- a/kubernetes/kubevirt/base/storage-profile.yaml +++ b/kubernetes/kubevirt/base/storage-profile.yaml @@ -100,3 +100,23 @@ spec: - ReadWriteMany volumeMode: Filesystem cloneStrategy: csi-clone +--- +apiVersion: cdi.kubevirt.io/v1beta1 +kind: StorageProfile +metadata: + annotations: + argocd.argoproj.io/sync-wave: "3" + argocd.argoproj.io/sync-options: SkipDryRunOnMissingResource=true + name: rook-ceph-block-virtualization-ci +spec: + claimPropertySets: + - accessModes: + - ReadWriteMany + volumeMode: Block + - accessModes: + - ReadWriteOnce + volumeMode: Block + - accessModes: + - ReadWriteOnce + volumeMode: Filesystem + cloneStrategy: csi-clone diff --git a/sandbox/kubevirt/k3s/vms/k3s-server-0.yaml b/sandbox/kubevirt/k3s/vms/k3s-server-0.yaml index 9d38a257b..9b8a6b8d1 100644 --- a/sandbox/kubevirt/k3s/vms/k3s-server-0.yaml +++ b/sandbox/kubevirt/k3s/vms/k3s-server-0.yaml @@ -24,6 +24,7 @@ spec: resources: requests: storage: 30Gi + storageClassName: rook-ceph-block-virtualization-ci running: false template: metadata: diff --git a/sandbox/kubevirt/k3s/vms/k3s-server-1.yaml b/sandbox/kubevirt/k3s/vms/k3s-server-1.yaml index acb876d2f..8858ba969 100644 --- a/sandbox/kubevirt/k3s/vms/k3s-server-1.yaml +++ b/sandbox/kubevirt/k3s/vms/k3s-server-1.yaml @@ -24,6 +24,7 @@ spec: resources: requests: storage: 30Gi + storageClassName: rook-ceph-block-virtualization-ci running: false template: metadata: diff --git a/sandbox/kubevirt/k3s/vms/k3s-server-2.yaml b/sandbox/kubevirt/k3s/vms/k3s-server-2.yaml index fbb964faa..760701522 100644 --- a/sandbox/kubevirt/k3s/vms/k3s-server-2.yaml +++ b/sandbox/kubevirt/k3s/vms/k3s-server-2.yaml @@ -24,6 +24,7 @@ spec: resources: requests: storage: 30Gi + storageClassName: rook-ceph-block-virtualization-ci running: false template: metadata: diff --git a/sandbox/kubevirt/okd/vm/datavolume.yaml b/sandbox/kubevirt/okd/vm/datavolume.yaml index cb458f22b..1742eadfd 100644 --- a/sandbox/kubevirt/okd/vm/datavolume.yaml +++ b/sandbox/kubevirt/okd/vm/datavolume.yaml @@ -11,3 +11,4 @@ spec: resources: requests: storage: 5Gi + storageClassName: rook-ceph-block-virtualization-ci diff --git a/sandbox/kubevirt/okd/vm/okd1.yml b/sandbox/kubevirt/okd/vm/okd1.yml index 81c3edf23..01f873ee7 100644 --- a/sandbox/kubevirt/okd/vm/okd1.yml +++ b/sandbox/kubevirt/okd/vm/okd1.yml @@ -20,6 +20,7 @@ spec: resources: requests: storage: 100Gi + storageClassName: rook-ceph-block-virtualization-ci running: true template: metadata: diff --git a/sandbox/kubevirt/okd/vm/okd2.yml b/sandbox/kubevirt/okd/vm/okd2.yml index ceb8c6de0..72ef1e19e 100644 --- a/sandbox/kubevirt/okd/vm/okd2.yml +++ b/sandbox/kubevirt/okd/vm/okd2.yml @@ -20,6 +20,7 @@ spec: resources: requests: storage: 100Gi + storageClassName: rook-ceph-block-virtualization-ci running: true template: metadata: diff --git a/sandbox/kubevirt/okd/vm/okd3.yml b/sandbox/kubevirt/okd/vm/okd3.yml index b7db9d416..398fc465c 100644 --- a/sandbox/kubevirt/okd/vm/okd3.yml +++ b/sandbox/kubevirt/okd/vm/okd3.yml @@ -20,6 +20,7 @@ spec: resources: requests: storage: 100Gi + storageClassName: rook-ceph-block-virtualization-ci running: true template: metadata: