Skip to content
@openebs

OpenEBS

High-Performance Container Native Stateful Persistent Block-mode and Filesystem storage platform for K8s // A CNCF Member project

Welcome to OpenEBS

OpenEBS Social Banner

Quick links CNCF openebs website CNCF Product docs Main Parent repo Community Cafe Community Meeting

Project Purpose

OpenEBS is an open-source storage service for Kubernetes applications. OpenEBS manages the block storage and file systems based on the block storage for containers running in Kubernetes. Use OpenEBS for creating fast and resilient storage; with options for single-node, and replicated multi-node storage.

OpenEBS is a Stateful Persistent block-mode Data Storage platform with a native virtual SAN fabric; for Kubernetes. We are a CNCF member project. We are the largest global community of K8s storage users.

Our project team was an early pioneering inventor of K8s Container Native Storage services (we invented the term). We conceived the vision of a Stateful Persistent data platform for K8s that is tightly integrated and natively embedded into the core of K8s.

We built an innovative High-performance Enterprise grade Block-mode Hyper-converged Storage virtual SAN Fabric that augments the storage services of K8s with Stateful Persistence, Enterprise Data mgmt, SSD/NVMe optimized I/O services, Replicated Data volumes, Thin Provisioning, Snapshot, Clones; and many other Mission critical data storage services that don't come in K8s out-of-the-box.

OpenEBS is very popular :
Live OpenEBS systems actively report back product telemetry each day, to our Global Analytics system (unless disabled by the user).
Below are our project popularity & penetration metrics as of: 01 May 2024

🚀   OpenEBS is the #1 deployed Storage Platform for Kubernetes
⭐   We are the #1 GitHub Star ranked K8s Data Storage platform
💾   We have +49 Million Volumes deployed globally
📺   We have +9 Million Global Live Nodes
⚡   1 Million OpenEBS K8s Containers are spawned per week
😎   1.7 Million User Installations

Our global team comes from many areas of the data storage industry. Companies like... Microsoft Azure, VMware, DELL/EMC, Brocade/Broadcom, Hitachi Vantara, INTEL, Nvidia/Mellanox, IBM, RedHat and DataCore.

Project Structure

Why OpenEBS?

OpenEBS provides enterprise-grade data management for Kubernetes clusters, with five different storage engines (four single-node and one replicated) that meet a range of use cases for Kubernetes users. The five engines are summarized in the table below:

Important

The OpenEBS platform, provides 2 types of K8s Storage Services. Replicated PV and Local PV.


Engine Local PV HostPath Local PV ZFS Local PV LVM Local PV Rawfile Replicated PV Mayastor
Type Single-node Single-node Single-node Single-node Multi-node
What is it for? Replacement for in-Tree Kubernetes CSI HostPath Storage engine for ZFS managed backend storage Storage engine for LVM2 managed backend storage Experimental engine for using an extent file as block storage General purpose replicated enterprise storage
Designed for Developers or DevOps ZFS users and production deployments LVM2 users and production deployments Developers Enterprises and production deployments
Features Everything in Kubernetes HostPath, plus: - Dynamic provisioning, Zero configuration, No CSI driver Provision ZFS datasets, Provision ZFS volumes, Dynamic provisioning, ZFS resilience, ZFS RAID protection, CSI driver Provision LVM2 volumes, Dynamic provisioning, LVM2 RAID protection, CSI driver Provision file system from local files as persistent volumes, CSI driver Replicated storage NVMe / RDMA, Snapshots, Clones, High availability, CSI driver
Status Stable, deployable in PROD Stable, deployable in PROD Stable, deployable in PROD Beta, undergoing evaluation & integration Stable, deployable in PROD
Current Version Releases Releases Releases release: v0.70 Releases

We are an Ultra modern Data storage platform stack that is strongly aligned with the cutting-edge direction of storage use cases in the K8s industry. OpenEBS is designed to facilitate modern K8s datastore architectures, key K8s I/O patterns, K8s data access methods, K8s data use-cases and where K8s Datastore applications are heading.

