CubeFS is an Apache-2.0, CNCF-graduated cloud-native distributed file and object storage system written in Go, built for teams that need POSIX, HDFS, S3, and REST access to a single storage layer across datacenters, private and hybrid clouds, and Kubernetes.
What it is
CubeFS, known in Chinese as 储宝, is an open-source cloud-native distributed file and object storage system hosted by the Cloud Native Computing Foundation as a graduated project. It is written in Go under the Apache-2.0 licence and developed in the open on GitHub, where it carries 5,660 stars, 714 forks, and 265 open issues. Documentation is published in English and Chinese, the project holds a bi-weekly community meeting with public schedule and minutes, and its community runs through a mailing list at [email protected], Slack at cubefs.slack.com, WeChat, and Twitter. Its topics — distributed-file-system, distributed-storage, object-storage, kubernetes, fuse, hybrid-cloud, erasure-coding, ai-native-storage, data-orchestration — say where it is meant to live.
The problem it solves is the split between file and object storage. Instead of running separate systems for POSIX workloads, HDFS-style access, and S3 object access, CubeFS serves all of them from one distributed backend behind a shared metadata service with strong consistency. It also places file system semantics and cache acceleration on top of public cloud object storage such as S3, so workloads that expect a filesystem can consume cloud storage without changing their access model. That same layer supports separating storage from compute for databases, search systems, and AI/ML applications, which the project presents as a core use case.
Key capabilities
- Multiple access protocols in one system: POSIX, HDFS, S3, and a native REST API.
- FUSE support, listed among the project topics, for POSIX-style mounting from Linux clients.
- A highly scalable metadata service with strong consistency.
- Performance optimization for large and small files and for sequential and random writes.
- Multi-tenancy with better resource utilization and tenant isolation.
- Hybrid cloud I/O acceleration through multi-level caching.
- Flexible storage policies that choose between high-performance replication and low-cost erasure coding.
Who uses it and how
- As a datacenter filesystem, providing the storage layer for an entire site or cluster.
- As data lake storage infrastructure behind analytics and processing jobs, which is where data-orchestration applies.
- As private or hybrid cloud storage, with erasure coding available for capacity-heavy tiers.
- Inside public cloud services, where it adds file system semantics and cache acceleration on top of object storage such as S3.
- As shared storage under databases, search systems, and AI/ML applications that need storage and compute scaled independently.
Getting started
The documented deployment path is the Helm chart published on Artifact Hub at artifacthub.io/packages/helm/cubefs/cubefs. Reference material lives at cubefs.io/docs/master/overview/introduction.html in both English and Chinese.
How it compares
No comparable projects and no list of commercial products it replaces appear in the facts for this entry, so it stands alone in this registry on that basis. Evaluation should rest on the capability list above rather than on any substitution claim.
When to use it — and when not to
Expect to operate real infrastructure: a metadata service, storage nodes, multi-level caching, and a policy decision between replication and erasure coding, none of which is a single-binary install. The 265 open issues and the short README mean quickstart steps live in the external documentation site rather than on the repository front page. Teams that want a drop-in managed service or a minimal-footprint store should look elsewhere.
project readme (upstream, from github) — read inline
CubeFS


Overview
CubeFS ("储宝" in Chinese) is an open-source cloud-native distributed file & object storage system, hosted by the Cloud Native Computing Foundation (CNCF) as a graduated project.
What can you build with CubeFS
As an open-source distributed storage, CubeFS can serve as your datacenter filesystem, data lake storage infra, and private or hybrid cloud storage.
Moreover, it can be run in public cloud services, providing cache acceleration and file system semantics on top of public cloud storage such as S3.
In particular, CubeFS enables the separation of storage/compute architecture for databases, search systems, and AI/ML applications.
Some key features of CubeFS include:
- Multiple access protocols such as POSIX, HDFS, S3, and its own REST API
- Highly scalable metadata service with strong consistency
- Performance optimization of large/small files and sequential/random writes
- Multi-tenancy support with better resource utilization and tenant isolation
- Hybrid cloud I/O acceleration through multi-level caching
- Flexible storage policies, high-performance replication or low-cost erasure coding

Documents
Community
Governance
Governance documentation plays a crucial role in establishing clear guidelines, procedures, and structures within an organization or project
Contribute
Contributing to CubeFS
There is a clear definition of roles and their promotion paths.
Partners and Users
There is the list of users and success stories ADOPTERS.md.
Reference
Haifeng Liu, et al., CFS: A Distributed File System for Large Scale Container Platforms. SIGMOD‘19, June 30-July 5, 2019, Amsterdam, Netherlands.
For more information, please refer to https://dl.acm.org/citation.cfm?doid=3299869.3314046 and https://arxiv.org/abs/1911.03001
License
CubeFS is licensed under the Apache License, Version 2.0.
For detail see LICENSE and NOTICE.
Note
The master branch may be in an unstable or even broken state during development. Please use releases instead of the master branch in order to get a stable set of binaries.
Star History