# openebs/openebs

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/openebs-openebs).**

9,771 stars · 985 forks · Apache-2.0

## Links

- GitHub: https://github.com/openebs/openebs
- Homepage: https://openebs.io
- awesome-repositories: https://awesome-repositories.com/repository/openebs-openebs.md

## Topics

`block-storage` `blockstorage` `cloud-native` `containerization` `csi` `devops` `docker` `ebs` `ebs-volumes` `filesystems` `k8s` `k8s-sig-storage` `kubernetes` `openebs` `persistent-storage` `persistent-workloads` `pod` `spdk` `storage` `storage-container`

## Description

OpenEBS is a container-native storage platform that provides persistent volumes for stateful applications running on Kubernetes. It operates through a Kubernetes-native microservice architecture, where storage controllers are managed entirely with kubectl and standard Kubernetes APIs, and offers both local and replicated block storage options.

The platform distinguishes itself through synchronous NVMe-TCP replication, which replicates block data across nodes to enable pod rescheduling after node failure without data loss. It also includes a snapshot and clone engine for capturing point-in-time volume states, integrates with Velero for scheduled backups and restores, and supports online volume expansion without disrupting running workloads. Capacity-aware pod scheduling ensures stateful pods are placed on nodes with sufficient free local storage for their persistent volume claims.

OpenEBS abstracts host paths, attached drives, and existing LVM or ZFS pools into Kubernetes persistent volumes with no data-path overhead, and provides enterprise-grade storage features including snapshots, cloning, and volume expansion for both local and replicated volumes. The platform is administered through standard Kubernetes tooling such as Helm charts, Prometheus metrics, and Grafana dashboards.

## Tags

### DevOps & Infrastructure

