Training Day

If you are planning on attending any of these GCC2012 Training Day workshops, then you will need shell admin access to a system with Galaxy and/or a Galaxy Tool Shed already installed and running.

If you are attending this workshop

you will need shell admin access to a system that has Galaxy's prerequisites installed, but not Galaxy itself.

Training Day Virtual Machines

We strongly recommend using a Galaxy provided virtual machine for the hands-on parts of the workshops.

A virtual machine, or VM, enables you to run a different operating system on your computer, from within your existing operating system. For these workshops we will use VM images to run a fully configured Linux instance on participants' laptops. This will allow you to switch between your native/host operating system (Windows, Mac OS, Linux) and the guest Galaxy Linux operating system, without having to shut either down.

Using a virtual machine ensures that you will be running with the same configuration as the instructor. It also relieves you from having to setup your instance and installing prerequisites. With the Galaxy provided VMs you will also receive support from the instructors and you fellow attendees. It is possible to use your own system during the workshops, but if you do, you won't be able to get support from the instructors or fellow attendees when you hit a bump.

What Do I Need to Do?

You will need to do two things before Training Day starts. These steps take some time, and require downloading large files, so please do not postpone this until you arrive. Downloading files of this size at the UIC Forum would be painfully slow, and would adversely affect your fellow students.

So, please do these steps before you arrive.

Virtual Machine Images

1. Install VirtualBox on your laptop

Download and install the appropriate package from this link: https://www.virtualbox.org/wiki/Downloads

2. Install needed VM(s) on your laptop

These VMs will be available for download in the days just before the conference. You will want to download them before arriving at the meeting, because they are very large files and will take too much time to download over the conference network.

VM Without a Running Galaxy

This VM is for:

This image will have all prerequisites for Galaxy, but not a running Galaxy instance.

VM With a Running Galaxy

This VM image is for these workshops

This image will have a configured and running Galaxy instance.

How do I use the VM(s)?

Screenshots
Appliance Import Settings Window; click to enlarge
1.3. Appliance Import
VM successfully imported; click to enlarge
1.4. VM Imported
VM settings; click to enlarge
1.5.1 VM settings
Port forwarding rules; click to enlarge
1.5.3 Port forwarding rules
Mouse Pointer info window; click to enlarge
2.1. An info screens
List of defined users; click to enlarge
2.2. Defined users
The XFCE Desktop; click to enlarge
2.3. The XFCE Desktop

This section will include directions on how to start up, access, and use these virtual machines on your laptop.

1. Import the VM into VirtualBox

  1. First, make a backup copy of the downloaded .ova file(s). If something goes wrong you can always make a new copy.
  2. Import the VM image into VirtualBox by either starting the downloaded .ova file directly, or by launching VirtualBox and navigating to File → Import Appliance and opening the file.
  3. This will display the Appliance Import Settings window. Click the Import button.
  4. It may then take several minutes for VirtualBox to import the VM. Once it is done, a new VM will appear in the left pane in the 'powered off' state.

The VM is now installed.

1.5. Enable Laptop Browser to Access VM

Note: If you got your VM from a thumb drive at the workshop, then this step has already been done. You only need to do this if you downloaded the VM from the internet.

We need to enable port forwarding so that the the host (your laptop's native operating system) can access Galaxy and Toolshed servers running on the VM as follows.

  1. Select it so it's highlighted then select Settings.
  2. Select Network → Adapter 1 → Advanced \&rarr Port Forwarding.
  3. Add these 4 rules:
Name Protocol Host IP Host Port Guest IP Guest Port
Rule 1 TCP 127.0.0.1 8080 8080
Rule 2 UDP 127.0.0.1 8080 8080
Rule 3 TCP 127.0.0.1 9090 9090
Rule 4 UDP 127.0.0.1 9090 9090
This is less tedious if you type in the first rule and then copy and modify it for the next 3

2. Start VM and Get Its IP Address

The IP address can used to access the VM from tools on the host (your laptop)

  1. Double-click on the new VM in the left panel of VirtualBox. This starts the VM and displays two informational messages about regaining control of your keyboard and mouse from the VM. Click OK for both.
  2. A screen showing the defined users on this machine is shown. Click on the trainingday user and then enter the password listed below.
  3. This will log you in and show the XFCE desktop.
  4. Click on the terminal icon at the bottom center of the GUI.
  5. sudo ifconfig and note the ip address assigned to eth0 - that's where you will be able to connect a browser running on the local machine (host) to servers running on the VM (guest).

3. To start a Galaxy and a local Toolshed (Workshop 1)

  1. Open a terminal.
  2. cd galaxy-central.
  3. sh startAll.sh.

From the host machine, point your browser at ([VM-ip] = the eth0 ip address you found above) http://\[VM-ip]:8080

and a local toolshed at http://\[VM-ip]:9090

Use sh stopAll.sh then sh startAll.sh to restart these servers if you make changes that require a Galaxy restart.

4. Using XFCE

XFCE is a desktop manager for Linux. Unlike the more common Gnome and KDE managers, XFCE is relatively lightweight and has the advantages of keeping the VM image size small, and having a somewhat familiar look and feel.

... more to come.

Usernames and Passwords

Username Password Defined On VM Comments
WS5 WS1/6/7
shell trainingday 12345 Y Y Has full sudo capability
Galaxy UI Admin test@bx.psu.edu testuser N Y Logging in to your Galaxy server with this username will give you admin privileges in the Galaxy User Interface.
Postgres Galaxy Login N Y These are the credentials Galaxy uses to connect to Postgres. They are stored in the universe.wsgi}} file.
Tool Shed UI Admin test@bx.psu.edu testuser Y Y Both instances come with a preinstalled Tool Shed

Technical Details

Which distribution was used; how much virtual disk and memory does it have; what software was installed on top of the distribution, and so on.

Distribution Ubuntu 12.04, 32 bit, ...
GUI Xfce
Memory 2GB
Disk 10GB

Additional Software Installed

Both VMs

Any custom configuration is described below.

Tool/Package Comments
PostgreSQL Used by Galaxy, Tool Shed
Mercurial Source code control system used in Galaxy
Emacs, vim, pico/nano Text editors.
Galaxy Source Code
Galaxy Tool Shed
ncurses development library Needed for Tool Shed
zlib development library
g++ and standard C and C++ development libraries
cmake
git
Python 2.6
Eclipse Needed for Tools and Data Sources Workshop
hg and Python Eclipse plugins
nginx or Apache proxy that accepts byte-range requests would be good
PostgreSQL GUI

WS5 VM Only

Tool/Package Comments

WS1, WS6, WS7 VM Only

Tool/Package Comments
Galaxy Instance

Additional Configuration Details

Galaxy Tool Shed

Local Tool Shed running on port 9009. The local toolshed has been added to the local tool_sheds_conf.xml.