Skip to content

Commit

Permalink
Create 2021-openebs-annual.md
Browse files Browse the repository at this point in the history
  • Loading branch information
kmova committed Jul 5, 2021
1 parent ce3fc6b commit 01fefcf
Showing 1 changed file with 88 additions and 0 deletions.
88 changes: 88 additions & 0 deletions reviews/2021-openebs-annual.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
# OpenEBS Annual Review 2021


## Background

[OpenEBS](https://openebs.io/) is a leading example of Open Source Container Attached Storage, built using Cloud Native Architecture, and it simplifies running Stateful Applications on Kubernetes. OpenEBS manages the local storage available on the Kubernetes worker nodes and dynamically creates distributed persistent block volumes. OpenEBS is implemented using microservices pattern, the storage management and volumes are provided using containers - that are managed by Kubernetes itself.

Reading through the [OpenEBS adoption stories](https://github.com/openebs/openebs/blob/master/ADOPTERS.md), the primary reasons for using OpenEBS are:
* OpenEBS provides a collection of data engines that are tailored for the type of Kubernetes environments that users have and the needs of the Stateful workloads. For example, OpenEBS can be used on nodes that don't have any disks to those that have NVMe devices. OpenEBS can be used to provide Local Volumes for Distributed Stateful Workloads and provide Highly Available volumes for workloads that need protection against node failures.
* OpenEBS increases the productivity of the application teams - by allowing them to work with platform teams to provide a cluster of nodes with storage devices and application teams can run Kubernetes and optimally manage the compute, memory, network and storage available to them.
* OpenEBS reduces the friction between the application and platform teams. Platform teams can setup a Cloud Volume like services on premises for their development teams. Platform teams that have adopted Cloud for running their Kubernetes services also benefit by using a fixed set of cloud volumes attached to the nodes and let the application teams operate within those boundaries, instead of providing access to developers to create (and forget) cloud volumes.
* OpenEBS improves the availability of the storage using its synchronous replication for distributing the volumes. The volume data is always fully available on the replica nodes - there by reducing the overhead incurred in maintaining the metadata of the volume. Helps with easier rebuild and lower blast radius when compared to scale-out distributed volumes. OpenEBS also has been used to replicate volumes across availability zones on cloud where such features are not yet available.

Last but not the least, OpenEBS community support has also been spotted as one of the main reasons for using OpenEBS compared to other storage solutions.

OpenEBS was approved as a [CNCF Sandbox Project on May 14th, 2019](https://github.com/cncf/toc/pull/224). Here are some background links:

- [OpenEBS Sandbox Proposal](https://github.com/cncf/toc/blob/master/proposals/sandbox/openebs.adoc)
- [Original CNCF TOC Meeting Slides](https://docs.google.com/presentation/d/10Z5SsA90MyKLgSSvmGAyufsxoAABIfLTaHDwG7oNQB0/edit#slide=id.g59b9c9aad1_0_245)
- [CNCF Storage WG Slides](https://docs.google.com/presentation/d/1MEx9EyvFW1cLZhFxUvWVd4bzoRS7PNnMqgmbIZaoulw/edit#slide=id.g34883d674a_0_601)
- [OpenEBS 2020 Annual Review PR](https://github.com/cncf/toc/pull/433)
- [OpenEBS Incubation Proposal PR](https://github.com/cncf/toc/pull/506)


## Develoment metrics

Here are a few highligths from the project's [devstats page](https://openebs.devstats.cncf.io/), looking at the 1 year period after
2020 annual review (Jul 2020 - Jun 2021):

- This year we welcomed [101 new contributors](https://openebs.devstats.cncf.io/d/52/new-contributors-table?orgId=1&from=1593455400000&to=1625077799000) across our repositories.
- The average number of [active contributors](https://openebs.devstats.cncf.io/d/74/contributions-chart?orgId=1&from=1593541800000&to=1625077799000) increased to 77, up from 58.
- These active contributors come from 15 different [companies](https://openebs.devstats.cncf.io/d/7/companies-contributing-in-repository-groups?orgId=1&from=1593541800000&to=1625077799000), up from 10.
- The [activity](https://openebs.devstats.cncf.io/d/1/activity-repository-groups?orgId=1&from=1561919400000&to=now&var-period=m&var-repogroups=All) across repositories shows a clear steady increase.

### Maintainers

- There are a total of [7 maintainers](https://github.com/openebs/openebs/blob/master/MAINTAINERS) and
- 20 additional reviewers. The [reviewers](https://github.com/openebs/openebs/blob/master/GOVERNANCE.md#reviewers) maintain one or more repositories and are on their way to becoming organization maintainers.

### Other metrics

Besides contributor metrics, the following numbers also highlight how the
project has gathered more interest since last year:

- [~7k github stars](https://star-history.t9t.io/#openebs/openebs), up from 6k since last year.
- Community Slack was migrated from MayaData hosted slack to Kubernetes Slack:
- The general [#openebs](https://kubernetes.slack.com/messages/openebs/) channel now has 650+ members.
- The developer [#openebs-dev](https://kubernetes.slack.com/messages/openebs-dev/) currently has ~200 members.

## Adoption

There are many more adopters of OpenEBS and organizations evaluating the project as well. Organizations that agreed to have them listed publicly can be found in the [ADOPTERS.md](https://github.com/openebs/openebs/blob/master/ADOPTERS.md) file which currently lists 25+ adopters, doubled since last year.


## Project goals

**How has the project performed against its goals since the last review? (We won't penalize you if your goals changed for good reasons.)**

- Continue to expand our community of user and contributors. We are particularly focused on improving the contributor experience. We believe that as the project matures and usage continues to grow, we will see an increase in interested contributors. We plan to learn from the Contributor SIG how to better embrace them and help them to become successful contributors. While we do have some major external contributors, we know there is more we can do.
- Improve the documentation and website.
- Work on the [Roadmap items](https://github.com/openebs/openebs/blob/master/ROADMAP.md), which primarily include:
* GA of cStor and migration towards CSI
* GA of Local PV Operators
* Beta and GA of Mayastor


**What are the current goals of the project? For example, are you working on major new features? Or are you concentrating on adoption or documentation?**


## CNCF membership

### How can the CNCF help you achieve your upcoming goals?

First off, thank you for all the help and support provided by CNCF team in the past year in the following areas for the OpenEBS project:
* Guidance on the licensing related questions from CNCF legal and coaching from the CNCF Storage TAG on how to address some of the concerns.
* Providing venues during KubeCon for presening Project Office hours
* CNCF Mentorship and Bugbash programs that have helped with increasing the contributions to the project.
* Helping on queries related to process and governance.

We are looking forward to the continued support in the above areas and as well as get ready to taken help in terms of additional tooling that CNCF provides around security auditing, CI infrastructure and creative services.


### Incubation

**Do you think that your project meets the [criteria for incubation](https://github.com/cncf/toc/blob/master/process/graduation_criteria.adoc#incubating-stage)?**

Yes, we do, and we are planning to present the progress we have made since our last [CNCF Storage TAG review](https://github.com/cncf/toc/pull/506#issuecomment-756153457) and move towards the next steps.

0 comments on commit 01fefcf

Please sign in to comment.