Register with iRODS server by issuing the following command (more details on iRODS will be given shortly):

iinit

You will be prompted for a password. Please type in the password you were provided with on the paper handout!!

The image below shows the topology and the interfaces and the routing that has been set up for the measurement:

Part 1: OMF/OML on ExoGENI

The goal of this part of the tutorial is to instrument the topology that has been created by the tutorial participants in the preceding ExoGENI tutorial. Perform Iperf and nmetrics measurement on top of that instrumented topology and analyze data from that measurement.

1.1 Setting up the ExoGENI slice

1.1.1 THESE STEPS ARE ONLY NECESSARY IF NOT PERFORMED IN EXOGENI TUTORIAL:

The OMF experiment controller (EC) that controls the experiment is based on unique host name and experiment name

After initial boot up ExoGENI nodes host names are always initially set to "debian"

The node names will be automatically set to the correct names by a post boot script (defined in Flukes). The code snippet below shows the section of the post boot script that performs this step (for the case of node A) :

hostname nodeA

The experiment name has to be set to the unique slice name of your ExoGENI request. This is already done in the post boot for this tutorial.

If you want to perform a measurement on a different slice, we here outline the steps to adapt the post boot script for that scenario.

Change the post boot script option to add slice name as the experiment name. Therefore change the existing experiment name "gec14-gimi01" in line five to the experiment that includes your account name. E.g., if your account name is "gimi05" the experiment name has to be changed to "gimi05-gec14"!!

The RCs and the EC communicate via an XMPP server. The GIMI XMPP is running on emmy9.casa.umass.edu. The registration of the RCs and EC for this tutorial is automated in the post boot script. We list the following steps to show you how this can be done manually, if necessary.

First the ExoGENI instances and the experiment slice should be registered with the XMPP server. You can achieve this using the OMF AM by issuing the following command from a terminal in the user workspace. In the following command, please change "gimiXX" to the user name provided to you.

For this tutorial we have an OML server running on emmy9.casa.umass.edu, which collects the measurement data as an sqlite3 database and at the end of the experiment it pushes the data to IRODS.

Here is how you would have to start an OML server if you wanted to run this on a different machine (OML2.8) is required. DO NOT perform this task in the tutorial!!!! This is explained the [OML installation file].

The latest version of OML offers the capability of executing a script after the measurement has finished. In OML terminology this is called a "hook". The following shows the hook script we execute on the OML server which pushes measurement results into iRODS.

1.5 Running the experiment

The following image gives an overview of the different OMF components and how they interact

1.5.1 The experiment will be automatically executed by the OMF EC which is defined by a experiment description file (EDF) written in ruby.

1.5.2 We have prepared the necessary ED files for the experiment described above. The file can be found in the tutorial VM under ﻿~/Tutorials/GIMI/common/tcp_iperf.rb.

1.5.3 We start the experiment running the following command from the user workspace terminal:

1.5.5 Ignore the error messages that are shown during the execution of the experiment. They are essentially warnings! If everything goes well with the experiment, you should see the XMPP messages on the screen stop at this point for few seconds,

Once you have started the experiment in loop and is providing no errors, please open another terminal in you user workspace. Goto "~/Tutorials/GIMI/common" directory, and run the following command to create the visualization of the experiment carried out. Please change "gimi01" in the command to your username.

./tutorial_viz.sh gimi01-tutorial

Please open the firefox browser and type "127.0.0.1/oml.html" to view the visualization!!

The visualization script contains a "R" script to generate pdf/jpg based on the sqlite3 measurement database file generated by the OMLified application. The script is located in ~/Tutorials/GIMI/common/R_script_viz.r.

Part 2: iRODS - GIMI's Measurement Repository

In GIMI, ​iRODS is used as the repository for measurement data. At the moment our iRODS data system consist of three servers (RENCI, NICTA, and UMass) and a metadata catalog (located at RENCI).

We will use part 2 of this tutorial to make the participants more familiar with iRODS and how we use it in GIMI.

After successful completion of part 1 of the tutorial the measurement data from the experiment has been stored in iRODS. We will now look into two options on how this data can be handled.

iRODS command line tools in the user work space:

The GENI ​User Workspace comes already with the iRODS command line tools installed.

If you have not done so far use ​iinit to create a file that contains your iRODS password in a scrambled form. This will then be used automatically by the ​icommands for authentication with the server.

iinit

You will be prompted for a password. Please enter the one given on the paper handout.

The iRODS client uses a configuration file (~/.irods/.irodsEnv) that sets certain parameter for the icommands. Here is and example:

Host/IP: emmy9.casa.umass.edu
Port: 1247
Username: as given on printout
Password: as given on printout

IRODS and OML

In GIMI we have enabled an option in OML2.8 that allows the execution of script. We use this functionality to automatically save measurement results in IRODS after a measurement has successfully completed.

DISCLAIMER

The iRODS service we are offering within the scope of GIMI does NOT guarantee 100% reliable data storage (i.e., we do NOT back up the data). If you are performing your own experiments and want to use iRODS you are absolutely welcome but be aware that we do NOT guarantee recovery from data loss.