contiv-experimental/volplugin


**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker

License: Other

Language: Go

Keywords: ceph, contiv-storage, docker, kubernetes, mesos, nfs, storage, volume


Build-Status ReportCard

volplugin: cluster-wide volume management for container ecosystems

Note: Most of this documentation is about the open source project. If you came to try Contiv Storage, read our documentation.

volplugin controls Ceph RBD or NFS devices, in a way that makes them easy to use for devs with docker, and flexible to configure for ops. Reference your volumes with docker from anywhere your storage is available, and they are located and mounted. Works great with Compose and Swarm, now Mesos too!

Our profiles system makes instantiating lots of similar class volumes a snap, allowing for a variety of use cases:

  • Give your dev teams full-stack dev environments (complete with state) that arrive on demand. They can configure them.
  • Scale your stateful containers in a snap with our snapshot facilities, just volcli volume snapshot copy and refer to the volume immediately. Anywhere. (Ceph only)
  • Container crashed? Host died? volplugin's got you. Just re-init your container on another host with the same volume name.

volplugin currently only supports Docker volume plugins. First class scheduler support for: Kubernetes and Mesos will be available before the first stable release.

  • On-the-fly image creation and (re)mount from any Ceph source, by referencing a policy and volume name.
  • Manage many kinds of filesystems, including providing mkfs commands.
  • Snapshot frequency and pruning. Also copy snapshots to new volumes!
  • Ephemeral (removed on container teardown) volumes
  • BPS limiting (via blkio cgroup)

volplugin is still alpha at the time of this writing; features and the API may be extremely volatile and it is not suggested that you use this in production.

Try it out

This will start the suite of volplugin tools in containers from the contiv/volplugin image. It will do the work of configuring docker for you. Note that you must have a working ceph environment that volplugin can already use. If not, please refer to the development instructions for how you can build one.

$ docker run -it -v /var/run/docker.sock:/var/run/docker.sock contiv/volplugin-autorun

If you get an error like "mountpoint / is not a shared mount", set MountFlags=shared in your systemd unit file for docker. It will most likely be set to slave instead.

Development Instructions

Our Getting Started instructions should be the first thing you read. The prerequisites are absolutely necessary.

Please see our CONTRIBUTING document as well.

Please read the Makefile for most targets. If you make build you will get apiserver/volplugin/volcli installed on the guests, so make run-build if you want a go install'd version of these programs on your host. apiserver/volplugin do not run on anything but linux (you can use volcli, however, on other platforms).

make start will start the development environment. make stop stops, and make restart rebuilds it.

If you wish to run the tests, make test. The unit tests (make unit-test) live throughout the codebase as *_test files. The system tests / integration tests (make system-test) live in the systemtests directory. Note that make system-test will not successfully run on OSX due to dependencies on unavailable libraries.

Project Statistics

Sourcerank 6
Repository Size 3.48 MB
Stars 217
Forks 36
Watchers 37
Open issues 47
Dependencies 47
Contributors 11
Tags 106
Created
Last updated
Last pushed

Top Contributors See all

Erik Hollensbe Madhav Puri unclejack Vikrant Balyan Bill Robinson Yuva Shankar Divya Vavili Abhinandan Prativadi Vipin Jain Gaurav Dalvi Joji Mekkatt

Packages Referencing this Repo

github.com/contiv/volplugin
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv/volplugin/storage/backend/nfs
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv/volplugin/config
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv/volplugin/storage
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv/volplugin/lock/client
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
This package is no longer available on Go
github.com/contiv/volplugin/api/internals/mount
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv/volplugin/volmigrate/volmigrate
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv/volplugin/storage/control
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv/volplugin/apiserver
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv/volplugin/volcli/volcli
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv/volplugin/errors
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv-experimental/volplugin/db
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv-experimental/volplugin/volsupervisor
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv-experimental/volplugin/watch
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv-experimental/volplugin/volplugin
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv-experimental/volplugin/info
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv-experimental/volplugin/volcli
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv-experimental/volplugin/merge
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv-experimental/volplugin/config
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars
github.com/contiv-experimental/volplugin/apiserver
**EXPERIMENTAL** Contiv Storage: Policy backed Clustered Storage (via Ceph or NFS) for Docker
Latest release v0.3.0 - Published - 217 stars

Recent Tags See all

v0.3.0 August 19, 2016
v0.2.0 July 15, 2016
v0.0.0-07-14-2016.09-00-08.UTC July 14, 2016
v0.0.0-07-13-2016.09-55-41.UTC July 13, 2016
v0.0.0-07-12-2016.09-01-29.UTC July 12, 2016
v0.0.0-07-11-2016.08-56-12.UTC July 11, 2016
v0.0.0-07-09-2016.09-00-06.UTC July 09, 2016
v0.0.0-07-08-2016.11-51-51.UTC July 07, 2016
v0.0.0-07-02-2016.09-55-32.UTC July 01, 2016
v0.0.0-07-01-2016.09-57-30.UTC July 01, 2016
v0.0.0-06-30-2016.09-52-49.UTC June 29, 2016
v0.0.0-06-28-2016.09-30-53.UTC June 27, 2016
v0.0.0-06-24-2016.09-23-43.UTC June 24, 2016
v0.0.0-06-22-2016.08-28-54.UTC June 21, 2016
v0.1.1 June 15, 2016

Something wrong with this page? Make a suggestion

Last synced: 2016-11-24 16:52:01 UTC

Login to resync this repository