GenesisII compute endpoints are currently deployed on three FutureGrid HPC resources: XRay, Sierra and India. Additional endpoints are planned for Hotel and Alamo in the near future. This tutorial explains:
GenesisII is a Grid middleware system. Listed below are the key principles/features of the GenesisII design. More information about GenesisII can be found here.
To date, three GenesisII BES endpoints have been deployed on FutureGrid for interoperability testing as well as grid client usage. The endpoints are located on Sierra, India, and Alamo. This section contains the information needed for other grid middleware platforms to connect to the GenesisII BES endpoints.
Each of the GenesisII endpoints supports a number of protocols for staging data into and out of jobs as supported by the JSDL specification’s Data Staging elements. The following are the protocols currently supported by the GenesisII endpoints:
** NOTE: ftp, scp, sftp are supported as per the HPC FSE standard and only for the username/password security token version.
There are two ways a client can use the GenesisII endpoints deployed within Futuregrid: using a standards-compliant non-GenesisII middleware client or using the GenesisII client.
If you wish to use a standards-based middleware client, you may be able to use that client to access the GenesisII BES endpoints within Futuregrid. The first step is to determine whether the grid client software you wish to use is properly compliant with the GenesisII BES implementation. GenesisII BES endpoints have been tested for interoperability against several grid software systems. You will need to contact the developer/vendor of your system to determine if their software is compatible with GenesisII. Depending on how your system works, you will either need to contact your grid system administrator to have him/her add the Futuregrid GenesisII BES endpoints or you will need to provide a reference of the endpoints to the client tooling. In either case, the information you or your grid administrator needs is included in the section above (Connecting to the GenesisII BES Endpoints).
GenesisII has a rich client package available for Windows, MacOS and LINUX platforms that includes UNIX-style command line tools as well as several graphical user interface tools. The University of Virginia maintains a grid called the Cross Campus Grid (XCG) that already includes the FurtureGrid GenesisII BES endpoints in it and is already configured and ready to go. To get started, the first step is to download and install the GenesisII/XCG installation package.
The GenesisII/XCG installers are available at http://www.cs.virginia.edu/~vcgr/wiki/index.php/Genesis_II_Downloads. Choose the platform that matches the machine/OS where you will be running your client and click the corresponding “Download” link to download the installer.
The Linux installer is a shell script named XCG-Installer.sh encoded with the entire GenesisII package inside. Simply execute the shell script (./XCG-Installer in the proper directory) to begin installation. Follow the steps below to answer the installation questions.
The Windows installer is an executable named XCG-Installer.exe. Simply run it like any other executable (e.g. double-clicking) and follow the steps below to answer the installation questions.
Note that currently, the GenesisII software is only tested for Windows XP. However, our early experience with Windows 7 (and Vista) indicates that the client installation will work fine as long as you install GenesisII in a folder that does not have special security meaning to Windows (such as your Documents and Settings directory or C:\).
The MacOS installer is a dmg file named XCG-Installer.dmg encoded with the entire GenesisII package inside. Simply execute the dmg file (e.g. by double clicking) to begin installation. Follow the steps below to answer the installation questions.
The installation process requires answering a few questions about license agreement and configuration options.
Since the installer is specific to the UVA Cross Campus Grid, you have now not only have GenesisII successfully installed, but you have also configured your system to connect to the XCG.
To start using XCG, you will need an XCG account, which is not the same as your local machine account or your FutureGrid resource account. To request an XCG account, fill out the XCG user application form located at http://www.cs.virginia.edu/~vcgr/userrequest.
Once you have an account and have the appropriate GenesisII software installed, you are ready to start a GenesisII grid shell and login.
To start a grid shell start the “grid” executable from the installation directory.
Double click the “grid” file in the installation directory or open a Windows command line window, cd to the installation directory, and enter the grid.exe command.
If you have a Window manager running, double click on the grid binary in the installation directory or Open a shell, cd to the installation directory and enter the grid command
Login Once you have a grid shell open, you need to be logged into your XCG grid account in order to perform more useful commands. First check to see if you are already logged in - the “whoami” command prints out your current credentials. If you are not logged in, it should look like this (the Client Tool Identity is an automatically generated certificate used by GenesisII client commands and does not carry any authentication information):
To login, use the “login” command. The syntax is “login –username=<grid user name>”. After running this command, a popup window will prompt you for your password
The output from the post-login whoami command indicates that you have 2 new certificates - one that asserts that you are user jfk3w, and another that asserts that you have the permissions of the group “uva-idp-group.2010”. The XCG uses the uva-idp-group.2010 to set permissions for all approved XCG users. Your membership in this group is done by XCG administrators when your account is created. If you later create new groups or are added to other existing groups, your login will automatically acquire the extra credentials to assert that you are a member of that group (assuming the group allows you access).
To learn how the basics about executing and monitoring jobs using GenesisII and the XCG, please refer to XCG Tutorial document.
To get help using the XCG send email to the UVA Computational Science and Engineering (UVACSE) group at uvacse@virginia.edu. You can also use the GenesisII web site and the XCG web site to look at further documentation and FAQs