From a1ddf4535dfffc4bc39f48b757291dfc045601be Mon Sep 17 00:00:00 2001 From: Praveen M Date: Wed, 19 Jun 2024 15:36:42 +0530 Subject: [PATCH 1/2] csi: update csi sidecars' image version Below csi sidecars are updated with latest available versions csi-resizer: v1.11.1 csi-provisioner: v5.0.1 csi-attacher: v4.6.1 csi-snapshotter: v8.0.1 csi-node-driver-registrar: v2.11.1 Signed-off-by: Praveen M --- Documentation/Helm-Charts/operator-chart.md | 10 +++++----- .../Storage-Configuration/Ceph-CSI/custom-images.md | 10 +++++----- deploy/charts/rook-ceph/values.yaml | 10 +++++----- deploy/examples/images.txt | 10 +++++----- deploy/examples/operator-openshift.yaml | 10 +++++----- deploy/examples/operator.yaml | 10 +++++----- pkg/operator/ceph/csi/spec.go | 10 +++++----- tests/framework/utils/snapshot.go | 2 +- 8 files changed, 36 insertions(+), 36 deletions(-) diff --git a/Documentation/Helm-Charts/operator-chart.md b/Documentation/Helm-Charts/operator-chart.md index 756980ef4..d0a10680a 100644 --- a/Documentation/Helm-Charts/operator-chart.md +++ b/Documentation/Helm-Charts/operator-chart.md @@ -54,7 +54,7 @@ The following table lists the configurable parameters of the rook-operator chart | `crds.enabled` | Whether the helm chart should create and update the CRDs. If false, the CRDs must be managed independently with deploy/examples/crds.yaml. **WARNING** Only set during first deployment. If later disabled the cluster may be DESTROYED. If the CRDs are deleted in this case, see [the disaster recovery guide](https://rook.io/docs/rook/latest/Troubleshooting/disaster-recovery/#restoring-crds-after-deletion) to restore them. | `true` | | `csi.allowUnsupportedVersion` | Allow starting an unsupported ceph-csi image | `false` | | `csi.attacher.repository` | Kubernetes CSI Attacher image repository | `"registry.k8s.io/sig-storage/csi-attacher"` | -| `csi.attacher.tag` | Attacher image tag | `"v4.5.1"` | +| `csi.attacher.tag` | Attacher image tag | `"v4.6.1"` | | `csi.cephFSAttachRequired` | Whether to skip any attach operation altogether for CephFS PVCs. See more details [here](https://kubernetes-csi.github.io/docs/skip-attach.html#skip-attach-with-csi-driver-object). If cephFSAttachRequired is set to false it skips the volume attachments and makes the creation of pods using the CephFS PVC fast. **WARNING** It's highly discouraged to use this for CephFS RWO volumes. Refer to this [issue](https://github.com/kubernetes/kubernetes/issues/103305) for more details. | `true` | | `csi.cephFSFSGroupPolicy` | Policy for modifying a volume's ownership or permissions when the CephFS PVC is being mounted. supported values are documented at https://kubernetes-csi.github.io/docs/support-fsgroup.html | `"File"` | | `csi.cephFSKernelMountOptions` | Set CephFS Kernel mount options to use https://docs.ceph.com/en/latest/man/8/mount.ceph/#options. Set to "ms_mode=secure" when connections.encrypted is enabled in CephCluster CR | `nil` | @@ -113,7 +113,7 @@ The following table lists the configurable parameters of the rook-operator chart | `csi.pluginPriorityClassName` | PriorityClassName to be set on csi driver plugin pods | `"system-node-critical"` | | `csi.pluginTolerations` | Array of tolerations in YAML format which will be added to CephCSI plugin DaemonSet | `nil` | | `csi.provisioner.repository` | Kubernetes CSI provisioner image repository | `"registry.k8s.io/sig-storage/csi-provisioner"` | -| `csi.provisioner.tag` | Provisioner image tag | `"v4.0.1"` | +| `csi.provisioner.tag` | Provisioner image tag | `"v5.0.1"` | | `csi.provisionerNodeAffinity` | The node labels for affinity of the CSI provisioner deployment [^1] | `nil` | | `csi.provisionerPriorityClassName` | PriorityClassName to be set on csi driver provisioner pods | `"system-cluster-critical"` | | `csi.provisionerReplicas` | Set replicas for csi provisioner deployment | `2` | @@ -125,16 +125,16 @@ The following table lists the configurable parameters of the rook-operator chart | `csi.rbdPluginUpdateStrategyMaxUnavailable` | A maxUnavailable parameter of CSI RBD plugin daemonset update strategy. | `1` | | `csi.rbdPodLabels` | Labels to add to the CSI RBD Deployments and DaemonSets Pods | `nil` | | `csi.registrar.repository` | Kubernetes CSI registrar image repository | `"registry.k8s.io/sig-storage/csi-node-driver-registrar"` | -| `csi.registrar.tag` | Registrar image tag | `"v2.10.1"` | +| `csi.registrar.tag` | Registrar image tag | `"v2.11.1"` | | `csi.resizer.repository` | Kubernetes CSI resizer image repository | `"registry.k8s.io/sig-storage/csi-resizer"` | -| `csi.resizer.tag` | Resizer image tag | `"v1.10.1"` | +| `csi.resizer.tag` | Resizer image tag | `"v1.11.1"` | | `csi.serviceMonitor.enabled` | Enable ServiceMonitor for Ceph CSI drivers | `false` | | `csi.serviceMonitor.interval` | Service monitor scrape interval | `"10s"` | | `csi.serviceMonitor.labels` | ServiceMonitor additional labels | `{}` | | `csi.serviceMonitor.namespace` | Use a different namespace for the ServiceMonitor | `nil` | | `csi.sidecarLogLevel` | Set logging level for Kubernetes-csi sidecar containers. Supported values from 0 to 5. 0 for general useful logs (the default), 5 for trace level verbosity. | `0` | | `csi.snapshotter.repository` | Kubernetes CSI snapshotter image repository | `"registry.k8s.io/sig-storage/csi-snapshotter"` | -| `csi.snapshotter.tag` | Snapshotter image tag | `"v7.0.2"` | +| `csi.snapshotter.tag` | Snapshotter image tag | `"v8.0.1"` | | `csi.topology.domainLabels` | domainLabels define which node labels to use as domains for CSI nodeplugins to advertise their domains | `nil` | | `csi.topology.enabled` | Enable topology based provisioning | `false` | | `currentNamespaceOnly` | Whether the operator should watch cluster CRD in its own namespace or not | `false` | diff --git a/Documentation/Storage-Configuration/Ceph-CSI/custom-images.md b/Documentation/Storage-Configuration/Ceph-CSI/custom-images.md index 795c4fbab..59c0575c5 100644 --- a/Documentation/Storage-Configuration/Ceph-CSI/custom-images.md +++ b/Documentation/Storage-Configuration/Ceph-CSI/custom-images.md @@ -19,11 +19,11 @@ The default upstream images are included below, which you can change to your des ```yaml ROOK_CSI_CEPH_IMAGE: "quay.io/cephcsi/cephcsi:v3.12.0" -ROOK_CSI_REGISTRAR_IMAGE: "registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.10.1" -ROOK_CSI_PROVISIONER_IMAGE: "registry.k8s.io/sig-storage/csi-provisioner:v4.0.1" -ROOK_CSI_ATTACHER_IMAGE: "registry.k8s.io/sig-storage/csi-attacher:v4.5.1" -ROOK_CSI_RESIZER_IMAGE: "registry.k8s.io/sig-storage/csi-resizer:v1.10.1" -ROOK_CSI_SNAPSHOTTER_IMAGE: "registry.k8s.io/sig-storage/csi-snapshotter:v7.0.2" +ROOK_CSI_REGISTRAR_IMAGE: "registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.11.1" +ROOK_CSI_PROVISIONER_IMAGE: "registry.k8s.io/sig-storage/csi-provisioner:v5.0.1" +ROOK_CSI_ATTACHER_IMAGE: "registry.k8s.io/sig-storage/csi-attacher:v4.6.1" +ROOK_CSI_RESIZER_IMAGE: "registry.k8s.io/sig-storage/csi-resizer:v1.11.1" +ROOK_CSI_SNAPSHOTTER_IMAGE: "registry.k8s.io/sig-storage/csi-snapshotter:v8.0.1" ROOK_CSIADDONS_IMAGE: "quay.io/csiaddons/k8s-sidecar:v0.9.0" ``` diff --git a/deploy/charts/rook-ceph/values.yaml b/deploy/charts/rook-ceph/values.yaml index f20417fa1..91ceae8be 100644 --- a/deploy/charts/rook-ceph/values.yaml +++ b/deploy/charts/rook-ceph/values.yaml @@ -493,31 +493,31 @@ csi: # -- Kubernetes CSI registrar image repository repository: registry.k8s.io/sig-storage/csi-node-driver-registrar # -- Registrar image tag - tag: v2.10.1 + tag: v2.11.1 provisioner: # -- Kubernetes CSI provisioner image repository repository: registry.k8s.io/sig-storage/csi-provisioner # -- Provisioner image tag - tag: v4.0.1 + tag: v5.0.1 snapshotter: # -- Kubernetes CSI snapshotter image repository repository: registry.k8s.io/sig-storage/csi-snapshotter # -- Snapshotter image tag - tag: v7.0.2 + tag: v8.0.1 attacher: # -- Kubernetes CSI Attacher image repository repository: registry.k8s.io/sig-storage/csi-attacher # -- Attacher image tag - tag: v4.5.1 + tag: v4.6.1 resizer: # -- Kubernetes CSI resizer image repository repository: registry.k8s.io/sig-storage/csi-resizer # -- Resizer image tag - tag: v1.10.1 + tag: v1.11.1 # -- Image pull policy imagePullPolicy: IfNotPresent diff --git a/deploy/examples/images.txt b/deploy/examples/images.txt index 4b6c4d7a1..f97230f2a 100644 --- a/deploy/examples/images.txt +++ b/deploy/examples/images.txt @@ -3,9 +3,9 @@ quay.io/ceph/cosi:v0.1.2 quay.io/cephcsi/cephcsi:v3.12.0 quay.io/csiaddons/k8s-sidecar:v0.9.0 - registry.k8s.io/sig-storage/csi-attacher:v4.5.1 - registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.10.1 - registry.k8s.io/sig-storage/csi-provisioner:v4.0.1 - registry.k8s.io/sig-storage/csi-resizer:v1.10.1 - registry.k8s.io/sig-storage/csi-snapshotter:v7.0.2 + registry.k8s.io/sig-storage/csi-attacher:v4.6.1 + registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.11.1 + registry.k8s.io/sig-storage/csi-provisioner:v5.0.1 + registry.k8s.io/sig-storage/csi-resizer:v1.11.1 + registry.k8s.io/sig-storage/csi-snapshotter:v8.0.1 rook/ceph:master diff --git a/deploy/examples/operator-openshift.yaml b/deploy/examples/operator-openshift.yaml index ec92ec1d9..d1aedbac9 100644 --- a/deploy/examples/operator-openshift.yaml +++ b/deploy/examples/operator-openshift.yaml @@ -198,11 +198,11 @@ data: # of the CSI driver to something other than what is officially supported, change # these images to the desired release of the CSI driver. # ROOK_CSI_CEPH_IMAGE: "quay.io/cephcsi/cephcsi:v3.12.0" - # ROOK_CSI_REGISTRAR_IMAGE: "registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.10.1" - # ROOK_CSI_RESIZER_IMAGE: "registry.k8s.io/sig-storage/csi-resizer:v1.10.1" - # ROOK_CSI_PROVISIONER_IMAGE: "registry.k8s.io/sig-storage/csi-provisioner:v4.0.1" - # ROOK_CSI_SNAPSHOTTER_IMAGE: "registry.k8s.io/sig-storage/csi-snapshotter:v7.0.2" - # ROOK_CSI_ATTACHER_IMAGE: "registry.k8s.io/sig-storage/csi-attacher:v4.5.1" + # ROOK_CSI_REGISTRAR_IMAGE: "registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.11.1" + # ROOK_CSI_RESIZER_IMAGE: "registry.k8s.io/sig-storage/csi-resizer:v1.11.1" + # ROOK_CSI_PROVISIONER_IMAGE: "registry.k8s.io/sig-storage/csi-provisioner:v5.0.1" + # ROOK_CSI_SNAPSHOTTER_IMAGE: "registry.k8s.io/sig-storage/csi-snapshotter:v8.0.1" + # ROOK_CSI_ATTACHER_IMAGE: "registry.k8s.io/sig-storage/csi-attacher:v4.6.1" # (Optional) set user created priorityclassName for csi plugin pods. CSI_PLUGIN_PRIORITY_CLASSNAME: "system-node-critical" diff --git a/deploy/examples/operator.yaml b/deploy/examples/operator.yaml index 86458948d..0527b057a 100644 --- a/deploy/examples/operator.yaml +++ b/deploy/examples/operator.yaml @@ -125,11 +125,11 @@ data: # of the CSI driver to something other than what is officially supported, change # these images to the desired release of the CSI driver. # ROOK_CSI_CEPH_IMAGE: "quay.io/cephcsi/cephcsi:v3.12.0" - # ROOK_CSI_REGISTRAR_IMAGE: "registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.10.1" - # ROOK_CSI_RESIZER_IMAGE: "registry.k8s.io/sig-storage/csi-resizer:v1.10.1" - # ROOK_CSI_PROVISIONER_IMAGE: "registry.k8s.io/sig-storage/csi-provisioner:v4.0.1" - # ROOK_CSI_SNAPSHOTTER_IMAGE: "registry.k8s.io/sig-storage/csi-snapshotter:v7.0.2" - # ROOK_CSI_ATTACHER_IMAGE: "registry.k8s.io/sig-storage/csi-attacher:v4.5.1" + # ROOK_CSI_REGISTRAR_IMAGE: "registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.11.1" + # ROOK_CSI_RESIZER_IMAGE: "registry.k8s.io/sig-storage/csi-resizer:v1.11.1" + # ROOK_CSI_PROVISIONER_IMAGE: "registry.k8s.io/sig-storage/csi-provisioner:v5.0.1" + # ROOK_CSI_SNAPSHOTTER_IMAGE: "registry.k8s.io/sig-storage/csi-snapshotter:v8.0.1" + # ROOK_CSI_ATTACHER_IMAGE: "registry.k8s.io/sig-storage/csi-attacher:v4.6.1" # To indicate the image pull policy to be applied to all the containers in the csi driver pods. # ROOK_CSI_IMAGE_PULL_POLICY: "IfNotPresent" diff --git a/pkg/operator/ceph/csi/spec.go b/pkg/operator/ceph/csi/spec.go index ff8ea2b3a..631b0446f 100644 --- a/pkg/operator/ceph/csi/spec.go +++ b/pkg/operator/ceph/csi/spec.go @@ -152,11 +152,11 @@ var ( var ( // image names DefaultCSIPluginImage = "quay.io/cephcsi/cephcsi:v3.12.0" - DefaultRegistrarImage = "registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.10.1" - DefaultProvisionerImage = "registry.k8s.io/sig-storage/csi-provisioner:v4.0.1" - DefaultAttacherImage = "registry.k8s.io/sig-storage/csi-attacher:v4.5.1" - DefaultSnapshotterImage = "registry.k8s.io/sig-storage/csi-snapshotter:v7.0.2" - DefaultResizerImage = "registry.k8s.io/sig-storage/csi-resizer:v1.10.1" + DefaultRegistrarImage = "registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.11.1" + DefaultProvisionerImage = "registry.k8s.io/sig-storage/csi-provisioner:v5.0.1" + DefaultAttacherImage = "registry.k8s.io/sig-storage/csi-attacher:v4.6.1" + DefaultSnapshotterImage = "registry.k8s.io/sig-storage/csi-snapshotter:v8.0.1" + DefaultResizerImage = "registry.k8s.io/sig-storage/csi-resizer:v1.11.1" DefaultCSIAddonsImage = "quay.io/csiaddons/k8s-sidecar:v0.9.0" // image pull policy diff --git a/tests/framework/utils/snapshot.go b/tests/framework/utils/snapshot.go index 68dd2023d..d0bb73ad7 100644 --- a/tests/framework/utils/snapshot.go +++ b/tests/framework/utils/snapshot.go @@ -27,7 +27,7 @@ import ( const ( // snapshotterVersion from which the snapshotcontroller and CRD will be // installed - snapshotterVersion = "v7.0.2" + snapshotterVersion = "v8.0.1" repoURL = "https://raw.githubusercontent.com/kubernetes-csi/external-snapshotter" rbacPath = "deploy/kubernetes/snapshot-controller/rbac-snapshot-controller.yaml" controllerPath = "deploy/kubernetes/snapshot-controller/setup-snapshot-controller.yaml" From 1efe3b6ee9d61758468b64c3732dec7bd301390a Mon Sep 17 00:00:00 2001 From: Praveen M Date: Mon, 5 Aug 2024 12:30:03 +0530 Subject: [PATCH 2/2] csi: add csinodes rbac rule for cephfs provisioner Signed-off-by: Praveen M --- deploy/charts/rook-ceph/templates/clusterrole.yaml | 6 +++--- deploy/examples/common.yaml | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/deploy/charts/rook-ceph/templates/clusterrole.yaml b/deploy/charts/rook-ceph/templates/clusterrole.yaml index fb1827699..6b5af7536 100644 --- a/deploy/charts/rook-ceph/templates/clusterrole.yaml +++ b/deploy/charts/rook-ceph/templates/clusterrole.yaml @@ -504,6 +504,9 @@ rules: - apiGroups: [""] resources: ["nodes"] verbs: ["get", "list", "watch"] + - apiGroups: ["storage.k8s.io"] + resources: ["csinodes"] + verbs: ["get", "list", "watch"] - apiGroups: [""] resources: ["persistentvolumes"] verbs: ["get", "list", "watch", "create", "update", "delete", "patch"] @@ -652,9 +655,6 @@ rules: - apiGroups: [""] resources: ["nodes"] verbs: ["get", "list", "watch"] - - apiGroups: ["storage.k8s.io"] - resources: ["csinodes"] - verbs: ["get", "list", "watch"] --- kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 diff --git a/deploy/examples/common.yaml b/deploy/examples/common.yaml index e1cdee195..fae242f78 100644 --- a/deploy/examples/common.yaml +++ b/deploy/examples/common.yaml @@ -46,6 +46,9 @@ rules: - apiGroups: [""] resources: ["nodes"] verbs: ["get", "list", "watch"] + - apiGroups: ["storage.k8s.io"] + resources: ["csinodes"] + verbs: ["get", "list", "watch"] - apiGroups: [""] resources: ["persistentvolumes"] verbs: ["get", "list", "watch", "create", "update", "delete", "patch"] @@ -213,9 +216,6 @@ rules: - apiGroups: [""] resources: ["nodes"] verbs: ["get", "list", "watch"] - - apiGroups: ["storage.k8s.io"] - resources: ["csinodes"] - verbs: ["get", "list", "watch"] --- # The cluster role for managing all the cluster-specific resources in a namespace apiVersion: rbac.authorization.k8s.io/v1