github openebs/openebs v3.0.0

latest releases: v4.1.1, openebs-4.1.1, openebs-4.1.0...
3 years ago

Release Summary

πŸŽ‰ πŸŽ‰ πŸŽ‰ OpenEBS 3.0 is a culmination of efforts geared towards laying the foundation for making it easier to onboard and accept community contributions, making each of the data engine operators ready for future Kubernetes releases, making it easy to manage, and troubleshoot various data engines. This has been achieved via migration to the latest Kubernetes constructs, ease of use improvements, bug fixes and most importantly refactoring the control plane and e2e test suites to independently enhance and release each of the engines.


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.


Upgrade and Backward Incompatibilities

Please review this list prior to deciding to upgrade:

  • Kubernetes 1.18 or higher release is recommended as this release uses features of Kubernetes that will not be compatible with older Kubernetes releases. Some of the engines might require you to have a higher Kubernetes version as the CSI drivers have been upgraded to the latest versions. For example, 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.
  • The non-csi provisioners for cstor and jiva are not included by default with 3.0 helm chart or operator.yaml. You can still continue to use them till Dec 2021. The older provisioners are released with the v2.12.2 version at the moment and only patch releases (to fix severe security vulnerabilities) will be supported going forward. If you need help making a decision on upgrading or migrating, please reach out to us on our Kubernetes Community slack channel #openebs.

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 v3.0.0 are as follows:

Change Summary

A detailed Changelog is available under the component repositories listed above. The focus was to close on the refactoring and maintenance-related activities and a few bug fixes that were required for some of the components to be declared GA or beta. Here is a quick summary of what has changed since the last release.

  • Added support for pushing the container images to GHCR, in addition to pushing the to DockerHub and Quay.io.
  • Rename the branches to "develop" or "main" on all the active repositories which are accepting contributions.
  • Update the CRD references to v1 across all components - even with deprecated provisioners - so users can continue to use the older provisioners beyond 1.22 as well.
  • Update the Kubernetes CSI driver side-cars to the latest version compatible with Kubernetes 1.18 and higher.
  • Enhance the iSCSI Targets functionality in Jiva and cStor volumes to only accept connections from one node at a time. The connection from a new node will be accepted only after the previous connection is torn down.
  • Enhanced the Local PV hostpath with a feature to enforce capacity limits using XFS quota - for volumes provisioned on XFS filesystem.
  • Enhanced the Jiva Specs (Jiva Volume Policy) to remove unused fields and make most of the fields with default configuration as optional. Also fixed the issues around specifying pod affinity and anti-affinity policies on jiva replica and target.
  • Enhanced the NDM operator and helm chart to include NDM exporter.
  • Enhanced NDM to detect filesystem and size changes, and update the block device resource. (under feature-gate in this release).
  • Dashboard and CLI have made enhanced their support to display details about cStor, Jiva, ZFS, LVM and Device Local PV.
  • Enhanced OpenEBS helm chart that can easily enable or disable a data engine of choice. The 3.0 helm chart stops installing the legacy cstor and jiva provisioners. If you would like to continue to use them, you have to set the flag β€œlegacy.enabled=true”.
  • OpenEBS helm chart includes sample kyverno policies that can be used as an option for PodSecurityPolicies(PSP) replacement.
  • New revamped website for https://openebs.io is live.

Show your Support

Thank you @turowicz(Surveily), @WillyRL(Teknologi Anak Rantau Indonesia), @Somsubhra1, @t3hmrman 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. @AVRahul @Ab-hishek @Abhinandan-Purkait @IsAmrish @Pallavi-PH @ParthS007 @semekh @z0marlin @akhilerm @anupriya0703 @avishnu @blaisedias @chriswldenyer @cjones1024 @gila @iyashu @jonathan-teh @kmova @mittachaitu @mtzaurus @mynktl @niladrih @nsathyaseelan @paulyoong @pawanpraka1 @prateekpandey14 @rajaSahil @rakeshPRaghu @satyapriyamishra222 @shovanmaity @shubham14bajpai @tiagolobocastro @vharsh @w3aman

A very special thanks to our first-time contributors to code, tests, and docs: @burntcarrot, @aamirqs, @sbidoul, @dsavitskiy, @almas33, @liuminjian, @zeenix, @Nivedita-coder, @fengye87, @Abhishek-kumar09, @Amishakumari544, @eripa, @Quarky9, @tathougies, @omeiirr, @g-linville, @rweilg

Documentation

https://openebs.io/docs

Install

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

Upgrade

The upgrade instructions for various OpenEBS engines are here.

Do not upgrade if you are using legacy cstor or jiva provisioners. You have to first migrate those to the corresponding CSI Drivers. Please reach out to us for support

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.