Version 12 (modified by 12 years ago) (diff) | ,
---|
-
GIMI Testing executed on 8/7/2012
- 1. Establish test/experiment environment
- 2. Obtain slice of GENI resources, install and configure GIMI I&M tools
- 3. Run and orchestrate GIMI I&M tools and reference/actual experiment
- 4. Push I&M measurement results to iRODS archive service
- 5. Pull I&M measurement results from iRODS archive service to UW/iREEL
- 6. Observe I&M measurement results on GIMI presentation service
- 7. Push Analysis Results to iRODS archive service
- 8. Release resources, and cleanup
GIMI Testing executed on 8/7/2012
1. Establish test/experiment environment
User Workspace
Same as 8.1.2012 configuration.
iRODS server
Same as 8.1.2012 configuration.
OML server
- Installed on pc41.emulab.net
- Upgraded oml2_server, liboml2-0, and libocomm0 to version 2.8.1
- Started oml2-server on the command line
$ oml2-server --listen=3003 --data-dir=/users/johren/gimi --logfile=/users/johren/oml_server.log -H /users/johren/oml2-server-hook.sh
- Configured hook script to use my iRODS server
*************** *** 23,31 **** # THE SOFTWARE. # irodsUserName=rods ! irodsHost=emmy8.casa.umass.edu irodsPort=1247 ! irodsZone=geniRenci export irodsUserName irodsHost irodsPort irodsZone # XXX: You might need to initialise the iRODS password for the UNIX user --- 23,31 ---- # THE SOFTWARE. # irodsUserName=rods ! irodsHost=pc41.emulab.net irodsPort=1247 ! irodsZone=bbnZone export irodsUserName irodsHost irodsPort irodsZone # XXX: You might need to initialise the iRODS password for the UNIX user
- Configured /etc/omf-expctl-5.4/omf-expctl.yaml to point to my OML server (can also be specified on the command line)
# URI to the OML server to use for this EC # (can be overwritten on the EC command line) :omluri: 'tcp:pc41.emulab.net:3003'
2. Obtain slice of GENI resources, install and configure GIMI I&M tools
- Used omni to create the slice and the sliver on ExoSM aggregate
- Rspec includes an execute service for each node that downloads gimi-postboot.sh from the web server (on pc41.emulab.net) and runs it with the slicename and nodeid parameters
<services> <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"/> </services>
- Inputs:
- rspec template - %SLICENAME% must be replaced by the slice name when using this script
- Output:
- slice manifest
- slice login information
- all nodes are ready to run the experiment
- hostname is set
- oml2-iperf installed
- RC is configured and running
3. Run and orchestrate GIMI I&M tools and reference/actual experiment
- Run the tcp_iperf.rb script using the EC on the UW VM
$ omf-5.4 exec --no-cmc -S johGIM1208071301 tcp_iperf.rb -- --source1 johGIM1208071301-NodeA --sink johGIM1208071301-NodeC
- Inputs:
- slicename
- tcp_iperf.rb
- Outputs:
- sq3 database file on the OML server
4. Push I&M measurement results to iRODS archive service
- This is done by the oml2-server-hook.sh script
- I had to do a lot of modification to this script because it is very tailored to the OML server configuration
- 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)
! NAME=${DBFILE:12:6}; ! FILE=${DBFILE:12}; ----------- ! NAME=${DBFILE:7:6}; ! FILE=${DBFILE:19};
- Had to make some changes to the ichmod commands to get it to work with my iRODS server
! ichmod -M own $NAME /geniRenci/home/$NAME/$FILE ! iput -f ${DBFILE} /geniRenci/home/$NAME/$FILE; ! imeta add -d /geniRenci/home/$NAME/$FILE Date ${DATE} ! imeta add -d /geniRenci/home/$NAME/$FILE UserName $NAME ! imeta add -d /geniRenci/home/$NAME/$FILE SliceName $SLICE -------- ! ichmod -M own rods /bbnZone/home/$NAME ! iput -f ${DBFILE} /bbnZone/home/$NAME/$FILE; ! ichmod -M own $NAME /bbnZone/home/$NAME/$FILE ! imeta add -d /bbnZone/home/$NAME/$FILE Date ${DATE} ! imeta add -d /bbnZone/home/$NAME/$FILE UserName $NAME ! imeta add -d /bbnZone/home/$NAME/$FILE SliceName $SLICE
- 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)
- 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
! if [[ $NAME =~ ^gimi[0-9] ]]; then -------- ! if [[ $NAME =~ ^johren ]]; then
- Inputs:
- oml2-server-hook script running on the OML server
- sq3 database file on the OML server
- Outputs:
- sq3 database file in experimenter's home location on the iRODS server
- experimenter is able to iget the sq3 file
5. Pull I&M measurement results from iRODS archive service to UW/iREEL
- Ran the tutorial_viz.sh command to pull the results from iRODS and run the R script on it to create the images
$ ./tutorial_viz.sh johGIM1208071301
- Inputs:
- sq3 file is accessible in the experimenter's home location on the iRODS server
geniuser@UserWorkspace:~$ ils /bbnZone/home/johren: gimirun1.sq3 johGIM1207311032.sq3 johGIM1208011452.sq3 johGIM1208061034.sq3 johGIM1208061255.sq3 johGIM1208071043.sq3 johGIM1208071301.sq3 <------ johGIM1208071316.sq3
- sq3 file is accessible in the experimenter's home location on the iRODS server
- Outputs:
- visualization images available on the web server on the UW
geniuser@UserWorkspace:~$ ls /var/www index.html johGIM1208071301.png <------ johGIM1208071316.png oml.html <------
- visualization images available on the web server on the UW
6. Observe I&M measurement results on GIMI presentation service
Right now, the presentation service is the web server on the UW. I observed the results by pointing the browser at http://localhost/oml.html
- Inputs:
- None
- Outputs:
- visualization images viewable in the web server on the UW
7. Push Analysis Results to iRODS archive service
Used the i-command iput to push the analysis image to iRODS.
geniuser@UserWorkspace:/var/www$ iput johGIM1208071301.png geniuser@UserWorkspace:/var/www$ ils /bbnZone/home/johren: gimirun1.sq3 johGIM1207311032.sq3 johGIM1208011452.sq3 johGIM1208061034.sq3 johGIM1208061255.sq3 johGIM1208071043.sq3 johGIM1208071301.png <------ johGIM1208071301.sq3 johGIM1208071316.sq3
Logged in to the iRODS web interface and viewed the image.
- Inputs:
- visualization images in UW
- Outputs:
- visualization images viewable in iRODS
8. Release resources, and cleanup
- Used omni to delete the sliver
$ omni.py -a exosm deletesliver johGIM1208071301 INFO:omni:Loading config file /home/geniuser/.gcf/omni_config INFO:omni:Using control framework pg INFO:omni:Substituting AM nickname exosm with URL https://geni.renci.org:11443/orca/xmlrpc, URN unspecified_AM_URN INFO:omni:Deleted sliver urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+johGIM1208071301 on unspecified_AM_URN at https://geni.renci.org:11443/orca/xmlrpc INFO:omni: ------------------------------------------------------------ INFO:omni: Completed deletesliver: Options as run: aggregate: exosm framework: pg native: True Args: deletesliver johGIM1208071301 Result Summary: Deleted sliver urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+johGIM1208071301 on unspecified_AM_URN at https://geni.renci.org:11443/orca/xmlrpc INFO:omni: ============================================================
- When should the data on the OML server be cleaned up?
- Inputs:
- slice name
- Outputs:
- sliver has been deleted
Attachments (2)
- VizUWBrowser.png (66.9 KB) - added by 12 years ago.
- ViziRODSInterface.png (179.8 KB) - added by 12 years ago.
Download all attachments as: .zip