Wednesday, May 27, 2009

awstool.py

Since I can't use a Eucalyptus cluster without breaking the usage restrictions on the default ec2-tools apps, I'm writing a set of Python scripts to do the same job. The APIs that the tools use are well-documented and don't have onerous hand-tying usage restrictions.

So that should be 'fully functional' by next week. By fully functional I mean being able to bundle an AMI, upload it to a cloud, and manage it's instances without crashing or screwing up. I'm probably not going to bother supporting stuff that Eucalyptus doesn't support, since the main focus of this is Eucalyptus and not Amazon EC2.

I'll also include a command for saving cloud settings, i.e. "awstool savecloud --ec2-cert --cert --url rightscale" which then lets you do something like "awstool upload-image --cloud rightscale debian-lenny.ami".

Also, pkg-escience has agreed to host the Eucalyptus integration project, so you can follow along at:

git://git.debian.org/git/pkg-escience/awstool.git

Ignore the first commit's e-mail address of 'kmeisthax@Lappy-486'; I forgot to set some config somewhere before I did the initial push.

3 comments:

  1. "Since I can't use a Eucalyptus cluster without breaking the usage restrictions on the default ec2-tools apps"

    Can you please comment on this? I haven't heard about any restrictions yet.

    ReplyDelete
  2. http://aws.amazon.com/asl/ section 3 "Limitations" subsection 3 "Use Limitation":

    The Work and any derivative works thereof only may be used or intended for use with the web services, computing platforms or applications provided by Amazon.com, Inc. or its affiliates, including Amazon Web Services LLC.

    Originally it didn't even have a license at all, but when they added the license grant they tacked on this Use restriction. I don't know how the Eucalyptus people get by it.

    ReplyDelete
  3. If you are reimplementing the EC2 AMI tools, it would be nice if you could follow the exact command line argument syntax for the existing tools, perhaps picking a slightly different prefix for the command names (instead of "ec2-"). Any attempts to "improve" the interface are just going to confuse things for folks who are switching from EC2 or need to use both.

    ReplyDelete