VolSync asynchronously replicates Kubernetes persistent volumes between clusters using either rsync or rclone. It also supports creating backups of persistent volumes via restic.

Documentation Status Go Report Card codecov maturity

Documentation operator

Getting started

The fastest way to get started is to install VolSync in a kind cluster:

  • Install kind if you don’t already have it:
    $ go install sigs.k8s.io/[email protected]
  • Use our convenient script to start a cluster, install the CSI hostpath driver, and the snapshot controller.
    $ ./hack/setup-kind-cluster.sh
  • Install the latest release via Helm
    $ helm repo add backube https://backube.github.io/helm-charts/
    $ helm install --create-namespace -n volsync-system volsync backube/volsync
  • See the usage instructions for information on setting up replication relationships.

More detailed information on installation and usage can be found in the official documentation.

VolSync kubectl plugin

We’re also working on a command line interface to VolSync via a kubectl plugin. To try that out:

make cli
cp bin/kubectl-volsync /usr/local/bin/

NOTE: volsync plugin is being actively developed. Options, flags, and names are likely to be updated frequently. PRs and new issues are welcome!

Available commands:

kubectl volsync start-replication
kubectl volsync set-replication
kubectl volsync continue-replication
kubectl volsync remove-replication

Try the current examples:

Helpful links


This project is licensed under the GNU AGPL 3.0 License with the following exceptions: