Difference between revisions of "Template:GMOD VM"

From GMOD
Jump to: navigation, search
(New tmpl for gmod vms)
 
m (More tinkerings and updates)
Line 1: Line 1:
{{#if: {{{logo|}}} | [[File:{{{logo}}}|right|400px|{{{name}}}]]|}}
+
<noinclude>
 +
{{GMOD VM
 +
|name=GMOD in the Cloud
 +
|logo=GitcLogo.png
 +
|catchy phrase=What's in the Cloud?
 +
|chado v=
 +
|gbrowse v=
 +
|jbrowse v=
 +
|tripal v=
 +
|webapollo v=
 +
|postgres v=
 +
|drupal v=
 +
|poster=
 +
|tutorial=
 +
|urltmpl=
 +
|extras=
 +
}}
  
{{{name}}} is a virtual server equipped with a suite of preconfigured GMOD components, including a '''Chado''' database, '''GBrowse2''', '''JBrowse''', '''Tripal''', and '''Apollo or WebApollo'''. Users can clone the GMOD Amazon Machine Image (AMI) and create their own server for storing data and making it accessible to the public. Making use of "cloud computing"--hosting data and/or applications on existing networked computer systems--to give users access to preconfigured, extensible servers is an alternative to building and maintaining large computing infrastructure in-house. Potential applications of the GMOD AMI range from short term usage, such as during annotation jamborees, to the long term provision of access to genome data and applications to the community.
+
</noinclude>
 +
{{#if: {{{logo|}}} | [[File:{{{logo}}}|right|400px|{{{name}}}]]|}}
 +
{{{name}}} is a virtual server equipped with a suite of preconfigured GMOD components, including a '''Chado''' database, '''GBrowse2''', '''JBrowse''', '''Tripal''', and '''Apollo or WebApollo'''. Setting up a {{{name}}} instance is quick and easy; it even comes with demo data to explore if you do not have your own. If you are investigating possible tools, {{{name}}} provides an excellent way to assess GMOD components without having to do any installation, and the virtual server can be kept running as long as you need it.
  
==What's {{{catchy phrase}}}===
+
=={{{catchy phrase}}}==
 
{{#if: {{{poster|}}} | [[File:{{{poster}}}|right|300px|{{{name}}} poster]]|}}
 
{{#if: {{{poster|}}} | [[File:{{{poster}}}|right|300px|{{{name}}} poster]]|}}
  
Line 25: Line 43:
 
{{Template:GMOD AMI Info}}
 
{{Template:GMOD AMI Info}}
  
The GMOD in the Cloud AMI has a separate data partition to make backup and updates easy.
+
The virtual machine has a separate data partition to make backup and updates easy.
  
 
Versions 1.1-1.3 of GMOD in the Cloud are compatible with [[Apollo]]; version 2.0 onwards contain [[WebApollo]].
 
Versions 1.1-1.3 of GMOD in the Cloud are compatible with [[Apollo]]; version 2.0 onwards contain [[WebApollo]].
Line 32: Line 50:
  
 
{{{extra info}}}
 
{{{extra info}}}
====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 [http://cloud.gmod.org/ cloud.gmod.org] is a small instance.
 
 
====Build information====
 
 
During the build process for this AMI, I kept fairly extensive notes on exactly what commands I used and what edits I made to configuration files.  See my [https://github.com/scottcain/GMODintheCloud/blob/master/GitC2_build github repository] of these notes for more information.
 
 
 
===Tutorial===
 
===Tutorial===
  
Line 99: Line 109:
 
====PostgreSQL====
 
====PostgreSQL====
  
The [[postgres]] database name is "drupal", and the primary user for that database is also called drupal.  See the database connection parameters in /var/www/sites/default/settings.php for more information.  There is also a postgres account named ubuntu (the same as the login shell user name) that has superuser privileges.  This account has its postgres "search_path" set so that it looks in the Chado schema before the public schema, and so this account should be used when using tools that are intended to interact with Chado (like GBrowse, Apollo and any command line tools from GMOD).
+
Version:
 +
 
 +
Source:
 +
 
 +
The [[postgres]] database name is "drupal", and the primary user for that database is also called drupal.  See the database connection parameters in /var/www/sites/default/settings.php for more information.  There is also a postgres account named ubuntu (the same as the login shell user name) that has superuser privileges.  This account has its postgres "search_path" set so that it looks in the Chado schema before the public schema, and so this account should be used when using tools that are intended to interact with Chado (like GBrowse, Tripal, and any command line tools from GMOD).
  
 
====Drupal====
 
====Drupal====
  
Version 6.28 of Drupal was obtained from http://drupal.org/ and installed in /var/www, so that when navigating with a web browser to the Apache document root (i.e., http://127.0.0.1/ or whatever IP address Amazon assigns your machine), you will get the Drupal home page.
+
Version: {{{drupal v|}}}
  
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.
+
Source: http://drupal.org
 +
 
 +
Installation dir: <code>/var/www</code>
 +
 
 +
When navigating with a web browser to the Apache document root (i.e., http://127.0.0.1/ or whatever IP address your server is given), you will get the Drupal home page.
 +
 
 +
New modules can be added at <code>/data/var/www/sites/default/modules</code> and new themes can be added at <code>/data/var/www/sites/default/themes</code>.
  
 
====Tripal====
 
====Tripal====
  
[[Tripal]] {{{tripal v|}}} is installed at /var/www/sites/all/modules/tripal
+
Version: {{{tripal v|}}}
 +
 
 +
Source: [[Tripal]]
 +
 
 +
Installation dir: <code>/var/www/sites/all/modules/tripal</code>
  
  
Line 128: Line 152:
 
The version of [[GBrowse]]2 that is installed on this machine is {{{gbrowse v|}}}.  The configuration file for the Chado database is /data/etc/gbrowse2  and the yeast configuration file is 07.chado.conf, and for ''P. ultimum'' it is pythium.conf.
 
The version of [[GBrowse]]2 that is installed on this machine is {{{gbrowse v|}}}.  The configuration file for the Chado database is /data/etc/gbrowse2  and the yeast configuration file is 07.chado.conf, and for ''P. ultimum'' it is pythium.conf.
  
GBrowse is configured to use fcgid, a web server "add on" that helps speed up GBrowse.  To use it, use URLs that look like this: <nowiki>http://</nowiki>{{Template:AWSurl}}/fgb2/gbrowse/yeast, and if there are problems with fcgid, you can still use the non-accelerated GBrowse at <nowiki>http://</nowiki>{{Template:AWSurl}}/cgi-bin/gb2/gbrowse/yeast.
+
GBrowse is configured to use fcgid, a web server "add on" that helps speed up GBrowse.  To use it, use URLs that look like this: {{{urltmpl}}}/fgb2/gbrowse/yeast, and if there are problems with fcgid, you can still use the non-accelerated GBrowse at {{{urltmpl}}}/cgi-bin/gb2/gbrowse/yeast.
  
 
====JBrowse====
 
====JBrowse====
  
 
[[JBrowse]] {{{jbrowse v|}}} was installed from a zip file obtained from http://jbrowse.org/ and is installed in
 
[[JBrowse]] {{{jbrowse v|}}} was installed from a zip file obtained from http://jbrowse.org/ and is installed in
<code>/var/www/jbrowse</code>, so that navigating to <nowiki>http://</nowiki>{{Template:AWSurl}}/jbrowse
+
<code>/var/www/jbrowse</code>, so that navigating to {{{urltmpl}}}/jbrowse
 
will give the page.  The configuration file for defining database connection
 
will give the page.  The configuration file for defining database connection
 
parameters and created tracks is in the home directory: <code>~/jbrowse.conf</code>.
 
parameters and created tracks is in the home directory: <code>~/jbrowse.conf</code>.
Line 143: Line 167:
 
====Chado====
 
====Chado====
  
While the [[Chado]] schema was installed by Tripal, the Chado software package
+
While the [[Chado]] schema was installed by Tripal, 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 (<code>perl Makefile.PL; make; sudo make install</code>).  This checkout can be updated with "svn update" like the Tripal svn checkout.
is in the home directory, ~/sources/chado, and was used to install many
+
utility scripts via the standard installation method for Perl modules
+
(<tt>perl Makefile.PL; make; sudo make install</tt>).  This checkout can be updated
+
with "svn update" like the Tripal svn checkout.
+
  
 
====WebApollo====
 
====WebApollo====
Line 155: Line 175:
 
===Phoning home===
 
===Phoning home===
  
Starting with the 1.4 release of GMOD in the Cloud, by default when an instance starts up for the first time, the instance sends an email to the GMOD developers letting them know that an instance has started, what the ID of the AMI was that it was started from, the size of the instance and what its public IP address is. This information will only be used for statistical purposes, primarily for applying for grants. The behavior can be modified in two ways:
+
Starting with the 1.4 release of GMOD in the Cloud, by default when an instance starts up for the first time, the instance sends an email to the GMOD developers letting them know that an instance has started, what the ID of the AMI was that it was started from, the size of the instance and what its public IP address is. This information will only be used for statistical purposes, primarily for applying for grants. The behavior can be modified in two ways:
  
 
====Turning phone home off====
 
====Turning phone home off====

Revision as of 23:35, 20 November 2013


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

Chado logo

GBrowse logo

GBrowse_syn logo

JBrowse logo

Tripal logo

WebApollo logo


Where to find GMOD in the Cloud

{{{download}}}

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.


Getting Started

GMOD in the Cloud is running on {{{os}}}. 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.



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.

{{{phone home details}}}

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:

Source: Drupal website

Installation dir: /var/www

Web URL: /

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:

Source: Tripal svn

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


Chado

Version:

Tripal was used to install the Chado 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:

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:

   /fgb2/gbrowse/yeast

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

   /cgi-bin/gb2/gbrowse/yeast


JBrowse

Version:

Source: JBrowse website

Installation dir: /var/www/jbrowse

Web URL: /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:

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.


{{{name}}} is a virtual server equipped with a suite of preconfigured GMOD components, including a Chado database, GBrowse2, JBrowse, Tripal, and Apollo or WebApollo. Setting up a {{{name}}} instance is quick and easy; it even comes with demo data to explore if you do not have your own. If you are investigating possible tools, {{{name}}} provides an excellent way to assess GMOD components without having to do any installation, and the virtual server can be kept running as long as you need it.

{{{catchy phrase}}}

Chado logo

GBrowse logo

GBrowse_syn logo

JBrowse logo

Tripal logo

WebApollo logo


Where is the Cloud?

Current GMOD in the Cloud instance:

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

(as of December 16, 2013)

The virtual machine has a separate data partition to make backup and updates easy.

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

Important note: Starting with the 2.0 release of GMOD in the Cloud, the AMI "phones home" when started as an instance; that is, it sends an email to the developers to let them know that someone is using it. For more information see below.

{{{extra info}}}

Tutorial

There is a GMOD-centric tutorial for getting started with GMOD in the Cloud.

Directory structure

When you log into your ... , you will be in the ubuntu user's home directory, /home/ubuntu, which is part of the root partition of the machine, and so, if you save anything in this directory, it will be deleted when you move to a new version of the GMOD Cloud. To save items from one machine to the next, it must be saved on your EBS partition, and to make that easier from the home directory, we've put in a link to the /data partition in the home directory named "dataHome", so you can "cd /home/ubuntu/dataHome" or "cd ~/dataHome" to save files in a convenient spot relative to your home directory. Already in this dataHome directory is a file called "bashrc" which is automatically included in your .bashrc when you log in, so if you have changes you'd like to make to your shell environment, you can add those changes here.

There are several other directories that are on the /data partition so they will be saved when you go to a new instance as well. These are:

/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

In all instances, the original files and directories where moved to the /data partition and replaced with symlinks to their new locations. Note that changes made to files in any other locations will be lost. If you find that you must have other files or directories saved, please send an email to gmod-devel@lists.sourceforge.net to request that symlinks be added to future releases.

Updating from previous versions

Instances of GMOD in the Cloud starting from 2.0 can be updated by replacing the /data partition in the new instance with the old /data partition (the one containing your data). For more information on how to do that, see the Updating page.

Installed GMOD software

PostgreSQL

Version:

Source:

The postgres database name is "drupal", and the primary user for that database is also called drupal. See the database connection parameters in /var/www/sites/default/settings.php for more information. There is also a postgres account named ubuntu (the same as the login shell user name) that has superuser privileges. This account has its postgres "search_path" set so that it looks in the Chado schema before the public schema, and so this account should be used when using tools that are intended to interact with Chado (like GBrowse, Tripal, and any command line tools from GMOD).

Drupal

Version:

Source: http://drupal.org

Installation dir: /var/www

When navigating with a web browser to the Apache document root (i.e., http://127.0.0.1/ or whatever IP address your server is given), 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:

Source: Tripal

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


Chado

Tripal was used to install the Chado schema and load ontologies and a GFF file containing yeast genome annotations from SGD, downloaded from yeastgenome.org:

 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. It was downloaded from

 http://icebox.lbl.gov/webapollo/data/pyu_data.tgz

GBrowse2

The version of GBrowse2 that is installed on this machine is . The configuration file for the Chado database is /data/etc/gbrowse2 and the yeast configuration file is 07.chado.conf, and for P. ultimum it is pythium.conf.

GBrowse is configured to use fcgid, a web server "add on" that helps speed up GBrowse. To use it, use URLs that look like this: {{{urltmpl}}}/fgb2/gbrowse/yeast, and if there are problems with fcgid, you can still use the non-accelerated GBrowse at {{{urltmpl}}}/cgi-bin/gb2/gbrowse/yeast.

JBrowse

JBrowse was installed from a zip file obtained from http://jbrowse.org/ and is installed in /var/www/jbrowse, so that navigating to {{{urltmpl}}}/jbrowse will give the page. The configuration file for defining database connection parameters and created tracks is in the home directory: ~/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#Dataset_Selector. This file is the data partition at /data/var/www/jbrowse/jbrowse_conf.json.

Chado

While the Chado schema was installed by Tripal, 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.

WebApollo

WebApollo was installed essentially per the directions on the WebApollo page. In addition to creating an admin user, another user with limited permissions was also created. That user is called "guest" and has "guest" as the password.

Phoning home

Starting with the 1.4 release of GMOD in the Cloud, by default when an instance starts up for the first time, the instance sends an email to the GMOD developers letting them know that an instance has started, what the ID of the AMI was that it was started from, the size of the instance and what its public IP address is. This information will only be used for statistical purposes, primarily for applying for grants. The behavior can be modified in two ways:

Turning phone home off

In order to suppress sending the registration email, you can provide user data when initializing the instance to turn it off. Put this in the user data box:

 NoCallHome : 1

Providing addition details

You can also provide additional details when the instance sends the registration email. You can provide a contact email, name of your organization and the names of the organisms that you intend to use GMOD in the Cloud for. To provide this information, set these items in the userdata box:

 email : your@emailaddress.com
 org : name of your organization
 organism : name of the organism

The additional information will help us when it comes time to apply for grants.