[workspace-announce] Nimbus Cloud Storage: Introducing Cumulus and Request for Feedback

Tim Freeman tfreeman at mcs.anl.gov
Sat Jun 19 23:25:29 CDT 2010

Introducing Cumulus!

In the next Nimbus release we are planning to introduce Cumulus: storage
software for clouds that allows remote users to store objects using the
widespread S3 protocol. Cumulus is compatible with the Amazon S3 REST API
with small exceptions (see the documentation links below) and it works
seamlessy with clients such as s3cmd and boto.  It will replace the current
GridFTP-based upload and download of VM images.  It will also offer
administrators extra functionality such as the ability to specify disk quotas.

The purpose of this email is to introduce you to the proposed changes and
their potential impact, and solicit feedback on what this change will mean for
our users.

Cumulus will integrate tightly in a Nimbus installation as the repository
solution (it is also installable on its own if you are interested) which will
allow an administrator to follow one cohesive installation document and achieve
a setup that works for the cloud-client program, the program used by the
majority of Nimbus users.

Taking GridFTP's place

We have decided that deprecating the service's integration with GridFTP for
WAN file transfers is the best course of action to take.  This will allow us
to support a tight integration with just one repository solution.  That will
make it easier to install, maintain, and introduce needed storage features.

Given the way the integration has been designed, this move also allows Nimbus
propagation mechanisms to be encapsulated.  This gives us (and you) the
opportunity to integrate better, faster propagation solutions which is
especially relevant when deploying large virtual clusters.

What this will mean for clients

The primary change the users will see is that they will require an additional
set of credentials (in addition to PKI credentials) to upload and download VM
images to a Nimbus cloud: they will require a token and symmetric key to work
with the storage cloud. This is similar to how Amazon's EC2/S3 access is

To allow our users to easily obtain these additional credentials we have
created a web application where they can log in and obtain the required token
and symmetric key.  New users will be given both sets of credentials upon
registration; the alternative credential can also be used with the Nimbus EC2
query API implementation.

Also, once a Nimbus cloud moves to the newer service version, users will
require a cloud-client update and an updated "cloud.properties" file.

To facilitate the transition for end-users between the old and the new Nimbus
clouds, we implemented a new cloud-client that is backwards compatible, it
will work with both old and new (cumulus-based) clouds.  To maintain this
compatibility the new client will still contain the GridFTP client libraries
necessary to run the repository-centric commands for older clouds (such as
"--list", "--transfer", etc.).  The cloud-client command set remains unchanged.

What this will mean for administrators

Nimbus will be easier to install. Cumulus allows us to give administrators a
better installation and maintenance experience for the entire "cloud" setup
(which will now be the target of the installation guide). It also allows
developers to more easily add features and security assurances that make sense
in the Nimbus context.

For example, Cumulus will not require users to have Unix accounts, the
namespace separation and launching authorization will all occur via database.
This database will also be consulted by the Nimbus service which results in
less maintenance, less duplication of configurations between different
components.  In the upcoming release, the database will be based on SQLite
which restricts Cumulus to living on the same machine as the central Nimbus
service since SQLite is file based.


Cumulus will fall under the same best-effort support policy as other Nimbus
components.  As always, using the mailing lists is advised since you will get
an opportunity for help from the community (this does happen and it is great
to see).

Learn more

For detailed information about Cumulus you can view the branch README but
beware that details are still subject to change:


If you are a developer or veteran administrator, you might be interested in
tracking the integration details here:


Request for feedback

If you have any comments or concerns, please don't hesitate to contact us.  We
would like to hear from you ahead of time about how this might affect you, we
are planning on finishing a release candidate in the next weeks.  As usual, the
release candidate period is also a great time to kick the tires and weigh in
on your issues and specific needs.

The Nimbus project committers

More information about the workspace-announce mailing list