{"id":13550751,"url":"https://github.com/ceph/ceph-csi","last_synced_at":"2025-05-13T18:06:37.903Z","repository":{"id":37385030,"uuid":"116693072","full_name":"ceph/ceph-csi","owner":"ceph","description":"CSI driver for Ceph","archived":false,"fork":false,"pushed_at":"2025-05-13T08:53:42.000Z","size":137052,"stargazers_count":1382,"open_issues_count":102,"forks_count":568,"subscribers_count":51,"default_branch":"devel","last_synced_at":"2025-05-13T09:42:23.192Z","etag":null,"topics":["ceph","cephfs","csi","kubernetes","rbd"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ceph.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-01-08T15:21:11.000Z","updated_at":"2025-05-13T08:53:44.000Z","dependencies_parsed_at":"2023-10-03T19:30:14.831Z","dependency_job_id":"9c06b537-2cf0-435b-b7f5-a0522508d369","html_url":"https://github.com/ceph/ceph-csi","commit_stats":{"total_commits":3909,"total_committers":155,"mean_commits":"25.219354838709677","dds":0.7434126375031977,"last_synced_commit":"aa2cc67650958e263637e9d5f3bf936dae105c30"},"previous_names":[],"tags_count":42,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ceph%2Fceph-csi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ceph%2Fceph-csi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ceph%2Fceph-csi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ceph%2Fceph-csi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ceph","download_url":"https://codeload.github.com/ceph/ceph-csi/tar.gz/refs/heads/devel","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254000846,"owners_count":21997441,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ceph","cephfs","csi","kubernetes","rbd"],"created_at":"2024-08-01T12:01:37.091Z","updated_at":"2025-05-13T18:06:32.888Z","avatar_url":"https://github.com/ceph.png","language":"Go","funding_links":[],"categories":["Go","Roadmap","kubernetes","Storage management and orchestration","Featured On"],"sub_categories":["[Tutorials](#tutorials)"],"readme":"# Ceph CSI\n\n[![GitHub release](https://img.shields.io/github/release/ceph/ceph-csi/all.svg)](https://github.com/ceph/ceph-csi/releases)\n[![Mergify Status](https://img.shields.io/endpoint.svg?url=https://api.mergify.com/v1/badges/ceph/ceph-csi\u0026style=flat)](https://mergify.com)\n[![Go Report\nCard](https://goreportcard.com/badge/github.com/ceph/ceph-csi)](https://goreportcard.com/report/github.com/ceph/ceph-csi)\n[![TODOs](https://badgen.net/https/api.tickgit.com/badgen/github.com/ceph/ceph-csi/devel)](https://www.tickgit.com/browse?repo=github.com/ceph/ceph-csi\u0026branch=devel)\n[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/5940/badge)](https://bestpractices.coreinfrastructure.org/projects/5940)\n\n- [Ceph CSI](#ceph-csi)\n   - [Overview](#overview)\n   - [Project status](#project-status)\n   - [Known to work CO platforms](#known-to-work-co-platforms)\n   - [Support Matrix](#support-matrix)\n      - [Ceph-CSI features and available versions](#ceph-csi-features-and-available-versions)\n      - [CSI spec and Kubernetes version compatibility](#csi-spec-and-kubernetes-version-compatibility)\n   - [Ceph CSI Container images and release compatibility](#ceph-csi-container-images-and-release-compatibility)\n   - [Contributing to this repo](#contributing-to-this-repo)\n   - [Troubleshooting](#troubleshooting)\n   - [Weekly Bug Triage call](#weekly-bug-triage-call)\n   - [Dev standup](#dev-standup)\n   - [Contact](#contact)\n\nThis repo contains the Ceph\n[Container Storage Interface (CSI)](https://github.com/container-storage-interface/)\ndriver for RBD, CephFS and Kubernetes sidecar deployment YAMLs to support CSI\nfunctionality:  provisioner, attacher, resizer, driver-registrar and snapshotter.\n\n## Overview\n\nCeph CSI plugins implement an interface between a CSI-enabled Container Orchestrator\n(CO) and Ceph clusters. They enable dynamically provisioning Ceph volumes and\nattaching them to workloads.\n\nIndependent CSI plugins are provided to support RBD and CephFS backed volumes,\n\n- For details about configuration and deployment of RBD plugin, please refer\n  [rbd doc](https://github.com/ceph/ceph-csi/blob/devel/docs/rbd/deploy.md) and\n  for CephFS plugin configuration and deployment please\n  refer [cephFS doc](https://github.com/ceph/ceph-csi/blob/devel/docs/cephfs/deploy.md).\n- For example usage of the RBD and CephFS CSI plugins, see examples in `examples/`.\n- Stale resource cleanup, please refer [cleanup doc](docs/resource-cleanup.md).\n\nNOTE:\n\n- Ceph CSI **`Arm64`** support is experimental.\n\n## Project status\n\nStatus: **GA**\n\n## Known to work CO platforms\n\nCeph CSI drivers are currently developed and tested **exclusively** in Kubernetes\nenvironments.\n\n| Ceph CSI Version | Container Orchestrator Name | Version Tested     |\n| -----------------| --------------------------- | -------------------|\n| v3.13.0          | Kubernetes                  | v1.29, v1.30, v1.31|\n| v3.12.3          | Kubernetes                  | v1.29, v1.30, v1.31|\n\nThere is work in progress to make this CO-independent and thus\nsupport other orchestration environments (Nomad, Mesos..etc).\n\nNOTE:\n\nThe supported window of Ceph CSI versions is \"N.(x-1)\":\n(N (Latest major release) . (x (Latest minor release) - 1)).\n\nFor example, if the Ceph CSI latest major version is `3.9.0` today, support is\nprovided for the versions above `3.8.0`. If users are running an unsupported\nCeph CSI version, they will be asked to upgrade when requesting support.\n\n## Support Matrix\n\n### Ceph-CSI features and available versions\n\nPlease refer [rbd nbd mounter](./docs/design/proposals/rbd-nbd.md#support-matrix)\nfor its support details.\n\n| Plugin | Features                                                  | Feature Status | CSI Driver Version | CSI Spec Version | Ceph Cluster Version | Kubernetes Version |\n| ------ | --------------------------------------------------------- | -------------- | ------------------ | ---------------- | -------------------- | ------------------ |\n| RBD    | Dynamically provision, de-provision Block mode RWO volume | GA             | \u003e= v1.0.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.14.0         |\n|        | Dynamically provision, de-provision Block mode RWX volume | GA             | \u003e= v1.0.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.14.0         |\n|        | Dynamically provision, de-provision Block mode RWOP volume| Alpha          | \u003e= v3.5.0          | \u003e= v1.5.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.22.0         |\n|        | Dynamically provision, de-provision File mode RWO volume  | GA             | \u003e= v1.0.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.14.0         |\n|        | Dynamically provision, de-provision File mode RWOP volume | Alpha          | \u003e= v3.5.0          | \u003e= v1.5.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.22.0         |\n|        | Provision File Mode ROX volume from snapshot              | Alpha          | \u003e= v3.0.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.17.0         |\n|        | Provision File Mode ROX volume from another volume        | Alpha          | \u003e= v3.0.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.16.0         |\n|        | Provision Block Mode ROX volume from snapshot             | Alpha          | \u003e= v3.0.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.17.0         |\n|        | Provision Block Mode ROX volume from another volume       | Alpha          | \u003e= v3.0.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.16.0         |\n|        | Creating and deleting snapshot                            | GA             | \u003e= v1.0.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.17.0         |\n|        | Provision volume from snapshot                            | GA             | \u003e= v1.0.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.17.0         |\n|        | Provision volume from another volume                      | GA             | \u003e= v1.0.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.16.0         |\n|        | Expand volume                                             | Beta           | \u003e= v2.0.0          | \u003e= v1.1.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.15.0         |\n|        | Volume/PV Metrics of File Mode Volume                     | GA             | \u003e= v1.2.0          | \u003e= v1.1.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.15.0         |\n|        | Volume/PV Metrics of Block Mode Volume                    | GA             | \u003e= v1.2.0          | \u003e= v1.1.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.21.0         |\n|        | Topology Aware Provisioning Support                       | Alpha          | \u003e= v2.1.0          | \u003e= v1.1.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.14.0         |\n| CephFS | Dynamically provision, de-provision File mode RWO volume  | GA             | \u003e= v1.1.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.14.0         |\n|        | Dynamically provision, de-provision File mode RWX volume  | GA             | \u003e= v1.1.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.14.0         |\n|        | Dynamically provision, de-provision File mode ROX volume  | Alpha          | \u003e= v3.0.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.14.0         |\n|        | Dynamically provision, de-provision File mode RWOP volume | Alpha          | \u003e= v3.5.0          | \u003e= v1.5.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.22.0         |\n|        | Creating and deleting snapshot                            | GA             | \u003e= v3.1.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.17.0         |\n|        | Creating and deleting volume group snapshot               | Alpha          | \u003e= v3.11.0         | \u003e= v1.9.0       | Squid   (\u003e=v19.0.0)  | \u003e= v1.31.0         |\n|        | Provision volume from snapshot                            | GA             | \u003e= v3.1.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.17.0         |\n|        | Provision volume from another volume                      | GA             | \u003e= v3.1.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.16.0         |\n|        | Expand volume                                             | Beta           | \u003e= v2.0.0          | \u003e= v1.1.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.15.0         |\n|        | Volume/PV Metrics of File Mode Volume                     | GA             | \u003e= v1.2.0          | \u003e= v1.1.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.15.0         |\n| NFS    | Dynamically provision, de-provision File mode RWO volume  | Alpha          | \u003e= v3.6.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.14.0         |\n|        | Dynamically provision, de-provision File mode RWX volume  | Alpha          | \u003e= v3.6.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.14.0         |\n|        | Dynamically provision, de-provision File mode ROX volume  | Alpha          | \u003e= v3.6.0          | \u003e= v1.0.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.14.0         |\n|        | Dynamically provision, de-provision File mode RWOP volume | Alpha          | \u003e= v3.6.0          | \u003e= v1.5.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.22.0         |\n|        | Expand volume                                             | Alpha          | \u003e= v3.7.0          | \u003e= v1.1.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.15.0         |\n|        | Creating and deleting snapshot                            | Alpha          | \u003e= v3.7.0          | \u003e= v1.1.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.17.0         |\n|        | Provision volume from snapshot                            | Alpha          | \u003e= v3.7.0          | \u003e= v1.1.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.17.0         |\n|        | Provision volume from another volume                      | Alpha          | \u003e= v3.7.0          | \u003e= v1.1.0        | Pacific (\u003e=v16.2.0)  | \u003e= v1.16.0         |\n\n`NOTE`: The `Alpha` status reflects possible non-backward\ncompatible changes in the future, and is thus not recommended\nfor production use.\n\n### CSI spec and Kubernetes version compatibility\n\nPlease refer to the [matrix](https://kubernetes-csi.github.io/docs/#kubernetes-releases)\nin the Kubernetes documentation.\n\n## Ceph CSI Container images and release compatibility\n\n| Ceph CSI Release/Branch | Container image name         | Image Tag |\n| ----------------------- | ---------------------------- | --------- |\n| devel (Branch)          | quay.io/cephcsi/cephcsi      | canary    |\n| v3.13.0 (Release)       | quay.io/cephcsi/cephcsi      | v3.13.0   |\n| v3.12.3 (Release)       | quay.io/cephcsi/cephcsi      | v3.12.3   |\n\n| Deprecated Ceph CSI Release/Branch | Container image name | Image Tag |\n| ----------------------- | --------------------------------| --------- |\n| v3.11.0 (Release)       | quay.io/cephcsi/cephcsi         | v3.11.0   |\n| v3.10.2 (Release)       | quay.io/cephcsi/cephcsi         | v3.10.2   |\n| v3.10.1 (Release)       | quay.io/cephcsi/cephcsi         | v3.10.1   |\n| v3.10.0 (Release)       | quay.io/cephcsi/cephcsi         | v3.10.0   |\n| v3.9.0 (Release)        | quay.io/cephcsi/cephcsi         | v3.9.0    |\n| v3.8.1 (Release)        | quay.io/cephcsi/cephcsi         | v3.8.1    |\n| v3.8.0 (Release)        | quay.io/cephcsi/cephcsi         | v3.8.0    |\n| v3.7.2 (Release)        | quay.io/cephcsi/cephcsi         | v3.7.2    |\n| v3.7.1 (Release)        | quay.io/cephcsi/cephcsi         | v3.7.1    |\n| v3.7.0 (Release)        | quay.io/cephcsi/cephcsi         | v3.7.0    |\n| v3.6.1 (Release)        | quay.io/cephcsi/cephcsi         | v3.6.1    |\n| v3.6.0 (Release)        | quay.io/cephcsi/cephcsi         | v3.6.0    |\n| v3.5.1 (Release)        | quay.io/cephcsi/cephcsi         | v3.5.1    |\n| v3.5.0 (Release)        | quay.io/cephcsi/cephcsi         | v3.5.0    |\n| v3.4.0 (Release)        | quay.io/cephcsi/cephcsi         | v3.4.0    |\n| v3.3.1 (Release)        | quay.io/cephcsi/cephcsi         | v3.3.1    |\n| v3.3.0 (Release)        | quay.io/cephcsi/cephcsi         | v3.3.0    |\n| v3.2.2 (Release)        | quay.io/cephcsi/cephcsi         | v3.2.2    |\n| v3.2.1 (Release)        | quay.io/cephcsi/cephcsi         | v3.2.1    |\n| v3.2.0 (Release)        | quay.io/cephcsi/cephcsi         | v3.2.0    |\n| v3.1.2 (Release)        | quay.io/cephcsi/cephcsi         | v3.1.2    |\n| v3.1.1 (Release)        | quay.io/cephcsi/cephcsi         | v3.1.1    |\n| v3.1.0 (Release)        | quay.io/cephcsi/cephcsi         | v3.1.0    |\n| v3.0.0 (Release)        | quay.io/cephcsi/cephcsi         | v3.0.0    |\n| v2.1.2 (Release)        | quay.io/cephcsi/cephcsi         | v2.1.2    |\n| v2.1.1 (Release)        | quay.io/cephcsi/cephcsi         | v2.1.1    |\n| v2.1.0 (Release)        | quay.io/cephcsi/cephcsi         | v2.1.0    |\n| v2.0.1 (Release)        | quay.io/cephcsi/cephcsi         | v2.0.1    |\n| v2.0.0 (Release)        | quay.io/cephcsi/cephcsi         | v2.0.0    |\n| v1.2.2 (Release)        | quay.io/cephcsi/cephcsi         | v1.2.2    |\n| v1.2.1 (Release)        | quay.io/cephcsi/cephcsi         | v1.2.1    |\n| v1.2.0 (Release)        | quay.io/cephcsi/cephcsi         | v1.2.0    |\n| v1.1.0 (Release)        | quay.io/cephcsi/cephcsi         | v1.1.0    |\n| v1.0.0 (Branch)         | quay.io/cephcsi/cephfsplugin    | v1.0.0    |\n| v1.0.0 (Branch)         | quay.io/cephcsi/rbdplugin       | v1.0.0    |\n\n## Contributing to this repo\n\nPlease follow [development-guide](\u003chttps://github.com/ceph/ceph-csi/tree/devel/docs/development-guide.md\u003e)\nand [coding style guidelines](\u003chttps://github.com/ceph/ceph-csi/tree/devel/docs/coding.md\u003e)\nif you are interested to contribute to this repo.\n\n## Troubleshooting\n\nPlease submit an issue at: [Issues](https://github.com/ceph/ceph-csi/issues)\n\n## Weekly Bug Triage call\n\nWe conduct weekly bug triage calls at our slack channel on Tuesdays.\nMore details are available [here](https://github.com/ceph/ceph-csi/issues/463)\n\n## Dev standup\n\nA regular dev standup takes place every [Monday at\n12:00 PM UTC](https://meet.google.com/vit-qdhw-nyh) Convert to your local\ntimezone by executing command `date -d \"12:00 UTC\"` on terminal\n\nAny changes to the meeting schedule will be added to the [agenda\ndoc](https://hackmd.io/6GL90WFGQL-L4DcIfIAKeQ).\n\nAnyone who wants to discuss the direction of the project, design and\nimplementation reviews, or general questions with the broader community is\nwelcome and encouraged to join.\n\n- Meeting link: \u003chttps://meet.google.com/vit-qdhw-nyh\u003e\n- [Current agenda](https://hackmd.io/6GL90WFGQL-L4DcIfIAKeQ)\n\n## Contact\n\nPlease use the following to reach members of the community:\n\n- Slack: Join the\n  [#ceph-csi](https://ceph-storage.slack.com/archives/C05522L7P60) channel\n  on the [ceph Slack](https://ceph-storage.slack.com) to discuss anything\n  related to this project. You can join the Slack by this\n  [invite link](https://bit.ly/ceph-slack-invite)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fceph%2Fceph-csi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fceph%2Fceph-csi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fceph%2Fceph-csi/lists"}