As far as I can determine there is no current documentation on how to build CloudMan instances from scratch. Thus I am collecting my unofficial notes on how to do this here - specifically using the CloudBioLinux deployer.
You will need to navigate the AWS management console and obtain the following information.
access_id
secret_key
Create a directory (e.g. /home/mary/marys_cloudman_bucket_contents
). Copy
the files from an existing CloudMan bucket here (e.g. http://s3.amazonaws.com
/cloudman-dev).
It is not really important how you download these files, but one quick option
is to use s3cmd
tool:
% sudo apt-get install s3cmd # Or your OS's package manager
% mkdir /home/mary/marys_cloudman_bucket_contents
% s3cmd -r get s3://cloudman-dev marys_cloudman_bucket_contents
Here you can update cm.tar.gz or any of these files to match the customized setup you would like. In particular you are going to want to create a custom snaps.yaml file. Here is a simple outline that we will fill out as we good.
version: 1
clouds:
- name: amazon
regions:
- deployments:
- name: GalaxyCloud
filesystems:
- name: galaxy
roles: galaxyTools,galaxyData
snap_id: snap-XXXXXXXXXXX
- name: galaxyIndices
roles: galaxyIndices
snap_id: snap-XXXXXXXXXXXX
default_mi: ami-XXXXXXXXXXXXX
bucket: marys_cloudman_bucket
name: us-east-1
Immediately this template can be updated to reflect the bucket created above and the availability zone you are targetting. We can update the snapid's and the defaultmi after creating them.
Copy and modify settings.yaml
:
% cp settings-sample-cm.yaml settings.yaml
% vim settings.yaml # or your favorite editor
Carefully scan through that file and change the properties marked as requiring
change. The keyword UPDATE
indicates properties of special interest that
either don't have reasonable defaults or have reasonable defaults but that I
have deemed highly likely to be overridden.
Now you can use the CloudBioLinux deployer to launch an image, attach volumes, install biolinux, take needed snapshots, and package the whole thing up:
% ./deploy.sh --action=launch
% ./deploy.sh --action=attach_volumes
% ./deploy.sh --action=install_biolinux --flavor=cloudman/cloudman_and_galaxy
% ./deploy.sh --action=snapshot_volumes
% ./deploy.sh --action=detach_volumes
% ./deploy.sh --action=package
Finally, update snaps.yaml in your bucket directory (e.g.
/home/mary/marys_cloudman_bucket_contents
) to reflect the snap_ids and AMI's
just created. These should all be available via the AWS console or by
reviewing the output of the steps above.
Finally, you can upload your new bucket and launch a test CloudMan instance:
% ./deploy.sh --action=sync_cloudman_bucket
% ./deploy.sh --action=cloudman_launch