Medical Bioinformatics and e-Bioscience

VBrowser

The Virtual Resource Browser (VBrowser) was designed and developed at the Informatics Institute of the University of Amsterdam by Piter de Boer in the VL-e project. More recently (2010) the VBrowser team became part of the the BIGGrid project, and Piter de Boer remains the primary software engineer and driving force in the project. See also the VBrowser website. This program enables access to the grid, both to manipulate data and run workflows, from an easy-to-use user interface. Extensions for the VBrowser (also called VBrowser plug-ins) were developed by the VL-e Medical team to run workflows and monitor jobs on the grid.

The most relevant modifications for eBioInfra users are announced on the e-bioinfra users list.

NOTE: this page has been updated for VLET release 1.4.0 (June 2011)

Getting Started

  1. Check release notes (technical)
  2. Download the latest VBrowser distribution from here .
  3. Unzip the file on some directory. For reference, let's call this directory 'VLET_HOME' (This term will come back in configuration tips and pointers)
  4. Check installation and usage info:
    • VLET_HOME/README.txt
    • VLET_HOME/INSTALL.txt
    • VLET_HOME/doc/UserGuide.pdf
  5. Start the VBrowser:
    • Linux: VLET_HOME/bin/vbrowser.sh
    • MS Windows: VLET_HOME/bin/vbrowser.exe
    • CygWin: PATH=C: ; VLET_HOME/bin/vbrowser.exe
    • Mac OS: VLET_HOME/bin/vbrowser.jar (not fully validated yet)

Java requirement

Recent versions of VBrowser need at least Java 1.6 to function properly. Make sure that you have the right version installed and that the JAVA_HOME environment variable is pointing to the right version.

Authenticating yourself with the grid

The first thing you do is to authenticate yourself with the grid. This is done by creating a grid proxy which is a file containing a temporary key which you must use to access resources on the grid. For security reasons this file can only be used for a limited time. To create a grid proxy you can use your Grid Certificate and your secret Passphrase which combined can create a Grid Proxy for you. To create one interactively, click on the keys icon.

A dialog will appear where you can create your grid proxy.

To create a Grid Proxy, enter your passphrase and press Create. Your grid proxy will be valid for 12 hours if not specified otherwise. You can enter grid proxy creation options, like proxy location (file path) and lifetime (in hours) and VO name in the dialog if needed. Also you can Destroy your grid proxy if you don’t need it anymore. Pressing Create again will refresh your proxy and update it with a new lifetime.

Configuration

To use the VBrowser it is necessary to configure the "resources" (data servers, plugins) to be used. At least the hostname and user identity need to be indicated in the "configuration" or "properties" tabs. All configured properties are stored in separate files in the user's HOME/.vletrc directory.

  1. Start the VBrowser
  2. Configure the data resources as indicated for the LFC
  3. Configure the MOTEUR plugin.
  4. Configure the Job Monitoring plugin.
Note: if you ever wish to reproduce the VBrowser configuration in some other computer, copy the complete .vletrc directory into the HOME directory.

LFC (Logical File Catalog)

Create a new LFC Resource:

on MyVLe, click with right mouse button:

New -> LFC Location

Configure LFC Properties:

Location:

  • hostname: lfc.grid.sara.nl
  • port: 5010 (default)
  • path: Starting path to browse this (server) location (e.g. /~ or /grid/vlemed)
URI Properties:
  • advanced features, not relevant (?)
Server Settings:
  • listPreferredSEs: indicate here the Storage Element (grid sites) where the physical files will be stored. A list is given by separating hostnames by comma (e.g. srm.grid.sara.nl, tbn18.nikhef.nl). If nothing is indicated an SE will be selected automatically from the list of all available SEs for the VO (see also the SE overview for the VO's vlemed and lsgrid as mentioned here. )
  • replicaSelectionMode, replicaCreationMode, replicaNrOfTries, replicaNamePolicy: advanced features, keep default values
Icon Properties:
  • advanced features, not relevant (?)

Operations on LFC Resource:

  • browse files with more than one replica
  • show content of files with more than one replica
  • copy and paste files and directories
  • cannot edit files with replicas (error when trying to save the file)
Special operations:
lfc -> Delete File (including replicas)
replicas -> ? (new commands, check)

To test:

Copy a file to your local disk, rename it , and copy it back to the grid

Example: lfn://lfc.grid.sara.nl/grid/vlemed/animated.gif

MOTEUR 2 plugin

Used to run workflows from the VBrowser.

Configure the mimetypes and to make the plugin visible

  • Copy the mime.types ($VLETHOME/etc/mime.types) to $HOME/.vletrc/mime.types
  • You should edit and change the following line in the mime.types file
application/taverna-scufl          scufl SCUFL 

to

application/taverna-scufl          scufl SCUFL gwendia 

To configure the plugin it is necessary to start it. There are two ways to do this:

1) From the top menu, select 'Tools' -> 'custom' -> 'ViewerMoteur2'.
Note: If you haven't setup a proxy this session, it will complain about the fact you haven'tlogged in yet. Simply click it away for now. We don't need Grid access to change settings. Close the 'VlException' window too.
2) Double-click on a Scufl or a Gwendia document (extensions are .scufl or .gwendia)

  • Open the tab 'Server UI configuration'.
  • Configure 'Web Service URI': This is the url of the server:
https://orange.ebioscience.amc.nl/WorkflowWS/MoteurService
  • Save the new settings by pressing 'Save configuration'. Any problems with invalid input will cause warnings, but the configuration will be saved.
  • Close the window.
