[[PageOutline]] = Notes from Post-GEC14 testing of GIMI = || '''Step''' || '''Status''' || || [wiki:JOhrenSandbox/GIMINotes8.1.2012#a1.Establishtestexperimentenvironment Establish test/experiment environment] || [[Color(green,Success)]] || || [wiki:JOhrenSandbox/GIMINotes8.1.2012#a2.ObtainsliceofGENIresourcesinstallandconfigureGIMIIMtools Obtain slice of GENI resources, install and configure GIMI I&M tools] || [[Color(green,Success)]] || || [wiki:JOhrenSandbox/GIMINotes8.1.2012#a3.RunandorchestrateGIMIIMtoolsandreferenceactualexperiment Run and orchestrate GIMI I&M tools and reference/actual experiment] || [[Color(green,Success)]] || || [wiki:JOhrenSandbox/GIMINotes8.1.2012#a4.PushIMmeasurementresultstoiRODSarchiveservice Push I&M measurement results to iRODS archive service] || [[Color(green,Success)]] || || [wiki:JOhrenSandbox/GIMINotes8.1.2012#a5.PullIMmeasurementresultsfromiRODSarchiveservicetoUWiREEL Pull I&M measurement results from iRODS archive service to UW for processing] || [[Color(green,Success)]] || || [wiki:JOhrenSandbox/GIMINotes8.1.2012#a6.ObserveIMmeasurementresultsonGIMIpresentationservice Observe I&M measurement results on GIMI presentation service] || [[Color(red,Blocked)]] || || [wiki:JOhrenSandbox/GIMINotes8.1.2012#a7.Releaseresourcesandcleanup Release resources, and cleanup] || [[Color(green,Success)]] || == 1. Establish test/experiment environment == [[Image(wiki:JOhrenSandbox/GIMINotes8.1.2012:GIMIEnvironment.png)]] === User Workspace === * Using the GEC14 Tutorial VM * Inputs: * GENI certificate * installed in $HOME/.ssl * location configured in omni_config * stripped the passphrase for automation * SSH key pair * installed in $HOME/.ssh * location configured in omni_config * key added to ssh-agent * iRODS account * username configured in $HOME/.irods/.irodsEnv * password stored using iinit * All credentials configured using credconfig.sh script * Outputs: * omni.py ready to use * i-commands ready to use * ready to log into nodes in the slice === iRODS server === * iRODS server on emmy8 was down so I set up my own on pc41.emulab.net === OML server === * Set up my own OML server on pc41.emulab.net * I was not able to get the oml2-server to use the hook script when started as a service (/etc/init.d/oml2-server start) - only when started 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 == 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 link here * Rspec includes an execute service for each node that downloads [http://pc41.emulab.net/gimi-postboot.sh gimi-postboot.sh] from the web server (on pc41.emulab.net) and runs it with the slicename and nodeid parameters {{{ }}} == 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 johGIM1208011452 tcp_iperf.rb -- --source1 johGIM1208011452-NodeA --sink johGIM1208011452-NodeC }}} == 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) * Had to make some changes to the ichmod commands to get it to work with my iRODS server * 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''' == 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 * The R script is currently failing and, therefore, not producing the graphs: {{{ > mydata1 <- dbGetQuery(con, "select oml_sender_id,begin_interval,size,end_interval from iperf_transfer where oml_sender_id=1") > intervals1 <- mydata1$end_interval - mydata1$begin_interval > throughput1 <- abs(mydata1$size)/intervals1/1024/1024*8 Error in abs(mydata1$size) : Non-numeric argument to mathematical function Execution halted spawn sudo cp johGIM1208011452.png /var/www/ [sudo] password for geniuser: cp: cannot stat `johGIM1208011452.png': No such file or directory }}} == 6. Observe I&M measurement results on GIMI presentation service == == 7. Release resources, and cleanup ==