Skip to content

Slim image - #6310

Merged
mergify[bot] merged 3 commits into
ceph:develfrom
ismaelpuerto:slim-image
Jun 9, 2026
Merged

Slim image#6310
mergify[bot] merged 3 commits into
ceph:develfrom
ismaelpuerto:slim-image

Conversation

@ismaelpuerto

Copy link
Copy Markdown
Contributor

Describe what this PR does

Use a minimal base image (quay.io/centos/centos:stream9-minimal) for the final runtime stage of the cephcsi multi-stage Dockerfile, instead of the full Ceph daemon image (quay.io/ceph/ceph).

Is there anything that requires special attention

Do you have any questions?

Is the change backward compatible?

Are there concerns around backward compatibility?

Provide any external context for the change, if any.

For example:

  • Kubernetes links that explain why the change is required
  • CSI spec related changes/catch-up that necessitates this patch
  • golang related practices that necessitates this change

Related issues

Mention any github issues relevant to this PR. Adding below line
will help to auto close the issue once the PR is merged.

Fixes: #6289

Future concerns

List items that are not part of the PR and do not impact it's
functionality, but are work items that can be taken up subsequently.

Checklist:

  • Commit Message Formatting: Commit titles and messages follow
    guidelines in the developer
    guide
    .
  • Reviewed the developer guide on Submitting a Pull
    Request
  • Pending release
    notes

    updated with breaking and/or notable changes for the next major release.
  • Documentation has been updated, if necessary.
  • Unit tests have been added, if necessary.
  • Integration tests have been added, if necessary.

Show available bot commands

These commands are normally not required, but in case of issues, leave any of
the following bot commands in an otherwise empty comment in this PR:

  • /retest ci/centos/<job-name>: retest the <job-name> after unrelated
    failure (please report the failure too!)

@nixpanic nixpanic added the component/build Issues and PRs related to compiling Ceph-CSI label Jun 3, 2026
@nixpanic

nixpanic commented Jun 3, 2026

Copy link
Copy Markdown
Member

Thanks @ismaelpuerto! The changes look good, however there are quite a few changed lines that only modify indention. Could you modify the commit, and force push a cleaner version that only contains the required changes?

Comment thread deploy/cephcsi/image/Dockerfile Outdated
Comment thread deploy/cephcsi/image/Dockerfile Outdated
Comment on lines +12 to +14
&& dnf -y reinstall https://download.ceph.com/rpm-${CEPH_VERSION}/el9/noarch/ceph-release-1-1.el9.noarch.rpm \
&& ( dnf config-manager --disable tcmu-runner,tcmu-runner-source,tcmu-runner-noarch,ceph-iscsi,ganesha || true ) \
&& true

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we remove this as it was a workaround when we had ceph as a base image

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is still needed, as the ceph-release RPM provides the correct Ceph repository

Comment thread deploy/cephcsi/image/Dockerfile Outdated
&& dnf clean all \
&& rm -rf /var/cache/yum \
&& true
librados-devel librbd-devel libcephfs-devel \

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what version of the these packages will be installed. I have seen sometimes the packages might not been updated in centos images we should install specific version of the packages

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They are latest version from the ceph-release repository. This looks good to me.

We could "dnf update" the CentOS base image, but those containers are updated regularly already (the ceph base containers are not).

@nixpanic

nixpanic commented Jun 5, 2026

Copy link
Copy Markdown
Member

Thank you for the cleanup, @ismaelpuerto ! I've rebased this PR and squashed the commits into one, hope you don't mind.

nixpanic
nixpanic previously approved these changes Jun 5, 2026
@nixpanic
nixpanic requested review from a team and Madhu-1 June 5, 2026 07:04
@iPraveenParihar

Copy link
Copy Markdown
Contributor

/test ci/centos/mini-e2e/k8s-1.36/rbd

@iPraveenParihar

Copy link
Copy Markdown
Contributor

/test ci/centos/mini-e2e/k8s-1.36/cephfs

