[[PageOutline]] = GEMINI Testing executed on 8/22/2012 = [[BR]] [wiki:GEMINIAcceptanceTests/TestStatus Status of All Tests] [[BR]] [[BR]] [[BR]] || '''Step''' || '''Status''' || '''Open Tickets''' || || 1. [wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012#a1.Establishtestexperimentenvironment Establish test/experiment environment] || [[Color(green, Pass)]] || || || 2. [wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012#a2.ObtainsliceofGENIresourcesinstallandconfigureGEMINIIMtools Obtain slice of GENI resources, install and configure GEMINI I&M tools] || [[Color(green, Pass)]] || || || 3. [wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012#a3.RunandorchestrateGEMINIIMtoolsandreferenceactualexperiment Run and orchestrate GEMINI I&M tools and reference/actual experiment] || [[Color(yellow, Provisionally Pass)]] || SSH config to get setup_netem_user.sh to work || || 4. [wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012#a4.ObserveIMmeasurementresultsonGEMINIpresentationservice Observe I&M measurement results on GEMINI presentation service] || [[Color(yellow, Provisionally Pass)]] || VNC doesn't work through Passive UI || || 5. [wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012#a5.PushIMmeasurementandanalysisresultstoiRODSarchiveservice Push I&M measurement and analysis results to iRODS archive service] || [[Color(green, Pass)]] || || || 6. [wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012#a6.Releaseresourcesandcleanup Release resources, and cleanup] || [[Color(green, Pass)]] || || == 1. Establish test/experiment environment == [[Color(pink,Insert image here)]] === User Workspace === * Using the GEC14 Tutorial VM * Inputs: * GENI certificate * Two formats: PEM and PKC12 * installed in $HOME/.ssl * location of PEM file configured in omni_config * stripped the passphrase for automation * created the password file to be used by instrumentize.py * 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 * GENI pkc12 certificate installed in the Firefox browser * [http://groups.geni.net/geni/wiki/GEMINIFirefoxCertInstall] * Outputs: * omni.py ready to use * i-commands ready to use * ready to log into nodes in the slice === iRODS server === * irodswes.netlab.uky.edu === UNIS server === * https://unis.incntre.iu.edu:8012/perfSONAR_PS/services/unis === LAMP CA === * https://unis.incntre.iu.edu/protogeni/xmlrpc/lampca == 2. Obtain slice of GENI resources, install and configure GEMINI I&M tools == * Used omni to create the slice and the sliver on UKY Protogeni aggregate * Rspec includes an execute service for each node that downloads [http://gemini.netlab.uky.edu/phoebus_install.sh phoebus_install.sh] from a web server and runs it to install the phoebus software for the reference experiment {{{ }}} * Made sure I could ssh in to all of the nodes without a password * Run instrumentize.py to install and configure GEMINI tools on the nodes in the slice * Inputs: * [https://github.com/GENI-GEMINI/UW/blob/master/gec14.xml rspec] * Output: * slice manifest * slice login information * portal username and password * all nodes are ready to run the experiment * phoebus installed * GEMINI tools installed * able to log into the GEMINI portal [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIPortal.png)]] == 3. Run and orchestrate GEMINI I&M tools and reference/actual experiment == === Configure active measurements === The tutorial directs me to configure one-way (OWAMP) and round-trip (Ping) latency regular tests according to the following diagram. [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:latency-tests.png)]] * Accessed psConfig UI [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIPortalMap.png)]] * Enabled services on pca, pcb, and pcc and pushed configuration to UNIS [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIEnableServices.png)]] * Configured regular active measurements according to diagram (above) and pushed configuration to UNIS [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIScheduleTests.png)]] * Applied configuration to the nodes [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIApplyConfig.png)]] === Execute the reference experiment === * Started the iperf server on PCC {{{ [johren@PCC ~]$ iperf -s ------------------------------------------------------------ Server listening on TCP port 5001 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ }}} * Started the iperf client on PCA {{{ [johren@PCA ~]$ iperf -c pcc -t 120 -i 12 }}} * Started the Phoebus gateway on PCB {{{ [johren@PCB ~]$ sudo /etc/init.d/phoebus start [johren@PCB ~]$ tail -f /var/log/phoebus.log }}} * Introduced network impairments * For this step I had to create an SSH key pair for user johren and install them in ~/.ssh/authorized_keys on PCA and PCB * I also had to set the SSH config in ~/.ssh/config to use the new private key when contacting these hosts: {{{ Host PCA IdentityFile ~/.ssh/phoebus Host PCB IdentityFile ~/.ssh/phoebus }}} * I then ran the "user" version of the setup_netem script {{{ [johren@PCA ~]$ sh /tmp/setup_netem_user.sh Setting PCA->PCB link to 5ms latency and .01% loss Setting PCB->PCC link to 50ms latency and no loss done }}} * Again, ran the iperf client on PCA * Enabled phoebus gateway on PCB {{{ [johren@PCA ~]$ setenv LD_PRELOAD /usr/lib64/libxsp_phoebuswrapper.so [johren@PCA ~]$ setenv XSP_PATH pcb/5006 }}} * Again, ran the iperf client on PCA [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIPhoebusLog.png)]] * Stopped phoebus service on PCB and iperf server on PCC {{{ [johren@PCB ~]$ sudo /etc/init.d/phoebus stop }}} == 4. Observe I&M measurement results on GEMINI presentation service == === Observe passive measurements === ==== Observe passive measurements for each node ==== * For each node (PCA, PCB, PCC)... * click on node in Map view [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIPortalMap.png)]] * select graphs individually and make graphs show up on the left [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIPassiveSideGraphs.png)]] * select All Graphs and make sure all graphs show up in separate tab [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIPassiveAllGraphs.png)]] * Select VNC and make sure I can log in to the node [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIPassiveVNC1.png)]] ==== Observe passive measurements via Passive UI on MC ==== * Access the Passive UI on MC node [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIPortalMap.png)]] * For each node (PCA, PCB, PCC)... * View all graphs * View all tables (compare to command line results; ifconfig, arp, lsmod, etc.) [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIPassiveTables.png)]] * Connect VNC * VNC connection does not appear [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIPassiveVNC2.png)]] === Observe active measurements === * Access the perfAdmin UI [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIPortalMap.png)]] * Pull registered services from UNIS * Observe graph for PingER service between PCC and PCA [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIActivePingERGraph.png)]] * Observe graph for OWAMP service running between PCB and PCC [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIActiveOWAMPGraphC.png)]] * Observe graph for OWAMP service running between PCB and PCA [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIActiveOWAMPGraphA.png)]] * Inputs: * None * Outputs: * Graphs and tables viewable in the GEMINI portal == 5. Push I&M measurement and analysis results to iRODS archive service == * Go to archive section of GEMINI portal * NOTE: It requires me to log in again when I click on the Archive button [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIArchiveButton.png)]] * Enter iRODS login information and select "Archive to iRODS" * Click on "View IRODS Archive" and log into iRODS UI [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIArchiveToIRODS.png)]] * Find the set of data that was just pushed and view some of the graphs and table [[Image(wiki:GEMINIAcceptanceTests/GEMINITest8.22.2012:GEMINIIRODSGraph.png)]] * Inputs: * graphs, tables, databases, manifest from experiment * Outputs: * images and data viewable in iRODS == 6. Release resources, and cleanup == * Used omni to delete the sliver {{{ geniuser@UserWorkspace:~/Tutorials/GEMINI/common$ omni.py -a pg-ky deletesliver johGEM1208221147 INFO:omni:Loading config file /home/geniuser/.gcf/omni_config INFO:omni:Using control framework pg INFO:omni:Substituting AM nickname pg-ky with URL https://www.uky.emulab.net/protogeni/xmlrpc/am, URN unspecified_AM_URN INFO:omni:Deleted sliver urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+johGEM1208221147 on unspecified_AM_URN at https://www.uky.emulab.net/protogeni/xmlrpc/am INFO:omni: ------------------------------------------------------------ INFO:omni: Completed deletesliver: Options as run: aggregate: pg-ky framework: pg native: True Args: deletesliver johGEM1208221147 Result Summary: Deleted sliver urn:publicid:IDN+pgeni.gpolab.bbn.com+slice+johGEM1208221147 on unspecified_AM_URN at https://www.uky.emulab.net/protogeni/xmlrpc/am INFO:omni: ============================================================ }}} * Inputs: * slice name * Outputs: * sliver has been deleted