Hi Marcel,

On Thu, Dec 1, 2011 at 10:35 PM, Marcel Schumann <schumann@informatik.uni-tuebingen.de> wrote:
Hi Brad, hi Enis,

ok, so one possible way should thus be to use the  _cleanup_ec2() function before creating an AMI via the amazon console and the second option perhaps is this share-a-cluster functionality.

About the latter: sorry, I tried to find out what it really does, but did not find any documentation of it. So, how does this share-a-cluster functionality work in principle? If it does not create AMI, does it just create snapshots of the individual disks that users have to mount (manually) or ... ?
My point here is: I need to make a modified version of GalaxyCloudman available (i.e. one that contains the CADDSuite tools). I do not just want to share an _instance_ (a running cluster) but a cloudman image (as an AMI or by some other means) that includes all my tools, so that other users can easily start their own server.
The share-an-instance functionality creates snapshot the data volume (/mnt/galaxyData) so any tool that is installed on that file system will get bundled into the shared instance. Also, any modifications that you make to you galaxy configuration (e.g., galaxy_tools.xml) become part of the shared instance. When a user then starts a new cluster and provides the cluster share string (this is available on the shared cluster after you share it), they will get access to an exact replica of your cluster. Like, I mentioned earlier, unless you are modifing system libraries there is absolutely no reason to create a new AMI. Simply contain your customizations to the file system and use cluster sharing functionality. Try it and see if it does what you need it to do.   

If you do indeed have a description of this somewhere that I just did not find, then I am sorry but would be grateful for a link ;-)

Sorry but there's no functionality about this feature on the wiki. However, there is a pretty detailed description of the functionality and the process on the cloudman console after you click the green share a cluster button. I'll work on preparing some additional documentation on this topic. 

Enis

Cheers,
Marcel



On 12/1/11 10:04 PM, Brad Chapman wrote:

Marcel;

well, I know I do not have to create a new AMI if I want to reuse an
instance myself.

However, I would like to share the modified GalaxyCloudman version with
other people and therefore I do have to create an AMI.

What Enis was suggesting is using the share-a-cluster functionality
built into CloudMan. This bundles your data volumes as snapshots and
prepares a sharable cluster than anyone can initiate.

In the CloudMan interface, there is a little green button next to the
cluster name that enables this. That is definitely the easiest way to
share and distribute modified CloudMan versions.

Ok, I will try to make this work somehow ... but I guess there are no
immediate clues as to what could have gone wrong? Or do you have any
ideas what I should try?

After CloudMan boots once, you need to clean up some files before
preparing an AMI. This is the automated code we use to clean up for
prepping CloudMan compatible AMIs:

https://github.com/chapmanb/cloudbiolinux/blob/master/cloudbio/cloudman.py#L87

Be careful if you run that directly. It runs immediately before bundling
and removes the ssh keys (so you don't have a backdoor to the AMI you
are distributing) so you want to do it as the last thing. It also
assumes you have unmounted all of the associated Galaxy data libraries.

Hope this helps,
Brad



--
Marcel Schumann

University of Tuebingen
Wilhelm Schickard Institute for Computer Science
Division for Applied Bioinformatics
Room C313, Sand 14, D-72076 Tuebingen

phone:  +49 (0)7071-29 70437
fax:  +49 (0)7071-29 5152
email:  schumann@informatik.uni-tuebingen.de