OpenEBS is optimized for NVMe and SSD Flash storage media and integrates ultra-modern cutting-edge high-performance storage technologies at its core.

☑️   It uses the High performance SPDK storage stack - (SPDK is an open-source NVMe project initiated by INTEL)
☑️   The hyper-modern IO_Uring Linux Kernel Async polling-mode I/O Interface - (fastest kernel I/O mode possible)
☑️   Native abilities for RDMA and Zero-Copy I/O
☑️   NVMe-oF TCP Block storage Hyper-converged data fabric
☑️   Block layer volume replication
☑️   Logical volumes and Diskpool based data management
☑️   a Native high performance Blobstore
☑️   Native Block layer Thin provisioning
☑️   Native Block layer Snapshots and Clones



Warning

LEGACY Edition

Legacy has been archived and migrated out of the main OpenEBS parent repo.

LEGACY consists of Data-Engines that we experimented with early on. These Data-Engines have a number of open-source
technologies embedded inside them, and are a great intro into the world of simple K8s storage services. LEGACY helped
us learn, iterate, and develop our core storage K8s strategy, as well as discern how users want & need to interact with
K8s storage services. LEGACY also helped to reveal key areas within K8s that are lacking in storage/datastore services,
what areas of K8s we could optimize; and how we can provide the best value into the various K8s storage layers.

There are multiple Storage Engines within LEGACY:

ID Data-Engines Embedded tech stack Status Action date
 
1 Jiva iSCSI deprecated & has been Migrated to OpenEBS Archive org 29 Apr, 2024
2 cStor Open ZFS deprecated & has been Migrated to OpenEBS Archive org 29 Apr, 2024
3 NFS Provisioner NFS userspace server deprecated & has been Migrated to OpenEBS Archive org 29 Apr, 2024
4 Device LocalPV Node Local storage deprecated & has been Migrated to OpenEBS Archive org 29 Apr, 2024
5 LocalPV Device Node Local storage deprecated & has been Migrated to OpenEBS Archive org 29 Apr, 2024
6 NDM Node Local storage deprecated & has been Migrated to OpenEBS Archive org 29 Apr, 2024
7 +43 other repos & projects
(Total Repos migrated: 49)
66% of Project's repos have been Archvied Please see the OpenEBS Archive org 29 Apr, 2024


🌎 ROADMAP

Our 2024 Roadmap is here It defines a rich set of new features that are planned for 2024.
Please review this roadmap and feel free to pass back any feedback on it, as well as recommend and suggest new ideas. We welcome all of your feedback.

⭐ GitHub Star Chart

OpenEBS is committed to bringing Enterprise-grade data management to Kubernetes. More people trust OpenEBS with their enterprise's data than any other storage platform.

Star History Chart

Important

Our original founding team guides the project as Maintainers. Major sponsorship is provided by DataCore, which donates a large team of dedicated Product Dev/Engineers, Product Mgmt, and operational resources. OpenEBS has hundreds of amazing contributors and storage engineers who provide ideas, feedback, and high-quality code to the project. - Everyone is welcome.

Community Resources

We centralize all our community documentation in the Community repo. All sub-projects within the organization follow the same umbrella policies, except where stated in the sub-project readme.

Monthly Community Meetings

OpenEBS holds a monthly community meeting via Zoom on the last Thursday of the month, at 14:00 UTC.
The next meeting is on: Thursday 26 September, at 14:00 UTC
Meeting Link: https://us05web.zoom.us/j/87535654586?pwd=CigbXigJPn38USc6Vuzt7qSVFoO79X.1
Starting in August 2024, the meetings will be recorded and posted on YouTube. Check here

Other Resources

Maintainers meet weekly and minute their meetings. A public record of the meetings is here. See Vision for more detail on what we do, Governance for how we do it, and Contributing for how to get involved

