Cloud

From GMOD
Jump to: navigation, search
GMOD in the Cloud

GMOD in the Cloud is a GMOD virtual server equipped with a suite of preconfigured GMOD components, including a Chado database, GBrowse2, JBrowse, Tripal, and Apollo or WebApollo. Setting up a GMOD in the Cloud instance is quick and easy; it even comes with demo data to explore if you do not have your own. If you are investigating GMOD for the first time, GMOD in the Cloud provides an excellent way to assess GMOD components without having to do any installation; for longer-term uses, the virtual server can be kept running as long as required, and data can easily be moved when new versions of GMOD in the Cloud are released.


What's in GMOD in the Cloud

GMOD in the Cloud poster

Chado logo 1.23

GBrowse logo 2.55

GBrowse_syn logo

JBrowse logo 1.10.12

Tripal logo 1.1

WebApollo logo 11/22/2013

Visit a GMOD in the Cloud demo server

Where to find GMOD in the Cloud

  • Amazon AMI ID: ami-a9d7f9c0 (in the US East-Virgina zone);
  • Name: GMOD in the Cloud 2.05

(as of December 16, 2013)

Important note: GMOD in the Cloud includes a small script that sends an email to the GMOD developers to let them know that someone is using a GMOD in the Cloud instance. GMOD uses this to track the popularity of virtual GMOD installations for grants and funding purposes. For more information, see the phoning home section below.

Versions 1.1-1.3 of GMOD in the Cloud are compatible with Apollo; version 2.0 onwards contain WebApollo.

About instance types

While GMOD in the Cloud 2.0 will run as a micro instance, it won't run well. Specifically, running GBrowse with FastCGI will have a hard time, and WebApollo won't work at all. The demo instance running at cloud.gmod.org is a small instance.

Build information

Scott has fairly extensive notes on the configuration file edits and the commands used when building GMOD in the Cloud. See his github repository for more information.

Getting Started

GMOD in the Cloud is running on Ubuntu 12.04 LTS. The virtual machine is split into two partitions, root and data. All user information should be kept in the data partition to make backup and updates easy.

Step-by-step instructions for starting up GMOD in the Cloud can be found at the GMOD Cloud Tutorial.


Directory Structure

When you first log in to the virtual machine, you will be in the ubuntu user's home directory, /home/ubuntu, on the root partition of the machine. We recommend that any information that you want to save be kept in the data partition. There is a link to the data partition called dataHome, so you can easily change directories by running cd /home/ubuntu/dataHome or cd ~/dataHome. The dataHome directory contains a bashrc (bash shell configuration file) that is automatically executed when you log in, and any shell environment changes you want to make should be added to this file.

There are several other important directories that have been moved to the data partition. In all cases, the original files have been replaced by symlinks, so changes made to the files noted below are picked up as if the files were in their original locations. If you need other files moved to the data partition, please email the GMOD developers list so that we can incorporate the changes into future iterations of GMOD in the Cloud.

/data/etc/gbrowse The config directory for GBrowse.
/data/etc/postgresql The config directory for PostgreSQL
/data/opt A good place to install any other software you want to use
/data/var/lib/gbrowse2 Other GBrowse files that might be modifed on your instance, including user session data and flat file databases.
/data/var/lib/postgresql Files for the PostgreSQL database
/data/var/www/.htaccess The htaccess file for the main Drupal site
/data/var/www/jbrowse/jbrowse_conf.json Config file for JBrowse
/data/var/www/jbrowse/data All of the data files needed for running JBrowse
/data/var/www/sites/default Site-specific files and directories for Drupal; modules and themes go here (though Tripal is in /var/www/sites/all)
/data/webapollo WebApollo data
/data/var/lib/tomcat7/webapps/WebApollo/config Config options for WebApollo
/data/usr/share/tomcat7/bin setenv.sh for tomcat; used to increase allocated memory for tomcat

Note that changes made to files in any other locations will be lost.

Updating from previous versions

Instances of GMOD in the Cloud can be updated by replacing the data partition in the new instance with the data partition from the old instance. For more information, see the updating guide.

Phoning home

When a GMOD in the Cloud server starts up for the first time, it sends an email to the GMOD developers with information about the instance. These data are kept private and are strictly for statistical purposes, primarily for funding and grant applications.

The script currently sends the following information:

  • the ID of the AMI being used
  • the size of the instance (micro, small, medium, etc.)
  • public IP address

If you would like to send more information, this would be very helpful. You can provide this information in the userdata box when configuring the instance. The following information is optional, but helpful to GMOD:

  • email: your email address
  • org: your organization
  • organism: the organism(s) you are working on

To disable the phone home email, put the following in the user data box:

NoCallHome: 1

Installed GMOD software

PostgreSQL

Database name: drupal

Username: drupal

See the Postgres database connection parameters in /var/www/sites/default/settings.php for more information.

There is also a Postgres user named ubuntu with superuser privileges. The Postgres search_path for this user is set to look in the Chado schema before the public schema; this account should be used for tools that interact with Chado (e.g. GBrowse, Tripal, and any command line tools from GMOD).


Drupal

Version: 6.28

Source: Drupal website

Installation dir: /var/www

Web URL: ec2-##-##-##-##.compute-1.amazonaws.com/

When navigating with a web browser to the Apache document root (i.e., http://127.0.0.1/ or the IP address of your server), you will get the Drupal home page.

New modules can be added at /data/var/www/sites/default/modules and new themes can be added at /data/var/www/sites/default/themes.


Tripal

Version: 1.1

Source: Tripal svn

Installation dir: /var/www/sites/all/modules/tripal


Chado

Version: 1.23

Tripal was used to install the Chado 1.23 database schema and load ontologies and a GFF file containing yeast genome annotations from SGD (source: http://downloads.yeastgenome.org/curation/chromosomal_feature/saccharomyces_cerevisiae.gff), as well as a sample GFF contig file output from MAKER for the Pythium ultimum (source: http://icebox.lbl.gov/webapollo/data/pyu_data.tgz).

The Chado software package is in the home directory, ~/sources/chado, and was used to install many utility scripts via the standard installation method for Perl modules (perl Makefile.PL; make; sudo make install). This checkout can be updated with "svn update" like the Tripal svn checkout.


GBrowse2

Version: 2.55

The configuration file for the Chado database is /data/etc/gbrowse2; config files for the demo data: yeast: 07.chado.conf; P. ultimum: pythium.conf.

GBrowse is configured to use fcgid, a web server add-on that helps speed up GBrowse. To use it, your GBrowse URLs should look like this:

   ec2-##-##-##-##.compute-1.amazonaws.com/fgb2/gbrowse/yeast

If there are problems with fcgid, you can still use the non-accelerated GBrowse at

   ec2-##-##-##-##.compute-1.amazonaws.com/cgi-bin/gb2/gbrowse/yeast


JBrowse

Version: 1.10.12

Source: JBrowse website

Installation dir: /var/www/jbrowse

Web URL: ec2-##-##-##-##.compute-1.amazonaws.com/jbrowse

Configuration file (defines database connection parameters, tracks): ~/jbrowse.conf.

The Pythium dataset was created in a way similar to the JBrowse tutorial and using the configuration file ~/pythium-1.conf.

JBrowse was configured to have multiple datasets using the jbrowse_conf.json file as described in the JBrowse configuration guide. This file is at /data/var/www/jbrowse/jbrowse_conf.json.


WebApollo

Version: 11/22/2013

WebApollo was installed per the directions on the WebApollo page. In addition to the admin user, a second user with limited permissions was created with username: "guest", password: "guest".

Check out the WebApollo setup instructions specific to the VM for help in setting up your data.