@nixpanic

nixpanic commented Jun 5, 2026

Copy link
Copy Markdown
Member

It seems the kmod package needs to be installed in the final image too. CI jobs fail with:

modprobe of kernel module "ceph" failed (an error (exec: "modprobe": executable file not found in $PATH)

@nixpanic

nixpanic commented Jun 5, 2026

Copy link
Copy Markdown
Member

/test ci/centos/mini-e2e/k8s-1.36/cephfs

@nixpanic

nixpanic commented Jun 5, 2026

Copy link
Copy Markdown
Member

Also included packages that provide the mount.nfs and nvme commands.

@nixpanic

nixpanic commented Jun 5, 2026

Copy link
Copy Markdown
Member

/test ci/centos/mini-e2e/k8s-1.36/cephfs

nixpanic
nixpanic previously approved these changes Jun 5, 2026
@nixpanic
nixpanic requested a review from a team June 5, 2026 14:23
@mergify
mergify Bot dismissed nixpanic’s stale review June 6, 2026 06:20

Pull request has been modified.

@ismaelpuerto

Copy link
Copy Markdown
Contributor Author

/test ci/centos/mini-e2e/k8s-1.36/cephfs

3 similar comments
@ismaelpuerto

Copy link
Copy Markdown
Contributor Author

/test ci/centos/mini-e2e/k8s-1.36/cephfs

@ismaelpuerto

Copy link
Copy Markdown
Contributor Author

/test ci/centos/mini-e2e/k8s-1.36/cephfs

@ismaelpuerto

Copy link
Copy Markdown
Contributor Author

/test ci/centos/mini-e2e/k8s-1.36/cephfs

@Madhu-1

Madhu-1 commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e/k8s-1.35

Madhu-1
Madhu-1 previously approved these changes Jun 8, 2026
@Madhu-1
Madhu-1 requested a review from nixpanic June 8, 2026 05:07
@ismaelpuerto

Copy link
Copy Markdown
Contributor Author

I think that we have all commands in the new image

@nixpanic

nixpanic commented Jun 8, 2026

Copy link
Copy Markdown
Member

/test ci/centos/mini-e2e/k8s-1.35

@nixpanic

nixpanic commented Jun 9, 2026

Copy link
Copy Markdown
Member

@Mergifyio rebase

ismaelpuerto and others added 3 commits June 9, 2026 06:49
Signed-off-by: Ismael Puerto <ipuertofreire@gmail.com>
The node-plugin already runs with high priviledges, otherwise it would
not be able to use cryptsetup while attaching/mounting volumes.

Signed-off-by: Niels de Vos <ndevos@ibm.com>
Signed-off-by: Ismael Puerto <ismaelpuerto@users.noreply.github.com>
@mergify

mergify Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Deprecation notice: This pull request comes from a fork and was rebased using bot_account impersonation. This capability will be removed on July 1, 2026. After this date, the rebase action will no longer be able to rebase fork pull requests with this configuration. Please switch to the update action/command to ensure compatibility going forward.

@mergify

mergify Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

rebase

✅ Branch has been successfully rebased

@nixpanic nixpanic added the ok-to-test Label to trigger E2E tests label Jun 9, 2026
@ceph-csi-bot

Copy link
Copy Markdown
Collaborator

/test ci/centos/upgrade-tests-cephfs

@ceph-csi-bot

Copy link
Copy Markdown
Collaborator

/test ci/centos/upgrade-tests-rbd

@ceph-csi-bot

Copy link
Copy Markdown
Collaborator

/test ci/centos/k8s-e2e-external-storage/1.35

@ceph-csi-bot

Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e-helm/k8s-1.35

@ceph-csi-bot

Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e/k8s-1.35

@ceph-csi-bot

Copy link
Copy Markdown
Collaborator

/test ci/centos/k8s-e2e-external-storage/1.36

@ceph-csi-bot

Copy link
Copy Markdown
Collaborator

/test ci/centos/k8s-e2e-external-storage/1.34

@ceph-csi-bot

Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e-helm/k8s-1.36

@ceph-csi-bot

Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e-helm/k8s-1.34

@ceph-csi-bot

Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e/k8s-1.36

@ceph-csi-bot

Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e/k8s-1.34

@ceph-csi-bot ceph-csi-bot added ci/in-progress/e2e This label acts like a guard and prevents Mergify from adding the `ok-to-test` label again. and removed ok-to-test Label to trigger E2E tests labels Jun 9, 2026
@mergify mergify Bot removed the ci/in-progress/e2e This label acts like a guard and prevents Mergify from adding the `ok-to-test` label again. label Jun 9, 2026
@nixpanic

nixpanic commented Jun 9, 2026

Copy link
Copy Markdown
Member

/retest ci/centos/mini-e2e-helm/k8s-1.36

@nixpanic

nixpanic commented Jun 9, 2026

Copy link
Copy Markdown
Member

/retest ci/centos/mini-e2e-helm/k8s-1.36

NodeStageVolume took more than 2 minutes to complete. A 2nd try of the same NodeStageVolume got stuck, and Kubernetes was blocked on that. The 2nd NodeStageVolume should have succeeded too, not sure why it did not.

  I0609 07:41:17.896371   22156 utils.go:361] ID: 169 Req-ID: 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e GRPC call: /csi.v1.Node/NodeStageVolume
  I0609 07:41:17.896439   22156 utils.go:362] ID: 169 Req-ID: 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/cephfs.csi.ceph.com/bd4d3b1c8d58c72782b20356c043e1737d6d8c7afb6d83a93a925b6a3148a8c7/globalmount","volume_capability":{"access_mode":{"mode":"MULTI_NODE_MULTI_WRITER"},"mount":{}},"volume_context":{"clusterID":"84dd79b6-2920-455e-ac3c-e0c77b2b0167","fsName":"myfs","fuseMountOptions":"debug","mounter":"fuse","pool":"myfs-replicated","storage.kubernetes.io/csiProvisionerIdentity":"1780990584366-2322-cephfs.csi.ceph.com","subvolumeName":"csi-vol-9270f918-9945-4518-abb5-a252a477de6e","subvolumePath":"/volumes/e2e/csi-vol-9270f918-9945-4518-abb5-a252a477de6e/0c8b43f6-0f28-4d43-9dc5-3a606f289356"},"volume_id":"0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e"}
  I0609 07:41:17.899191   22156 omap.go:89] ID: 169 Req-ID: 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e got omap values: (pool="myfs-metadata", namespace="csi", name="csi.volume.9270f918-9945-4518-abb5-a252a477de6e"): map[csi.imagename:csi-vol-9270f918-9945-4518-abb5-a252a477de6e csi.volname:pvc-50e9b9ba-8782-429c-b6de-98a6751fec5e csi.volume.owner:cephfs-9657]
  I0609 07:41:17.924182   22156 nodeserver.go:399] ID: 169 Req-ID: 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e userID mapping metadata .cephfs.csi.ceph.com/userid/0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e/minikube set for subvolume csi-vol-9270f918-9945-4518-abb5-a252a477de6e
  I0609 07:41:17.936472   22156 nodeserver.go:465] ID: 169 Req-ID: 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e client address 10.244.0.1:0/4071619416 set in metadata .cephfs.csi.ceph.com/clientaddress/0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e/minikube for subvolume csi-vol-9270f918-9945-4518-abb5-a252a477de6e
  I0609 07:41:17.936550   22156 nodeserver.go:501] ID: 169 Req-ID: 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e cephfs: mounting volume 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e with Ceph FUSE driver
  I0609 07:41:17.936662   22156 crushlocation.go:41] CRUSH location labels passed for processing: [topology.kubernetes.io/region topology.kubernetes.io/zone]
  I0609 07:41:17.936687   22156 crushlocation.go:73] list of CRUSH location processed: map[region:east zone:east-zone1]
  I0609 07:41:59.443167   22156 utils.go:361] ID: 170 GRPC call: /csi.v1.Identity/Probe
  I0609 07:41:59.443208   22156 utils.go:362] ID: 170 GRPC request: {}
  I0609 07:41:59.443248   22156 utils.go:368] ID: 170 GRPC response: {}
  I0609 07:42:59.422075   22156 utils.go:361] ID: 171 GRPC call: /csi.v1.Identity/Probe
  I0609 07:42:59.422106   22156 utils.go:362] ID: 171 GRPC request: {}
  I0609 07:42:59.422133   22156 utils.go:368] ID: 171 GRPC response: {}
  I0609 07:43:18.422589   22156 utils.go:361] ID: 172 GRPC call: /csi.v1.Node/NodeGetCapabilities
  I0609 07:43:18.422622   22156 utils.go:362] ID: 172 GRPC request: {}
  I0609 07:43:18.422684   22156 utils.go:368] ID: 172 GRPC response: {"capabilities":[{"rpc":{"type":"STAGE_UNSTAGE_VOLUME"}},{"rpc":{"type":"GET_VOLUME_STATS"}},{"rpc":{"type":"VOLUME_CONDITION"}},{"rpc":{"type":"SINGLE_NODE_MULTI_WRITER"}}]}
  I0609 07:43:18.427245   22156 utils.go:361] ID: 173 GRPC call: /csi.v1.Node/NodeGetCapabilities
  I0609 07:43:18.427264   22156 utils.go:362] ID: 173 GRPC request: {}
  I0609 07:43:18.427306   22156 utils.go:368] ID: 173 GRPC response: {"capabilities":[{"rpc":{"type":"STAGE_UNSTAGE_VOLUME"}},{"rpc":{"type":"GET_VOLUME_STATS"}},{"rpc":{"type":"VOLUME_CONDITION"}},{"rpc":{"type":"SINGLE_NODE_MULTI_WRITER"}}]}
  I0609 07:43:18.427306   22156 cephcmds.go:112] ID: 169 Req-ID: 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e command succeeded: ceph-fuse [/var/lib/kubelet/plugins/kubernetes.io/csi/cephfs.csi.ceph.com/bd4d3b1c8d58c72782b20356c043e1737d6d8c7afb6d83a93a925b6a3148a8c7/globalmount -m rook-ceph-mon-a.rook-ceph.svc.cluster.local:6789 -c /etc/ceph/ceph.conf -n client.cephcsi-cephfs-node --keyfile=***stripped*** -r /volumes/e2e/csi-vol-9270f918-9945-4518-abb5-a252a477de6e/0c8b43f6-0f28-4d43-9dc5-3a606f289356 -o debug --client_mds_namespace=myfs]
  I0609 07:43:18.427367   22156 nodeserver.go:322] ID: 169 Req-ID: 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e cephfs: successfully mounted volume 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e to /var/lib/kubelet/plugins/kubernetes.io/csi/cephfs.csi.ceph.com/bd4d3b1c8d58c72782b20356c043e1737d6d8c7afb6d83a93a925b6a3148a8c7/globalmount
  I0609 07:43:18.427587   22156 utils.go:368] ID: 169 Req-ID: 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e GRPC response: {}
  I0609 07:43:18.428475   22156 utils.go:361] ID: 174 GRPC call: /csi.v1.Node/NodeGetCapabilities
  I0609 07:43:18.428496   22156 utils.go:362] ID: 174 GRPC request: {}
  I0609 07:43:18.428552   22156 utils.go:368] ID: 174 GRPC response: {"capabilities":[{"rpc":{"type":"STAGE_UNSTAGE_VOLUME"}},{"rpc":{"type":"GET_VOLUME_STATS"}},{"rpc":{"type":"VOLUME_CONDITION"}},{"rpc":{"type":"SINGLE_NODE_MULTI_WRITER"}}]}
  I0609 07:43:18.429586   22156 utils.go:361] ID: 175 Req-ID: 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e GRPC call: /csi.v1.Node/NodeStageVolume
  I0609 07:43:18.429650   22156 utils.go:362] ID: 175 Req-ID: 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/cephfs.csi.ceph.com/bd4d3b1c8d58c72782b20356c043e1737d6d8c7afb6d83a93a925b6a3148a8c7/globalmount","volume_capability":{"access_mode":{"mode":"MULTI_NODE_MULTI_WRITER"},"mount":{}},"volume_context":{"clusterID":"84dd79b6-2920-455e-ac3c-e0c77b2b0167","fsName":"myfs","fuseMountOptions":"debug","mounter":"fuse","pool":"myfs-replicated","storage.kubernetes.io/csiProvisionerIdentity":"1780990584366-2322-cephfs.csi.ceph.com","subvolumeName":"csi-vol-9270f918-9945-4518-abb5-a252a477de6e","subvolumePath":"/volumes/e2e/csi-vol-9270f918-9945-4518-abb5-a252a477de6e/0c8b43f6-0f28-4d43-9dc5-3a606f289356"},"volume_id":"0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e"}
  I0609 07:43:59.452763   22156 utils.go:361] ID: 176 GRPC call: /csi.v1.Identity/Probe
  I0609 07:43:59.452828   22156 utils.go:362] ID: 176 GRPC request: {}
  I0609 07:43:59.452856   22156 utils.go:368] ID: 176 GRPC response: {}
  I0609 07:44:59.422013   22156 utils.go:361] ID: 177 GRPC call: /csi.v1.Identity/Probe
  I0609 07:44:59.422047   22156 utils.go:362] ID: 177 GRPC request: {}
  I0609 07:44:59.422073   22156 utils.go:368] ID: 177 GRPC response: {}
  I0609 07:45:19.524570   22156 utils.go:361] ID: 178 GRPC call: /csi.v1.Node/NodeGetCapabilities
  I0609 07:45:19.524600   22156 utils.go:362] ID: 178 GRPC request: {}
  I0609 07:45:19.524667   22156 utils.go:368] ID: 178 GRPC response: {"capabilities":[{"rpc":{"type":"STAGE_UNSTAGE_VOLUME"}},{"rpc":{"type":"GET_VOLUME_STATS"}},{"rpc":{"type":"VOLUME_CONDITION"}},{"rpc":{"type":"SINGLE_NODE_MULTI_WRITER"}}]}
  I0609 07:45:48.450857   22156 utils.go:394] ID: 175 Req-ID: 0001-0024-84dd79b6-2920-455e-ac3c-e0c77b2b0167-0000000000000001-9270f918-9945-4518-abb5-a252a477de6e Slow GRPC call /csi.v1.Node/NodeStageVolume (2m29s)

https://jenkins-ceph-csi.apps.ocp.cloud.ci.centos.org/blue/organizations/jenkins/mini-e2e-helm_k8s-1.36/detail/mini-e2e-helm_k8s-1.36/7/pipeline

@mergify

mergify Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Deprecation notice: This pull request comes from a fork and was queued with update_method=rebase and update_bot_account impersonation. This capability will be removed on July 1, 2026. After this date, the merge queue will no longer be able to rebase fork pull requests with this configuration. To avoid disruption, switch to update_method=merge in your queue rule.

@mergify

mergify Bot commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Merge Queue Status

  • Entered queue2026-06-09 11:27 UTC · Rule: default
  • Checks skipped · PR is already up-to-date
  • Merged2026-06-09 11:27 UTC · at 2d841886e269d2dcb2fa6b5c8f2c187a26e7886b · rebase

This pull request spent 23 seconds in the queue, including 4 seconds running CI.

Required conditions to merge

@mergify
mergify Bot merged commit d137010 into ceph:devel Jun 9, 2026
41 of 42 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

component/build Issues and PRs related to compiling Ceph-CSI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Reduce cephcsi container image size by using a minimal final base image

6 participants