github openebs/openebs v2.11.0

latest releases: v3.2.0, v3.1.0, v3.0.0...
11 months ago

Release Summary

OpenEBS v2.11 is another maintenance release before moving towards 3.0 primarily focusing on enhancing the E2E tests, build, release workflows, and documentation. This release also includes enhancements to improve the user experience and fixes for bugs reported by users and E2E tools. There has been some significant progress made on the alpha features as well.


Deprecation Notice: Jiva and cStor out-of-tree external provisioners will be deprecated by Dec 2021 in favor of the corresponding CSI Drivers. The out of tree provisioners for Jiva and cStor will stop working from Kubernetes 1.22 and forward as the version of the custom resources used by those provisioners will be deprecated. We strongly recommend you plan for migrating your volumes to cStor CSI or Jiva CSI as early as possible.

If you have any questions or need help with the migration please reach out to us on our Kubernetes Community slack channel #openebs.


Key Improvements

  • Enhanced CLI to provide additional information about OpenEBS storage components like:
    • Block devices managed by OpenEBS (kubectl openebs get bd)
    • Jiva Volumes
    • LVM Local PV Volumes
    • ZFS Local PV Volumes
  • Added a new Stateful workload dashboard to Monitoring helm chart to display the CPU, RAM and Filesystem stats of a given Pod. This dashboard currently supports fetching details for LVM Local PV. In addition new alert rules related to PVC status are supported.
  • Enhanced LVM Local PV snapshot support by allowing users to configure the size that should be reserved for LVM snapshots. By default, the size reserved for a snapshot is equal to the size of the volume. In cases, where snapshots are created for backup purposes, the snapshots may not require the entire space. This feature helps in creating snapshots on VGs that don't have enough space to reserve full capacity for snapshots.
  • Enhanced the way custom topology keys can be specified for LVM Local PV. Prior to this enhancement, LVM driver would load the topology keys from node labels and cache them and if someone modified the labels and missed to restart the driver pods, there could be an impact to volume scheduling. This enhancement requires users to specify the topology key via ENV allowing users to know the current key and if there is a change, requires for a ENV modification that will force a restart of all the drivers.
  • NFS Provisioner has been updated with several new features like:
    • Ability to configure the LeaseTime and GraceTime for the NFS server to tune the restart times
    • Added a prometheus metrics end point to report volume creation and failure events
    • Added a configuration option to allow users to specify the GUID to set on the NFS server to allow non-root applications to access NFS share
    • Allow specifying a different namespace than provisioner namespace to create NFS volume related objects
    • Allow specifying the node affinity for NFS server deployment
  • Rawfile Local PV has been enhanced to support xfs filesystem.
  • Enhanced Jiva and cStor CSI drivers to handle split brain condition that could cause the Kubelet to attach the volume on new node while still mounted on disconnected node. The CSI drivers have been enhanced to allow iSCSI login connection only from one node at any given time.

Key Bug Fixes

  • Fixed an issue in Jiva Volume Replica STS keeps crashing due to change in the cluster domain and failed attempts to access the controller.
  • Fixed an issue in Jiva Volume that was causing log flooding while fetching volume status using Service DNS. Switched to using controller IP.
  • Fixed an issue in ZFS Local Volumes that was causing an intermittent crash of controller pod due erroneously accessing a variable.
  • Fixed an issue in Device Local PV causing a crash due to a race condition between creating partition and clearing a partition.
  • Several usability fixes to documentation and helm charts for various engines.

Backward Incompatibilities

  • Kubernetes 1.18 or higher release is recommended as this release uses features of Kubernetes that will not be compatible with older Kubernetes releases.
  • Kubernetes 1.19.12 or higher is recommended for using Rawfile Local PV.
  • OpenEBS has deprecated arch-specific container images in favor of multi-arch container images. For example, images like cstor-pool-arm64:x.y.x should be replaced with corresponding multi-arch image cstor-pool:x.y.x.

Component versions

OpenEBS is a collection of data engines and operators to create different types of replicated and local persistent volumes for Kubernetes Stateful workloads. Kubernetes volumes can be provisioned via CSI Drivers or using Out-of-tree Provisioners. The status of the various components as of v2.11.0 are as follows:

Other notable updates

  • A E2e CI Dashboard is being developed to show the status of pipelines being run on various engines. (https://openebs.ci)
  • The OpenEBS Website and Documentation sites are being redesigned for a new look and feel - in preparation for 3.0 release. Preview link.

Show your Support

Thank you @survivant (Jerabi Inc.) for sharing your OpenEBS Adoption story.

Are you using or evaluating OpenEBS? You can help OpenEBS in its journey towards becoming a CNCF Incubation project by sharing your OpenEBS story and join the league of OpenEBS Adopters.

Shoutouts!

MANY THANKS to our existing contributors and for everyone helping OpenEBS Community going.

A very special thanks to our first-time contributors to code, tests, and docs: @RolandMa1986, @hrenard, @huangfangfeng

Documentation

https://docs.openebs.io/

Install

OpenEBS can be installed via kubectl or helm3. Follow the installation instructions here.

Upgrade

The upgrade instructions for various OpenEBS engines are here

Known Issues

Check our open issues uncovered through e2e and community testing.

Support

If you are having issues in setting up or upgrade, you can contact:

Don't miss a new openebs release

NewReleases is sending notifications on new releases.