Skip to content

Releases: ceph/ceph-csi

v3.11.0

02 Apr 14:52
Compare
Choose a tag to compare

3.11.0 release notes

We are excited to announce another release of Ceph CSI, v3.11.0. This is another significant step towards using enhanced Container Storage Interface (CSI) features with Ceph Cluster in the backend. With this release, we are introducing many brand-new features and enhancements to the Ceph CSI driver. Here are the changelog/release highlights.

Changelog and Highlights:

Features

RBD

CephFS

Enhancements

  • rebase: all the dependencies have been updated to latest available release.
  • rbd: log sitestatuses and description by @yati1998 in #4431
  • rbd: make pool optional in rbd sc if topologyconstraints are present by @parth-gr in #4459
  • rbd: free snapshot resources after allocation by @nixpanic in #4514
  • added permission to get nodes for rbd by @nemcikjan in #4302
  • cleanup: simplify rbdGetDeviceList() by @nixpanic in #4364
  • cephfs: make fsName as optional for static PVC by @Madhu-1 in #4372
  • cephfs: do not run modprobe if support is compiled into the kernel by @nixpanic in #4378
  • kms: refactor functions to accept a context parameter by @iPraveenParihar in #4477
  • util: Add helper functions for GroupController by @Madhu-1 in #4417
  • util: log repication RequestID by @Madhu-1 in #4429
  • deploy: use release repository for csi-resizer by @sebhoss in #4319
  • deploy: added json field tags for csi config map by @iPraveenParihar in #4329
  • helm: align seLinuxMount option w/ deploy folder by @sebhoss in #4346
  • deploy: update csi sidecars to latest versions by @riya-singhal31 in #4352
  • deploy: update CSI sidecars to latest versions available by @iPraveenParihar in #4420
  • deploy: make the csi-*plugin containers the default for kubectl commands by @nixpanic in #4434
  • cleanup: simplify rbdGetDeviceList() by @nixpanic in #4364
  • cleanup: use real version for k8s.io/pod-security-admission instead of v0.0.0 by @nixpanic in #4483
  • cleanup: don't return an internal type from VolumeGroupJournal.Connect() by @nixpanic in #4491
  • cleanup: correct typo in NewCSIVolumeroupJournal() function by @nixpanic in #4495
  • cleanup: do not pass EncodingVersion to GenerateVolID() by @nixpanic in #4498
  • cleanup: use standard Golang "slices" instead of k8s package by @nixpanic in #4521
  • api: add CSIProvisionerRBAC functions for the NFS-provisioner by @nixpanic in #4395
  • build: use Go 1.21.5 by @nixpanic in #4332

Bug Fixes

  • deploy: use release repository for csi-resizer by @sebhoss in #4319

E2E

CI

Documentation

New Contributors

Full Changelog: v3.10.2...v3.11.0

Thanks to the fantastic Ceph CSI community for this great release πŸ‘ πŸŽ‰

Ceph-CSI v3.10.2 Release

09 Feb 07:06
Compare
Choose a tag to compare

