Changes between Initial Version and Version 1 of GIMIAcceptanceTests/GIMITest8.7.2012


Ignore:
Timestamp:
08/07/12 13:47:37 (12 years ago)
Author:
Jeanne Ohren
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GIMIAcceptanceTests/GIMITest8.7.2012

    v1 v1  
     1[[PageOutline]]
     2
     3= GIMI Testing executed on 8/7/2012 =
     4
     5[[BR]]
     6[wiki:GIMIAcceptanceTests/TestStatus Status of All Tests]
     7[[BR]]
     8[[BR]]
     9[[BR]]
     10
     11
     12||  '''Step'''  ||   '''Status'''  || '''Open Tickets''' ||
     13|| 1.  [wiki:GIMIAcceptanceTests/GIMITest8.7.2012#a1.Establishtestexperimentenvironment  Establish test/experiment environment] ||  ||  ||
     14|| 2.  [wiki:GIMIAcceptanceTests/GIMITest8.7.2012#a2.ObtainsliceofGENIresourcesinstallandconfigureGIMIIMtools Obtain slice of GENI resources, install and configure GIMI I&M tools] ||  ||  ||
     15|| 3.  [wiki:GIMIAcceptanceTests/GIMITest8.7.2012#a3.RunandorchestrateGIMIIMtoolsandreferenceactualexperiment Run and orchestrate GIMI I&M tools and reference/actual experiment] ||   ||  ||
     16|| 4.  [wiki:GIMIAcceptanceTests/GIMITest8.7.2012#a4.PushIMmeasurementresultstoiRODSarchiveservice Push I&M measurement results to iRODS archive service] ||  ||  ||
     17|| 5.  [wiki:GIMIAcceptanceTests/GIMITest8.7.2012#a5.PullIMmeasurementresultsfromiRODSarchiveservicetoUWiREEL Pull I&M measurement results from iRODS archive service to UW for processing] || ||||
     18|| 6.  [wiki:GIMIAcceptanceTests/GIMITest8.7.2012#a6.ObserveIMmeasurementresultsonGIMIpresentationservice Observe I&M measurement results on GIMI presentation service] ||  ||  ||
     19|| 7.  [wiki:GIMIAcceptanceTests/GIMITest8.7.2012#a7.PushAnalysisResultstoiRODSarchiveservice Push Analysis Results to iRODS archive service] ||  ||  ||
     20|| 8.  [wiki:GIMIAcceptanceTests/GIMITest8.7.2012#a8.Releaseresourcesandcleanup Release resources, and cleanup] ||  ||  ||
     21
     22== 1.  Establish test/experiment environment ==
     23
     24[[Image(wiki:JOhrenSandbox/GIMINotes8.1.2012:GIMIEnvironment.png)]]
     25
     26
     27=== User Workspace ===
     28Same as [wiki:JOhrenSandbox/GIMITest8.7.2012#a1.Establishtestexperimentenvironment 8.1.2012 configuration].
     29
     30=== iRODS server ===
     31Same as [wiki:JOhrenSandbox/GIMITest8.7.2012#a1.Establishtestexperimentenvironment 8.1.2012 configuration].
     32
     33=== OML server ===
     34  * Installed on pc41.emulab.net
     35  * Upgraded oml2_server, liboml2-0, and libocomm0 to version 2.8.1
     36  * Started oml2-server on the command line
     37{{{
     38$ oml2-server --listen=3003 --data-dir=/users/johren/gimi --logfile=/users/johren/oml_server.log -H /users/johren/oml2-server-hook.sh
     39}}}
     40  * Configured hook script to use my iRODS server
     41{{{
     42***************
     43*** 23,31 ****
     44  # THE SOFTWARE.
     45  #
     46  irodsUserName=rods
     47! irodsHost=emmy8.casa.umass.edu
     48  irodsPort=1247
     49! irodsZone=geniRenci
     50  export irodsUserName irodsHost irodsPort irodsZone
     51 
     52  # XXX: You might need to initialise the iRODS password for the UNIX user
     53--- 23,31 ----
     54  # THE SOFTWARE.
     55  #
     56  irodsUserName=rods
     57! irodsHost=pc41.emulab.net
     58  irodsPort=1247
     59! irodsZone=bbnZone
     60  export irodsUserName irodsHost irodsPort irodsZone
     61 
     62  # XXX: You might need to initialise the iRODS password for the UNIX user
     63}}}
     64  * Configured /etc/omf-expctl-5.4/omf-expctl.yaml to point to my OML server (can also be specified on the command line)
     65{{{
     66      # URI to the OML server to use for this EC
     67      # (can be overwritten on the EC command line)
     68      :omluri: 'tcp:pc41.emulab.net:3003'
     69}}}
     70
     71
     72== 2.  Obtain slice of GENI resources, install and configure GIMI I&M tools ==
     73  * Used omni to create the slice and the sliver on ExoSM aggregate
     74  * Rspec includes an execute service for each node that downloads [https://github.com/johren/GENI-UserWorkspace/blob/master/GIMI/gimi-postboot.sh gimi-postboot.sh] from the web server (on pc41.emulab.net) and runs it with the slicename and nodeid parameters
     75{{{
     76    <services>
     77      <execute command="wget -q -P /tmp http://pc41.emulab.net/gimi-postboot.sh ;chmod +x /tmp/gimi-postboot.sh;/tmp/gimi-postboot.sh %SLICENAME% NodeB > /tmp/gimi-postboot.log" shell="/bin/sh"/>
     78    </services>
     79}}}
     80  * Inputs:
     81    * [https://github.com/johren/GENI-UserWorkspace/blob/master/GIMI/gimi-template.rspec rspec template] - %SLICENAME% must be replaced by the slice name when using this script
     82  * Output:
     83    * slice manifest
     84    * slice login information
     85    * all nodes are ready to run the experiment
     86       * hostname is set
     87       * oml2-iperf installed
     88       * RC is configured and running
     89
     90== 3.  Run and orchestrate GIMI I&M tools and reference/actual experiment  ==
     91  * Run the tcp_iperf.rb script using the EC on the UW VM
     92{{{
     93$ omf-5.4 exec --no-cmc -S johGIM1208011452 tcp_iperf.rb -- --source1 johGIM1208011452-NodeA --sink johGIM1208011452-NodeC
     94}}}
     95  * Inputs:
     96    * slicename
     97    * tcp_iperf.rb
     98  * Outputs:
     99    * sq3 database file on the OML server
     100
     101== 4.  Push I&M measurement results to iRODS archive service  ==
     102  * This is done by the oml2-server-hook.sh script
     103  * I had to do a lot of modification to this script because it is very tailored to the OML server configuration
     104     * Pulls filename and username from the path of the file so it is very dependent upon the filesystem configuration of the server (e.g. home directories are in /users instead of /home)
     105{{{
     106!                                         NAME=${DBFILE:12:6};
     107!                                         FILE=${DBFILE:12};
     108-----------
     109!                                         NAME=${DBFILE:7:6};
     110!                                         FILE=${DBFILE:19};
     111}}}
     112     * Had to make some changes to the ichmod commands to get it to work with my iRODS server
     113{{{
     114!                                             ichmod -M own $NAME /geniRenci/home/$NAME/$FILE
     115!                                             iput -f ${DBFILE} /geniRenci/home/$NAME/$FILE;
     116!                                             imeta add -d /geniRenci/home/$NAME/$FILE Date ${DATE}
     117!                                             imeta add -d /geniRenci/home/$NAME/$FILE UserName $NAME
     118!                                             imeta add -d /geniRenci/home/$NAME/$FILE SliceName $SLICE
     119--------
     120!                                             ichmod -M own rods /bbnZone/home/$NAME
     121!                                             iput -f ${DBFILE} /bbnZone/home/$NAME/$FILE;
     122!                                             ichmod -M own $NAME /bbnZone/home/$NAME/$FILE
     123!                                             imeta add -d /bbnZone/home/$NAME/$FILE Date ${DATE}
     124!                                             imeta add -d /bbnZone/home/$NAME/$FILE UserName $NAME
     125!                                             imeta add -d /bbnZone/home/$NAME/$FILE SliceName $SLICE
     126}}}
     127  * The hook script currently expects the usernames to begin with "gimi".  I had to modify my script to look specifically for my username.  '''This will not currently work on emmy9 when experimenters use their own credentials'''
     128{{{
     129!                                           if [[ $NAME =~ ^gimi[0-9] ]]; then
     130--------
     131!                                           if [[ $NAME =~ ^johren ]]; then
     132}}}
     133  * Inputs:
     134    * oml2-server-hook script running on the OML server
     135    * sq3 database file on the OML server
     136  * Outputs:
     137    * sq3 database file in experimenter's home location on the iRODS server
     138    * experimenter is able to iget the sq3 file
     139
     140== 5.  Pull I&M measurement results from iRODS archive service to UW/iREEL ==
     141  * Ran the tutorial_viz.sh command to pull the results from iRODS and run the R script on it to create the images
     142 
     143  * Inputs:
     144     * sq3 file is accessible in the experimenter's home location on the iRODS server
     145  * Outputs:
     146     * visualization images available on the web server on the UW
     147
     148== 6.  Observe I&M measurement results on GIMI presentation service  ==
     149
     150
     151  * Inputs:
     152    * None
     153  * Outputs:
     154    * visualization images viewable in the web server on the UW
     155
     156== 7.  Push Analysis Results to iRODS archive service  ==
     157
     158
     159  * Inputs:
     160    * visualization images in UW
     161  * Outputs:
     162    * visualization images viewable in iRODS
     163
     164== 8.  Release resources, and cleanup  ==
     165  * Used omni to delete the sliver
     166  * When should the data on the OML server be cleaned up?
     167  * Inputs:
     168      * slice name
     169  * Outputs:
     170      * sliver has been deleted