REX-Ray provides a vendor agnostic storage orchestration engine. The primary
design goal is to provide persistent storage for Docker
containers as well as
Mesos
frameworks and tasks.
It is additionally available as a Go package, CLI tool, and Linux service which enables it to be used for additional use cases.
You will find complete documentation for REX-Ray at rexray.readthedocs.org, including
licensing and
support information.
Documentation provided at RTD is based on the latest stable build. The /.docs
directory in this repo will refer to the latest or specific commit.
REX-Ray is available as a standalone process today and in the future (0.4)
additionally as a distributed model of client-server. The client
performs a
level abstraction of local host processes (request for volume attachment,
discovery, format, and mounting of devices) while the server
provides the
necessary abstraction of the control plane for multiple storage platforms/
The following storage providers and platforms are supported by REX-Ray.
Provider | Storage Platform(s) |
---|---|
Dell EMC | ScaleIO, Isilon |
Oracle VirtualBox | Virtual Media |
Amazon EC2 | EBS, EFS |
Support for the following storage providers will be reintroduced in upcoming releases:
Provider | Storage Platform(s) |
---|---|
Google Compute Engine | Disk |
Open Stack | Cinder |
Rackspace | Cinder |
Dell EMC | XtremIO, VMAX |
The following operating systems (OS) are supported by REX-Ray:
OS | Command Line | Service |
---|---|---|
Ubuntu 12+ | Yes | Yes |
Debian 6+ | Yes | Yes |
RedHat | Yes | Yes |
CentOS 6+ | Yes | Yes |
CoreOS | Yes | Yes |
TinyLinux (boot2docker) | Yes | Yes |
OS X Yosemite+ | Yes | No |
Windows | No | No |
The following command will install the REX-Ray client-server tool. If using
CentOS
, RedHat
, Ubuntu
, or Debian
the necessary service manager is used
to bootstrap the process on startup.
curl -sSL https://dl.bintray.com/emccode/rexray/install | sh -
REX-Ray can be ran as an interactive CLI to perform volume management capabilities.
$ export REXRAY_SERVICE=ebs
$ export EBS_ACCESSKEY=access_key
$ export EBS_SECRETKEY=secret_key
$ rexray volume ls
ID Name Status Size
vol-6ac6c7d6 attached 8
Additionally, it can be ran as a service to support Docker
, Mesos
, and other
platforms that can communicate through HTTP/JSON
.
$ export REXRAY_SERVICE=ebs
$ export EBS_ACCESSKEY=access_key
$ export EBS_SECRETKEY=secret_key
$ rexray service start
Starting REX-Ray...SUCCESS!
The REX-Ray daemon is now running at PID XX. To
shutdown the daemon execute the following command:
sudo /usr/bin/rexray stop
$ docker run -ti --volume-driver=rexray -v test:/test busybox
$ df /test