Below are the current feature requests for the StarCluster project that need implementing:
Allow including multiple files in the StarCluster config file. This would allow users to separate their private credentials from their cluster templates. This is really useful if you want to, say, share a common config between members of a group. Each member would have their credentials stored in a separate credentials file, say $HOME/.starcluster/creds, and could then easily pull in the latest config updates from the web, git, etc. For example:
[include ~/.starcluster/creds]
This line would pull in any config sections defined in $HOME/.starcluster/creds. Here’s an example creds file:
[aws info]
aws_access_key_id = #your aws access key id
aws_secret_access_key = #your aws secret access key
aws_user_id = #your aws user id
The main config file, $HOME/.starcluster/config, would then include this file to pick up the credentials:
[global]
default_template = smallcluster
[include ~/.starcluster/creds]
[cluster smallcluster]
cluster_size = 4
keypair = mykey
node_instance_type = m1.large
node_image_id = ami-0af31963
As you can see this removes the private sections from the main StarCluster config file which in turn makes the main config file much easier to share.
Add the ability to configure StarCluster to launch the cluster instances inside of an Amazon VPC. Should just involve adding a SubnetId parameter to the run_instances boto call. Feature requested by Adam Kraut.
Need to subclass starcluster.cluster.Cluster and starcluster.awsutils.EasyEC2 for Eucalyptus to handle the lack of the following API features in ECC:
The following options need to be added to the addnode command:
Dan Yamins has a pull request for this that needs to be merged.
Load balancer should support balancing Sun Grid Engine queues other than just all.q. This is useful if you want to load balance many different queues with varying configurations. In this case you can launch a separate load-balancer process for each queue.
Dan Yamins has a pull request for this that needs to be merged.
It looks like boto supports using an HTTP proxy: http://code.google.com/p/boto/wiki/BotoConfig
Need to add a [proxy] section to the starcluster config that gets passed on to the boto connection.