Capacity-aware CSI plugin for Kubernetes
APACHE-2.0 License
TopoLVM is a CSI plugin using LVM for Kubernetes. It can be considered as a specific implementation of local persistent volumes using CSI and LVM.
Our supported platform are:
*1 The host's Linux Kernel must be v4.9 or later which supports rmapbt
and reflink
, if you use xfs filesystem with an official docker image.
*2 Tier1 support. The official docker images are provided and all functionalities are tested by CI.
*3 Tier2 support. The official docker images are provided, but no tests run by CI.
*4 Tier3 support. No docker images are provided, and no tests run by CI, but binaries are built.
*5 btrfs is in beta as of v0.31.0. It can be used in production, but has not seen extensive use by our users yet.
Docker images are available on ghcr.io.
If you want to try TopoLVM on your local machine, see example directory which provides scripts to run TopoLVM on kind (Kubernetes IN Docker).
To use TopoLVM on your real kubernetes cluster, read documents.
Deprecated: If you want to use TopoLVM on Rancher/RKE, see docs/deprecated/rancher/README.md.
TopoLVM project welcomes contributions from any member of our community. To get started contributing, please see our Contributing Guide.
PersistentVolumeClaim
objects are created.kubelet
.PersistentVolumeClaim
objects.If you have any questions or ideas, please use discussions.
docs directory contains the user manual, designs and specifications, and so on.
A diagram of components is available in docs/design.md.
TopoLVM maintainers presented the motivation and implementation of TopoLVM at KubeCon Europe 2020: https://kccnceu20.sched.com/event/ZerD
This project is licensed under Apache License 2.0.