When pressing the save button, the plugin attempts to connect to the service and retrieve a version string of the service. This version string tells the client whether it is (still) compatible with the service. If not, you should contact the e-BioInfra administrators.

The MOTEUR plugin is now configured (the settings have been saved on the respective .vletrc file).

Firewall

Ports used by VBrowser (outbound traffic)

Protocol Port Function
SSH 22 if using vterminal
HTTP 80 / 8080 to browse web pages
HTTPS 443 / 8443 to browse secure webpages
BDII 2170 to write new files on LFC
GFTP 2811 to transfer files with grid ftp
LFC 5010 to access LFC at sara
SRM 8443 / 8446 for files on grid
VOMS 30000 - 30003 (Depending on VO!) to create grid proxy

Some Jargon

  • resource is everything that can be connected to with the VBrowser (local files, sFTP servers, GridFTP servers and Logical File Catalog ( LFC). These are represented as icons on the MyVLe root folder
  • plugins are extra programs that can be added to the VBrowser to perform specialized functions, for example, to run workflows ( MOTEUR plugin) and to check the status of jobs running on the grid ( Job Monitoring plugin). Normally these are distributed together with the complete VBrowser
  • hostname referes to the name of the computer where a resource is located, for example, lfc.grid.sara.nl
  • port refers to a network number associated with a resource. Firewalls are used to close network ports and therefore prevent connection to specific programs . For example, it is natural to have only ports 80 and 8080 open, since these connect to web programs. In some cases the VBrowser automatically connects to ports that are not open, so an error occurs. For successful usage of the VBrowser, it is necessary to guarantee that some ports are open for outgoing traffic. See more here
  • .vletrc is a directory created automatically on the local computer where the VBrowser runs, on the home directory of the user. All configurations are stored in this directory.
  • tab is part of the user interface that collects related information.
  • properties are parameters that can be configured to change the behaviour of a program.
  • mimetypes are related to files and the type of data contained in them. Each type of data requires a different program.

Jython

Since Jython is a pure java implementation of Python, Jython can be used to access to full VLET API. To run a Jython script, call the Jython bootstrap script from the VLET installation. The location of this bootstrap script is: VLETINSTALL/bin/jython.sh and the syntax is as follows:

jython.sh example.py

See the examples directory VLET_INSTALL/py/* for example jython scripts.

Command line tools

Besides the graphical interface (VBrowser) that VLET has, there is also command line access to most functionality that VLET offers. This enables systems that are not a UI (don't have a full glite installation) to access data on the grid. The available scripts are listed below. More information and examples is available in the VBrowser documentation itself.

uricopy.sh

This tool can be used to copy files to and from the grid.

#Usage: 
#
# uricopy.sh [-v] [-debug] -D<prop>=<value> [-move] [-force] <sourceVRL> <destinationVRL>
#
# Options:
#   -move            : delete source file or directory. 
#   -force           : always overwrite existing destination. 
#   -mkdirs          : create distination directory 
#   -result          : print resulting URI 
#   -v               : be verbose, specify twice for more. 
#   -debug           : print DEBUG information. 
#   -info            : print INFO  information 
#   
#   -D<prop>=<value> : set (java) system variable or (SRB) property

example:

./uricopy.sh -result file:/home/shayan/alsa-info.sh lfn://lfc.grid.sara.nl/grid/vlemed/shayan/

urils.sh

Using this tool you can list the content of a remote location.

#Usage: 
#
# urils.sh [-l] -D<prop>=<value> <URI>
#
# Options:
#   -l                  : long list, like ls -l  
#   -D<prop>=<value>    : set (java) system variable or VRS property. 
#   -h[elp]             : printout help 

example:

./urils.sh lfn://lfc.grid.sara.nl/grid/vlemed/shayan/

uristat.sh

Using this tool you can retrieve the status of a remote file or directory.

#Usage: 
#
# uristat.sh [-v] [-filestat] [-attrs=<attributes>] -D<prop>=<value> <URI>
#
# Options:
#   -v                  : verbose (use -debug or -info for debug or informative messages) 
#   -filestat           : print out file attributes 
#   -attrs=<attributes> : list of comma separated attribute names. 
#   -D<prop>=<value>    : set (java) system variable or VRS property. 
#   -h[elp]             : printout help 

Resource Folders

There is the option to use 'ResourceFolders'. These folders are almost similar to "MyVle" except their configuration is stored in one file. (Not all configurations can (yet) be stored in these folders.)

Take the following steps:

  • Under MyVle, select New->ResourceFolder
  • Drag and drop your resources from MyVle to this ResourceFolder (choose copy).
  • Drag this ResourceFolder to a local directory
  • You will see a file called 007.vrsx or similar which is an XML file containing the resource description.
  • This vrsx file can be dragged and dropped from/to MyVle. You can even publish this at a website and drop the URL directly on MyVle.

Known Problems

  • If you get a "[JGLOBUS-22] Algorithm not supported." error, you might have created your key with a version of openssl that is not compatible with the VBrowser. This can be remedied by:
    $ openssl rsa -des3 -in userkey.pem -out userkey.pem
  • Error: CA exception
    • Solution: type in the following location at the VBrowser's locationbar, which will ask you to accept the Terena root CA certificate https://www.terena.org/ After that, restart the vbrowser.
  • Error: failed to get transport URIs (version 1.3.2)
    • Solution: install latest version of the VBrowser

Contact Us!

Topic revision: r53 - 2012-05-16 - MahdiJaghouri
 
This site is powered by the TWiki collaboration platformCopyright © 2008-2014 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback