Code

The Ceph codebase lives on GitHub and is open to contributions from anyone. Every patch, review, and design discussion happens in the open.

Fork the repository to start exploring the source, or read the Contributor Guide first to learn how the project is organised, how patches flow, and where your skills fit.

View on GitHub

Get the source

Clone the repository from GitHub to track development as it happens, download the source of any official release as a tarball, or install pre-built packages.

Key components

  • RADOS

    The Reliable Autonomic Distributed Object Store is Ceph's foundation, handling data placement, replication, and recovery across the cluster with the CRUSH algorithm. Every higher-level interface is built on top of it.

    Architecture guide
  • OSD

    The Object Storage Daemon runs on every storage node and handles reads, writes, replication, and recovery. Crimson, Ceph's next-generation OSD, targets improved performance on modern NVMe hardware.

    OSD internals
  • Monitor & Manager

    Monitors maintain the authoritative cluster map through distributed consensus, while the Manager collects metrics and hosts pluggable modules for dashboards, alerting, and orchestration. Manager modules are a popular place to start contributing in Python.

    Manager modules
  • RGW

    The RADOS Gateway provides S3- and Swift-compatible object storage, with multi-site replication, lifecycle policies, bucket notifications, and IAM-compatible access control.

    Object Gateway guide
  • RBD

    The RADOS Block Device provides thin-provisioned block storage with snapshots, cloning, and replication. RBD images back virtual machines and container volumes through the Linux kernel driver and QEMU.

    Block Device guide
  • CephFS & MDS

    CephFS is a POSIX-compliant distributed file system. Its Metadata Server manages the file system namespace and scales horizontally with multiple active MDS daemons across large directory trees.

    File System guide