Open Source Tools for Amazon EC2 Management
Rain Toolkit is a set of command line tools that makes it easier to manage Amazon EC2 resources, such as virtual machines, volumes, snapshots and others.
Rain Toolkit commands allow you to manipulate virtual machines and its components in a more sysadmin-friendly way.

Rain Toolkit is free software under the terms of the GNU General Public License as published by the Free Software Foundation. Rain Toolkit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY.
Amazon EC2 is a cloud computing service provided by Amazon.com.
Amazon already provides a set of command-line tools to manage EC2 resources. They allow stopping/starting instances, allocating ip addresses and volumes, attaching/detaching volumes, etc.
However, when one starts using these tools to manage day-to-day operations it becomes clear that they have some limitations:
- They are too fine grained, each tool dealing with a single EC2 object at a time. While this is great from a software design point of view, combining these tools to automate complex operations can be challenging.
- The tools operate in an asynchronous way, reflecting the underlying EC2 platform workings. This makes scripting more complex as there is the need to poll in order to wait for an operation to complete.
- They do not support friendly naming of EC2 resources, relying instead in EC2 object identifiers (like i-c4c026ac or vol-a5d83ecc) which are not intended to be human-readable.
Rain Toolkit solves all that by providing a set of command line tools based on the concept of virtual machine, a concept familiar to anyone who has used any traditional virtualization platform (VirtualBox, VMWare, etc.).
Rain Toolkit commands allow you to manipulate virtual machines and its attachable components (volumes and elastic IP addresses) in a more sysadmin-friendly way by creating an inventory of Virtual Machine metadata that gets stored in Amazon Simple DB.
Last Update: 04/04/2011
Features:
Support for micro instances
Support for ebs-backed instances
Support for Amazon Virtual Private Cloud (VPC) - Labeling of instances (virtual machines), volumes, snapshots, etc.
- Automation of common instance startup actions such as attach volumes, associate ip address, run startup scripts, and others.
- Storage of EC2 virtual machine meta information using Amazon Simple DB.
Rain Toolkit is based on other great open source software:
- AWS SDK for Java : A Java client library for a variety of Amazon Web Services.
- Simplejpa : Java Persistence API for Amazon SimpleDB.
- cli-parser : Command Line Interface Parser for Java.
To report bugs, request enhancements and access the source code, please visit Rain Toolkit page on kenai.com:
All command line tools are designed to provide meaningful exit values (0 on success) so they can easily be used inside shell scripts.
- Creating a virtual machine in RainToolkit is as easy as:
create-virtual-machine -n myMachineName -i <ami-id>
start-virtual-machine -n myMachineName
create-volume -name myVolume -size 500 -z u-east-1c
describe-virtual-machines Name Uptime DnsName InternalIpAddress InstanceId test-server none none none none website 200d00:21 ec2-174-129-201-163.compute-1.amazonaws.com 10.248.241.236 i-c4c026ac
For more information, detailed installation and usage instructions, please check the tools documentation page:
HOME 