ElastiCluster aims to provide a user-friendly command line tool to create, manage and setup computing clusters hosted on cloud infrastructures (like Amazon's Elastic Compute Cloud EC2, Google Compute Engine, or a private OpenStack cloud). Its main goal is to get your own private cluster up and running with just a few commands; this video demoes ElastiCluster setting up a computational batch-queueing cluster.
Complete documentation for ElastiCluster is available on the Read The Docs website. General discussion over ElastiCluster's usage, features, and bugs takes place on the [email protected] mailing-list (only subscribers can post).
The ElastiCluster project is an effort of the Services and Support for Science IT (S3IT) unit at the University of Zurich, licensed under the GNU General Public License version 3.
ElastiCluster is in active development, and offers the following features at the moment:
- INI-style configuration file to define cluster templates
- Can start and manage multiple independent clusters at the same time
- Automated setup of:
- Growing and shrinking a running cluster.
ElastiCluster is currently in active development: please use the GitHub issue tracker to file enhancement requests and ideas, or the mailing-list for discussion.
We appreciate pull requests for new features and enhancements. Please use the master branch as starting point.
The 1.3 release is nearing, which has seen quite some changes from the 1.2 code that's on PyPI. For the moment, you are therefore encouraged to run the development code from GitHub (click to see installation instructions) and report on any bugs you find!
Note: ElastiCluster is a Python program; Python version 2.6 or 2.7 is required to run it. Python 3 is not (yet) supported.
After ElastiCluster is installed, run this command to deploy an example configuration file:
elasticluster list-templates
The configuration file is located in .elasticluster/config; adjust it to your liking using the configuration reference.