- [Kubernetes-Native Storage Controllers](https://awesome-repositories.com/f/devops-infrastructure/kubernetes-architecture-visualization/kubernetes-native-storage-controllers.md) — Provides a container-native storage platform where storage controllers are managed as Kubernetes microservices.
- [Kubernetes Storage Orchestration](https://awesome-repositories.com/f/devops-infrastructure/kubernetes-cluster-management/multi-cluster-orchestrators/kubernetes-storage-orchestration.md) — Orchestrates persistent storage for stateful Kubernetes applications using standard Kubernetes APIs.
- [Native Kubernetes Object Storage](https://awesome-repositories.com/f/devops-infrastructure/native-kubernetes-object-storage.md) — Provides persistent volumes for stateful Kubernetes applications with local and replicated block storage.
- [Capacity-Aware Pod Schedulers](https://awesome-repositories.com/f/devops-infrastructure/pod-autoscaling/capacity-aware-pod-schedulers.md) — Ensures stateful pods are placed on nodes with sufficient free local storage for their persistent volume claims.
- [Dynamic Volume Resizing](https://awesome-repositories.com/f/devops-infrastructure/container-orchestration/storage-volume-orchestration/dynamic-volume-resizing.md) — Resizes replicated and LVM/ZFS-backed local persistent volumes without disrupting running workloads. ([source](https://docs.openebs.io/docs/concepts/cns))
- [Helm Chart Management](https://awesome-repositories.com/f/devops-infrastructure/helm-chart-management.md) — Administers storage controllers and volumes through Helm charts for lifecycle management.
- [Local Volume Node Schedulers](https://awesome-repositories.com/f/devops-infrastructure/node-scheduling-constraints/local-volume-node-schedulers.md) — Ensures stateful pods are placed on the node where a local volume is provisioned. ([source](https://docs.openebs.io/docs/3.0.x/))

### Data & Databases

- [Synchronous Replication Management](https://awesome-repositories.com/f/data-databases/data-replication/synchronous-replication-management.md) — Provides synchronous NVMe-TCP replication of block data across Kubernetes nodes for high availability. ([source](https://docs.openebs.io/docs/quickstart-guide/prerequisites))
- [NVMe-TCP Replicated Volumes](https://awesome-repositories.com/f/data-databases/data-replication/synchronous-replication-management/nvme-tcp-replicated-volumes.md) — Synchronously replicates block data across nodes via NVMe-TCP targets for pod rescheduling after failure.
- [NVMe-TCP Synchronous Replications](https://awesome-repositories.com/f/data-databases/data-replication/synchronous-replication-management/nvme-tcp-synchronous-replications.md) — Synchronously replicates block data across nodes using NVMe over TCP for node failure tolerance.
- [Replicated Block Volumes](https://awesome-repositories.com/f/data-databases/data-replication/synchronous-replication-management/replicated-block-volumes.md) — Manages synchronously replicated block volumes across multiple Kubernetes nodes for fault tolerance.
- [Kubernetes Local Volumes](https://awesome-repositories.com/f/data-databases/external-storage-integrations/volume-mounts/kubernetes-local-volumes.md) — Mounts host paths, attached drives, and LVM/ZFS stacks directly into pods for low-latency access.
- [Local Persistent](https://awesome-repositories.com/f/data-databases/external-storage-integrations/volume-mounts/local-persistent.md) — Mounts host storage directly into a pod without data-path overhead for reduced latency. ([source](https://docs.openebs.io/docs/quickstart-guide/deployment))
- [Enterprise Storage Provisioners](https://awesome-repositories.com/f/data-databases/file-storage-systems/enterprise-storage-file-systems/enterprise-storage-provisioners.md) — Supports snapshots, cloning, volume expansion, and capacity-based scheduling for replicated or LVM/ZFS-backed local volumes. ([source](https://docs.openebs.io/docs/quickstart-guide/prerequisites))
- [Persistent Storage Volumes](https://awesome-repositories.com/f/data-databases/persistent-storage-volumes.md) — Creates persistent volumes from host paths, locally attached drives, or existing LVM/ZFS stacks with no data-path overhead. ([source](https://cdn.jsdelivr.net/gh/openebs/openebs@develop/README.md))
- [Local Persistent Volume Managers](https://awesome-repositories.com/f/data-databases/persistent-storage-volumes/local-persistent-volume-managers.md) — Creates and manages local volumes from host paths, attached storage, or existing LVM/ZFS stacks for low-latency access. ([source](https://docs.openebs.io/docs/quickstart-guide/prerequisites))
- [Local Persistent Volume Provisioners](https://awesome-repositories.com/f/data-databases/persistent-storage-volumes/local-persistent-volume-provisioners.md) — Creates volumes from host paths, locally attached storage, or existing LVM/ZFS stacks with no data-path overhead. ([source](https://docs.openebs.io/docs/Solutioning/openebs-on-kubernetes-platforms/gke))
- [Replicated Persistent Volumes](https://awesome-repositories.com/f/data-databases/persistent-storage-volumes/replicated-persistent-volumes.md) — Ships replicated persistent volumes that survive node failures via synchronous NVMe-TCP replication. ([source](https://docs.openebs.io/docs/Solutioning/openebs-on-kubernetes-platforms/gke))
- [LVM/ZFS Local Storage Abstractions](https://awesome-repositories.com/f/data-databases/storage-abstraction/logical-volume-management/lvm-storage-drivers/lvm-zfs-local-storage-abstractions.md) — Abstracts host paths, attached drives, and LVM/ZFS pools into Kubernetes persistent volumes with no data-path overhead.
- [Replicated Volume Snapshots](https://awesome-repositories.com/f/data-databases/consistency-tuning/point-in-time-snapshots/csi-volume-snapshots/replicated-volume-snapshots.md) — Captures point-in-time copies and creates independent clones of replicated persistent volumes. ([source](https://docs.openebs.io/docs/3.0.x/))
- [Volume Snapshot and Clone Engines](https://awesome-repositories.com/f/data-databases/consistency-tuning/point-in-time-snapshots/csi-volume-snapshots/volume-snapshot-and-clone-engines.md) — Captures point-in-time volume states and creates independent copies for backup, testing, or disaster recovery.
- [Local Volume Capacity Schedulers](https://awesome-repositories.com/f/data-databases/data-locality-scheduling/local-volume-capacity-schedulers.md) — Places pods onto nodes with sufficient local storage capacity for the requested persistent volume. ([source](https://docs.openebs.io/docs/introduction-to-openebs/features))
- [Volume Scaling](https://awesome-repositories.com/f/data-databases/persistent-storage-volumes/volume-scaling.md) — Increases the size of replicated persistent volumes online without disrupting running workloads. ([source](https://docs.openebs.io/docs/quickstart-guide/deployment))
- [Snapshot Volume Creation](https://awesome-repositories.com/f/data-databases/storage-abstraction/logical-volume-management/snapshot-volume-creation.md) — Creates point-in-time snapshots and clones of LVM/ZFS-backed local and replicated volumes. ([source](https://docs.openebs.io/))

### Networking & Communication

- [Replicated Persistent Volumes](https://awesome-repositories.com/f/networking-communication/traffic-routing/zone-aware-routing/zone-aware-data-replication/replicated-persistent-volumes.md) — Provisions replicated persistent volumes that survive node and availability zone failures via NVMe-TCP. ([source](https://cdn.jsdelivr.net/gh/openebs/openebs@develop/README.md))
- [Social Pods](https://awesome-repositories.com/f/networking-communication/social-pods.md) — Places pods on nodes with enough free local storage for the requested volume. ([source](https://docs.openebs.io/docs/quickstart-guide/deployment))

### Operating Systems & Systems Programming

- [Online Volume Expansions](https://awesome-repositories.com/f/operating-systems-systems-programming/system-administration-maintenance/file-system-management/file-system-operations/volume-expansion/online-volume-expansions.md) — Provides online resizing of replicated and local persistent volumes without disrupting running workloads.

### System Administration & Monitoring

- [Local Persistent Volume Provisioners](https://awesome-repositories.com/f/system-administration-monitoring/provisioner-management/local-persistent-volume-provisioners.md) — Manages local persistent volumes from host paths, drives, or LVM/ZFS stacks with direct pod mounting.
- [Backup & Disaster Recovery](https://awesome-repositories.com/f/system-administration-monitoring/backup-disaster-recovery.md) — Protects persistent volume data through Velero-integrated scheduled backups and restores.
- [Kubernetes Persistent Volume Backups](https://awesome-repositories.com/f/system-administration-monitoring/backup-disaster-recovery/azure-backup-and-restore/backup-and-restore/kubernetes-persistent-volume-backups.md) — Integrates with Velero to perform scheduled backups and restores of persistent volume data for disaster recovery.
- [Persistent Volume Backups and Restores](https://awesome-repositories.com/f/system-administration-monitoring/backup-disaster-recovery/azure-backup-and-restore/backup-and-restore/persistent-volume-backups-and-restores.md) — Protects volume data by integrating with Velero for scheduled backups and restores. ([source](https://cdn.jsdelivr.net/gh/openebs/openebs@develop/README.md))
- [Velero Backup Integrations](https://awesome-repositories.com/f/system-administration-monitoring/backup-disaster-recovery/azure-backup-and-restore/backup-and-restore/velero-backup-integrations.md) — Integrates with Velero for scheduled backups and restores of persistent volume data.

### Part of an Awesome List

- [Backup and Snapshots](https://awesome-repositories.com/f/awesome-lists/data/backup-and-snapshots.md) — Captures point-in-time snapshots of persistent volumes for backup and disaster recovery. ([source](https://docs.openebs.io/docs/quickstart-guide/deployment))