What's Changed

  • helm: align seLinuxMount option w/ deploy folder (backport #4346) by @mergify in #4358
  • cephfs: do not run modprobe if support is compiled into the kernel (backport #4378) by @mergify in #4381
  • cephfs: make fsName as optional for static PVC (backport #4372) by @mergify in #4409

Full Changelog: v3.10.1...v3.10.2

Ceph-CSI v3.10.1 Release

19 Dec 17:53
Compare
Choose a tag to compare

What's Changed

Full Changelog: v3.10.0...v3.10.1

Ceph-CSI v3.10.0 Release

05 Dec 10:31
Compare
Choose a tag to compare

3.10.0 release notes

We are excited to announce another feature-packed release of Ceph CSI, v3.10.0. This is another significant step towards using enhanced Container Storage Interface (CSI) features with Ceph Cluster in the backend. With this release, we are introducing many brand-new features and enhancements to the Ceph CSI driver. Here are the changelog/release highlights.

Changelog and Highlights:

Features

RBD

CephFS

NFS

  • nfs: add support for clients in the StorageClass by @spuiuk in #3895

Breaking Changes

  • Removed the deprecated grpc metrics flag's in #4225
  • Support for pre-creation of cephFS subvolumegroup before creating subvolume
    is removed in #4195. Users will need to create the specified(or default csi) subvolumegroup before provisioning CephFS PVC on a new ceph. Refer to deploy-cephfs.md for more details.

Note:

  • Support is limited to only the active Ceph releases. Support for EOLed Ceph
    releases are removed in #4262

Enhancements

Bug Fixes

E2E

CI

Documentation

New Contributors ( Thanks !! πŸ‘ )

Full Changelog: v3.9.0...v3.10.0

Thanks to the fantastic Ceph CSI community for this great release πŸ‘ πŸŽ‰

Ceph-CSI v3.8.1 Release

24 Jul 09:36
Compare
Choose a tag to compare

Changelog and Highlights:

Bug Fixes

  • Do not execute rbd sparsify when volume is in use #3985
  • Fix invalid "invalid encryption kms configuration" error #3854
  • Limit cryptsetup PBKDF memory usage #3781

CI

  • Install Helm with script located on GitHub #3843
  • Disable ceph-iscsi repository #3959
  • Disable ceph-iscsi repository for test-container builds too #3965
  • Fix codespell and shell check failures #3762
  • Update github actions for k8s 1.27 #3745

Vendor Updates

  • Update golang to 1.19.8 #3768
  • Update minikube to 1.30 #3734
  • Bump github.com/hashicorp/vault from 1.4.2 to 1.9.9 #3712

Documentation

  • Use the Ceph Slack instance and not our silo'ed own one #3782

Full Changelog: v3.8.0...v3.8.1

Ceph-CSI v3.9.0 Release

28 Jun 13:33
Compare
Choose a tag to compare

We are excited to announce another feature-packed release of Ceph CSI, v3.9.0. This is another significant step towards using enhanced Container Storage Interface (CSI) features with Ceph Cluster in the backend. With this release, we are introducing many brand-new features and enhancements to the Ceph CSI driver. Here are the changelog/release highlights.

Changelog and Highlights:

Features

RBD

CephFS

  • Honor MountOptions during NodeStageVolume request and add support for efficient selinux relabelling support by @Rakshith-R in #3902
  • Add cephFS/CSIDriver and cephFS/csi-config-map to API by @riya-singhal31 in #3837

NFS

  • Add support for secTypes parameters in StorageClass by @nixpanic in #3434
  • Add support for efficient selinux relabelling support by @Rakshith-R in #3902

Breaking Changes

  • #3902 introduced a breaking change in CephFS driver. Please follow the steps mentioned in the upgrade guide to ensure a smooth upgrade.
  • Volumereplication service running on the controller server is now completely removed and replaced by CSI-Addons. See #3314 for more details

Enhancements

Bug Fixes

E2E

CI

  • Install Helm with a script located on GitHub by @nixpanic in #3843
  • Many Mergify enhancements for better CI resource utilization #3672 #3797
  • Added gha-mergify-merge-queue-labels-copier action to better handle merge queue prs #3809
  • Use the "ceph-csi-bot" account for commenting on PRs by @nixpanic in #3877
  • Prevent Retest Workflow from running on forked repos by @nixpanic in #3883
  • Do not add ok-to-test if CentOS jobs were successful by @nixpanic in #3688
  • Run ci tests on latest k8s versions v1.25, v1.26 and v1.27

New Contributors ( Thanks !! πŸ‘ )

Full Changelog: v3.8.0...v3.9.0

Thanks to the fantastic Ceph CSI community for this great release πŸ‘ πŸŽ‰

Ceph-CSI v3.8.0 Release

22 Feb 13:59
Compare
Choose a tag to compare

We are excited to announce another feature-packed release of Ceph CSI, v3.8.0. This is another significant step towards using enhanced Container Storage Interface ( CSI) features with Ceph Cluster in the backend. With this release, we are introducing many brand-new features and enhancements to the Ceph CSI driver. Also, this release enabled smooth integration into various projects. Here are the changelog/release highlights.

Changelog and Highlights:

Features

RBD

  • fscrypt support #3310
    • Add fscrypt integration with the Ceph CSI KMS. Supports ext4 on RBD. Snapshots are supported as well.
    • Brief docs for fscrypt support #3571
  • Provide new command line configuration to enable read affinity #3639

CephFS

  • Shallow volumes for the ROX accessModes by default #3651
    • Shallow volumes as default for cephfs ROX clones/restore for better performance.
  • Add fscrypt support for volumes, snapshots, and clones #3460
    • There are dependencies with kernel and ceph

Enhancements

  • Update kubernetes dependencies to 1.26.1 #3638
  • Update go-ceph to 0.20.0 #3678
  • Update packages in release image #3635
  • Add basic upgrade documentation for Helm Charts #3655
  • Update rook installation to default latest version #3610
  • Add extraArgs for sidecars #3560
  • csidriver added to helper scripts #3573
  • Lift the minimum supported version of ceph to v15.0.0 #3513
  • Update csi spec to v1.7.0 #3503
  • Add commonLabels value to helm charts #3438

Bug Fixes

  • Make inode metrics optional in FilesystemNodeGetVolumeStats for CephFS #3407
  • Discover if StagingTargetPath in NodeExpandVolume exists #3624
  • Set disableInUseChecks on rbd volume #3605
  • Skip expanding for BackingSnapshot volume #3586
  • Fix CVEs in image #3526
  • Ignore stderr for ceph osd blocklist when there is no error #3524
  • Check volume details from original volumeID #2931
  • Setup encryption if rbdVol exits during CreateVol #3422
  • Return error if last sync time is not present #3489
  • Return abnormal if the mount is corrupted #3462
  • Fix namespace name update in metadata and rados object #3477
  • Remove dummy image workaround #3413
  • Get description from remote status #3392
  • Fix mdl configuration #3447
  • ParseAcceptLanguage takes a long time to parse complex tags #3439

E2E

  • Run E2E tests with kubernetes v1.26 release
  • Many tests are added to make sure we stay with backward compatibility for existing features of v3.7
  • New tests are added for features introduced in this release
  • Lots of cleanup and deprecated API removals were done on the test framework

CI

  • Update golang to 1.19.5 #3640
  • Many Mergify enhancements for better CI resource utilization #3672 #3671 #3684 #3681
  • Add GitHub action to trigger E2E #3468

Breaking Changes

  • Removal of option to run cephcsi as both controller and node server.

New Contributors ( Thanks !! πŸ‘ )

Full Changelog: v3.7.2...v3.8.0

Thanks to the awesome Ceph CSI community for this great release πŸ‘ πŸŽ‰

Ceph-CSI v3.7.2 Release

20 Oct 07:21
Compare
Choose a tag to compare

Changelog or Highlights:

Bug Fixes:

CephFS

  • Delete subvolume if SetAllMetadata fails #3435
  • Allow subvolume creation if ceph cluster doesnt support metadata API #3423

RBD

  • Fix volume leak if metadata operation fails #3436

Vendor Update

  • Rebase: golang.org/x/text/language to v0.3.8 to fix a vulnerability #3439

CI improvements

  • Create kubernetes cluster with podman driver #3420

Breaking Changes

None.

Ceph-CSI v3.7.1 Release

16 Sep 14:13
Compare
Choose a tag to compare

Bug Fixes:

  • rbd: fix bug in kmip kms Decrypt function & improve error msg #3341
  • rbd: modify stripSecret mechanism in logGRPC() #3350
  • cephfs: return success if metadata operation not supported #3352
  • rbd: change default FsGroupPolicy to "File" for RBD CSI driver #3364
  • rbd: map only primary image #3373
  • ci: use resync to sync helm charts #3374
  • cephfs: Fix subvolumegroup creation #3376
  • rbd: create token and use it for vault SA everytime possible #3378
  • rbd: use blocklist range cmd, fallback if it fails #3386

NOTE

Helm upgrade may fail with message:

UPGRADE FAILED: cannot patch "rbd.csi.ceph.com" with kind CSIDriver: CSIDriver.storage.k8s.io "rbd.csi.ceph.com" is invalid: spec.fsGroupPolicy: Invalid value: "File": field is immutable"
 FAILED! => {"changed": false, "command": "/usr/sbin/helm --version=v3.7.1 upgrade -i --reset-values --create-namespace -f=/tmp/tmp2sr2me9a.yml ceph-csi ceph-csi/ceph-csi-rbd", "msg": "Failure when executing Helm command. Exited 1.\nstdout: \nstderr: Error: UPGRADE FAILED: cannot patch \"rbd.csi.ceph.com\" with kind CSIDriver: CSIDriver.storage.k8s.io \"rbd.csi.ceph.com\" is invalid: spec.fsGroupPolicy: Invalid value: \"File\": field is immutable\n", "stderr": "Error: UPGRADE FAILED: cannot patch \"rbd.csi.ceph.com\" with kind CSIDriver: CSIDriver.storage.k8s.io \"rbd.csi.ceph.com\" is invalid: spec.fsGroupPolicy: Invalid value: \"File\": field is immutable\n", "stderr_lines": ["Error: UPGRADE FAILED: cannot patch \"rbd.csi.ceph.com\" with kind CSIDriver: CSIDriver.storage.k8s.io \"rbd.csi.ceph.com\" is invalid: spec.fsGroupPolicy: Invalid value: \"File\": field is immutable"], "stdout": "", "stdout_lines": []}

If so, delete the csidriver object

kubectl delete csidriver rbd.csi.ceph.com

Then do helm upgrade

Ceph-CSI v3.7.0 Release

19 Aug 14:09
Compare
Choose a tag to compare

We are excited to announce another feature packed release of Ceph CSI , v3.7.0. This is another great step towards making it possible to use enhanced features of Container Storage Interface ( CSI) with Ceph Cluster in the backend. With this release, we are introducing many brand new features and enhancements to Ceph CSI driver. Also this release enabled a smooth integration to various projects. Here are the changelog / release highlights..

Changelog and Highlights:

Features

  • KMIP integration for RBD PVC encryption
    • The Key Management Interoperability Protocol (KMIP)
      is an extensible communication protocol
      that defines message formats for the manipulation
      of cryptographic keys on a key management server.
      Ceph-CSI can now be configured to connect to
      various KMS using KMIP for encrypting RBD volumes.
  • NFS
    • Added support for volume expansion, snapshot, restore and clone.
    • Added NFS nodeserver within CephCSI with support for pod networking with nsenter.
  • Support enabling PV and snapshot metadata on the RBD images and CephFS subvolumes
    • For persistent volumes, clones and volume restores we support adding PVName/PVCName/PVCNamespace and ClusterName details
    • For snapshot volumes we support adding snapshot-name/snapshot-namespace/snapshotcontent-name and ClusterName details
  • Shallow Read Only support for Ceph CSI driver:

Enhancements

  • All kubernetes sidecars ( external provisioner,snapshotter, resizer..etc) are rebased to latest available versions. Along with other dependency module updates this release consume go-ceph v0.17.0 and kubernetes 1.24.4 version.
  • snapshot API support has been lifted to GA version in this release.
  • From this release onwards, the CSI driver make use of File fsgroup policy for its fsgroup based operations.
  • New feature gates are enabled ( HonorPVReclaimPolicy..etc) in the sidecar deployments.

Bug Fixes

  • While mounting the volume, CSI drivers no longer open world wide permission on mount path ( See ).
  • Support linux kernels <=4.11.0, /sys/bus/rbd/supported_features is part of Linux kernel v4.11.0, prepare the supported feature attributes and use them in case if supported_features file is missing (See #2678)
  • Fix volume healer for StagingTargetPath issue for Kubernetes 1.24 (See #3176)
  • RBACs are restricted to a great extend in this release version compared to previous. The CSI driver operate on least required RBAC in a cluster from now on.

E2E

  • many tests are added for making sure we stay with backward compatibility for existing features of v3.6.
  • new tests are added for features introduced in this release
  • lots of cleanup and deprecated API removals done on the test framework
  • Dropped support for kubernetes v<=1.22 tests in the framework

Deprecation

  • Volumereplication service running on controller server is deprecated and replaced by CSI-Addons, see #3314 for more details
  • cephfs provisioner will not make use of attacher sidecar from this release onwards. See #3149 for more details

Breaking Changes

  • NFS daemonset is renamed from csi-nfs-node to csi-nfsplugin, refer to upgrade steps for more details.

NOTE

Helm upgrade may fail with message:

UPGRADE FAILED: cannot patch "rbd.csi.ceph.com" with kind CSIDriver: CSIDriver.storage.k8s.io "rbd.csi.ceph.com" is invalid: spec.fsGroupPolicy: Invalid value: "File": field is immutable"
 FAILED! => {"changed": false, "command": "/usr/sbin/helm --version=v3.7.0 upgrade -i --reset-values --create-namespace -f=/tmp/tmp2sr2me9a.yml ceph-csi ceph-csi/ceph-csi-rbd", "msg": "Failure when executing Helm command. Exited 1.\nstdout: \nstderr: Error: UPGRADE FAILED: cannot patch \"rbd.csi.ceph.com\" with kind CSIDriver: CSIDriver.storage.k8s.io \"rbd.csi.ceph.com\" is invalid: spec.fsGroupPolicy: Invalid value: \"File\": field is immutable\n", "stderr": "Error: UPGRADE FAILED: cannot patch \"rbd.csi.ceph.com\" with kind CSIDriver: CSIDriver.storage.k8s.io \"rbd.csi.ceph.com\" is invalid: spec.fsGroupPolicy: Invalid value: \"File\": field is immutable\n", "stderr_lines": ["Error: UPGRADE FAILED: cannot patch \"rbd.csi.ceph.com\" with kind CSIDriver: CSIDriver.storage.k8s.io \"rbd.csi.ceph.com\" is invalid: spec.fsGroupPolicy: Invalid value: \"File\": field is immutable"], "stdout": "", "stdout_lines": []}

If so, delete the csidriver object

kubectl delete csidriver rbd.csi.ceph.com

Then do helm upgrade

Release Image : docker pull quay.io/cephcsi/cephcsi:v3.7.0

New Contributors ( Thanks !! πŸ‘ )

Full Changelog: v3.6.2...v3.7.0

Thanks to awesome Ceph CSI community for this great release πŸ‘ πŸŽ‰