New Contributors and Maintainers

We are actively looking for new contributors and maintainers. Want to get involved, but not sure how? Please email the maintainers at openebs.team@gmail.com

OpenEBS Community Code of Conduct

OpenEBS follows the CNCF Code of Conduct.

Pinned Loading

  1. openebs openebs Public

    Most popular & widely deployed Open Source Container Native Storage platform for Stateful Persistent Applications on Kubernetes.

    9.1k 946

  2. mayastor mayastor Public

    Dynamically provision Stateful Persistent Replicated Cluster-wide Fabric Volumes & Filesystems for Kubernetes that is provisioned from an optimized NVME SPDK backend data storage stack.

    Rust 763 110

  3. dynamic-localpv-provisioner dynamic-localpv-provisioner Public

    Dynamically deploy Stateful Persistent Node-Local Volumes & Filesystems for Kubernetes that is provisioned from simple Local-Hostpath /root storage.

    Go 145 63

  4. zfs-localpv zfs-localpv Public

    Dynamically provision Stateful Persistent Node-Local Volumes & Filesystems for Kubernetes that is integrated with a backend ZFS data storage stack.

    Go 446 107

  5. lvm-localpv lvm-localpv Public

    Dynamically provision Stateful Persistent Node-Local Volumes & Filesystems for Kubernetes that is integrated with a backend LVM2 data storage stack.

    Go 262 100

  6. rawfile-localpv rawfile-localpv Public

    Dynamically deploy Stateful Persistent Node-Local Volumes & Filesystems for Kubernetes that is provisioned from RAW-device file loop mounted Local-Hostpath storage.

    Python 74 27

Repositories

Showing 10 of 29 repositories
  • mayastor-control-plane Public

    Control plane for OpenEBS Mayastor

    openebs/mayastor-control-plane’s past year of commit activity
    Rust 35 Apache-2.0 38 0 4 Updated Dec 21, 2024
  • website Public

    OpenEBS Website and User Documentation

    openebs/website’s past year of commit activity
    TypeScript 13 Apache-2.0 77 6 51 Updated Dec 21, 2024
  • mayastor Public

    Dynamically provision Stateful Persistent Replicated Cluster-wide Fabric Volumes & Filesystems for Kubernetes that is provisioned from an optimized NVME SPDK backend data storage stack.

    openebs/mayastor’s past year of commit activity
    Rust 763 Apache-2.0 110 65 (5 issues need help) 3 Updated Dec 20, 2024
  • openebs-e2e Public
    openebs/openebs-e2e’s past year of commit activity
    Go 0 Apache-2.0 1 10 4 Updated Dec 20, 2024
  • zfs-localpv Public

    Dynamically provision Stateful Persistent Node-Local Volumes & Filesystems for Kubernetes that is integrated with a backend ZFS data storage stack.

    openebs/zfs-localpv’s past year of commit activity
    Go 446 Apache-2.0 107 38 (12 issues need help) 6 Updated Dec 20, 2024
  • mayastor-extensions Public

    Components and utilities which extend the Mayastor core control & data plane functionality

    openebs/mayastor-extensions’s past year of commit activity
    Rust 17 Apache-2.0 29 0 1 Updated Dec 20, 2024
  • spdk-rs Public

    Enables building safer SPDK-based Rust applications

    openebs/spdk-rs’s past year of commit activity
    Rust 66 Apache-2.0 21 4 0 Updated Dec 19, 2024
  • mayastor-dependencies Public

    MayaData Dependencies

    openebs/mayastor-dependencies’s past year of commit activity
    Rust 6 Apache-2.0 14 0 1 Updated Dec 19, 2024
  • openebs/mayastor-chart-donotuse’s past year of commit activity
    0 Apache-2.0 1 0 0 Updated Dec 19, 2024
  • community Public

    OpenEBS community resources

    openebs/community’s past year of commit activity
    4 Apache-2.0 2 54 0 Updated Dec 19, 2024