[[PageOutline(1-11, Table of Contents)]] = GIMI & GEMINI on one InstaGENI slice = == Creation == Start with this [http://groups.geni.net/geni/attachment/wiki/IMInteroperability/SliceWithGIMIAndGEMINI/GIMI5nodeInstaGENInoAM.xml rspec] which was created to use GIMI on InstaGENI. Create a couple slices & use that rspec in Flack with an InstaGENI aggregate. Then add GEMINI extensions through Flack. [http://groups.geni.net/geni/attachment/wiki/IMInteroperability/SliceWithGIMIAndGEMINI/GnGInstaRspec.xml Here] is an example of the final rspec at Utah InstaGENI. Below is the topology created.[[BR]][[BR]][[Image(GnGInstTopology.png, 40%)]][[BR]][[BR]] == GEMINI == There are two ways to initialize and instrumentize slices: through the GENI Desktop or using the gdesktop scripts. You only need to choose one of these two options. === GENI Desktop === Access the GENI Desktop at the following link: [http://genidesktop.netlab.uky.edu/]. Login to the GENI Desktop using a supported clearinghouse. The GENI Desktop will direct you to your login page. Once you return to the GENI Desktop you will need to give your passphrase that you set when created your SSH key pair. [[BR]] [[BR]][[Image(GENIDesktopLogin.png, 20%)]] [[Image(GENIDesktopLogin2.png, 30%)]] [[Image(GENIDesktopLoginSSHPass.png, 24%)]] [[BR]][[BR]][[BR]][[BR]] From the GENI Desktop you will be able to see your slices and their status. Click on the slice it want to initialize and the process will begin. [[BR]][[BR]][[Image(GENIDesktopPickSlice.png, 40%)]] [[BR]] [[BR]] [[Image(GENIDesktopInitialize.png, 30%)]][[BR]][[BR]][[BR]][[BR]] Once your slice has been initialized, click on the instrument to instrumentize your slice. [[BR]][[BR]][[Image(GENIDesktopClickInstrument.png, 30%)]] [[BR]][[BR]][[BR]][[BR]] Instrumentation will take some time. When it is complete, a blue bar will appear at the top of your screen that you must click to reload your slice. [[BR]][[BR]][[Image(GENIDesktopInstrumentized.png, 50%)]] [[BR]][[BR]] === Gdesktop Scripts === On the GEC 17 tutorial VM, the gdesktop scripts are located at the following directory: ~/GEC17Tutorials/GEMINI/UW/geminiv2/. To run these scripts switch to this directory using the following command in the VM. {{{ cd ~/GEC17Tutorials/GEMINI/UW/geminiv2/ }}} To check the status of your slice, use the following command. In this example “GEMINIandGIMI” is the name of the slice and “~/Download/geni-keleigh.pem” is the location of my ssh key. {{{ ./gdesktop-opstatus-new.py -n GEMINIandGIMI -f ~/Downloads/geni-keleigh.pem }}} Initialize your slice using the following command, replacing my slice name and ssh key location with yours. {{{ ./gdesktop-init.py -n GEMINIandGIMI -f ~/Downloads/geni-keleigh.pem }}} You should get output similar to this but the AM will be replaced with the one you used: [[BR]] [[Image(gdesktopInit.png, 40%)]][[BR]][[BR]] Instrumentize your slice by using the following command, replacing my slice name and sshkey location with yours. {{{ ./gdesktop-instrumentize.py -n GEMINIandGIMI -f ~/Downloads/geni-keleigh.pem }}} You should get output similar to this: [[BR]] [[Image(gdesktopInstrument.png, 40%)]][[BR]] '''When your slice finishes instrumentizing, login to the GENI Desktop and click on your slice there.''' [[BR]][[BR]] === GENI Desktop features === '''SSH:''' [[BR]] From the GENI Desktop you can SSH into your nodes. Click on the launch icon(which looks like a rocket ship) and select “SSH”. Then click on the node you want to SSH into and select “Open SSH”.[[BR]][[BR]] [[Image(GENIDeskopSSH.png, 40%)]][[BR]][[BR]][[BR]][[BR]] You may get a window saying that the site is untrusted. Continue and accept the security certificate. [[BR]][[BR]][[Image(GENIDesktopUntrustedSSH.png, 40%)]] [[BR]][[Image(GENIDesktopSSHWindow.png, 60%)]][[BR]][[BR]] '''Graphs''': [[BR]] To see graphs of the GENI Desktop, click on the launch icon(which looks like a rocket ship) and select “GEMINI Graphs”. [[BR]] [[BR]][[Image(GENIDesktopLaunchGraphs.png, 15%)]][[BR]][[BR]][[BR]][[BR]] Select the graphs you would like to appear and the nodes for which you would like to see graphs. Then press "Add Graphs" or "Add Graphs with Title". You can click on these graphs to open them in a new window.[[BR]] [[BR]][[Image(GENIDesktopGraph.png, 60%)]][[BR]][[BR]] '''Global Node:'''[[BR]] Access the global node by choosing GEMINI GN from the launch menu. From here you can choose “View Live Feed” which allows you to see all the tables and graphs stored within the global node and use tools such as Wireshark. [[BR]] [[BR]][[Image(GENIDesktopLaunchGN.png, 55%)]][[BR]][[BR]][[BR]][[BR]] Click on “Open PS Config” to open a window that allows you to view active measurements & create various tests to run on your slice. [[BR]] [[BR]][[Image(GENIDesktopActiveMeasure.png, 50%)]][[BR]] [[BR]][[BR]] == GIMI == Access !LabWiki at the following link: [http://labwiki.casa.umass.edu:4000/resource/login/openid.html]. Login to !LabWiki using your GENI Portal credentials. When prompted send your information to !LabWiki.[[BR]][[BR]] [[Image(LabWiki.png, 40%)]] [[Image(LabWikiSendInfo.png, 50%)]][[BR]][[BR]][[BR]][[BR]] Type “step” in the search bar below “Prepare”. It should give options. Select the script ending in “step1-ping_all.rb”. Click and drag the paper and pencil icon to the column titled “Execute”. [[BR]] [[BR]][[Image(LabwikiTypeStep.png, 50%)]] [[BR]] [[BR]] [[Image(LabWikiStep1Drag.png, 50%)]] [[BR]] Type your experiment name and slice name in the respective boxes under the Execute column. Make any necessary edits to the boxes labeled source1 through source5 so that they match the names of your nodes(if you used the rspec above the node will already be named properly). Write “true” in the graph box. [[BR]][[Image(LabWikiStep1Input.png,40%)]] [[BR]][[BR]][[BR]][[BR]] Scroll to the bottom of the Execute column and click on “Start Experiment”. Your experiment will begin and you can see progress in the log under the Execute column. When the experiment end a thin green bar will appear in that column.[[BR]] [[BR]] [[Image(LabWikiStart2.png, 32%)]] [[Image(LabWikiEnd.png, 43%)]] [[BR]][[BR]][[BR]] If you open your slice in the GENI Desktop you can see changes on the graphs shown by the GENI Desktop while !LabWiki is running experiments.[[BR]] [[BR]][[Image(LabWikiandGEMINIGraphs.png, 50%)]][[BR]][[BR]] Repeat these !LabWiki steps with the scripts ending with “step2-routing.rb”, “step3-ping_e2e.rb”, and “step4-otg_nmetrics.rb”. The input will very depending on the experiment script. [[BR]][[BR]] = GIMI & GEMINI on one ExoGENI slice = == Creation == '''If you plan to use the GENI Desktop to instrumentize your slice, follow those instructions before reserving resources'''[[BR]] Use this [http://groups.geni.net/geni/attachment/wiki/IMInteroperability/SliceWithGIMIAndGEMINI/GIMI_GEC17wGN.xml rspec] to create ExoGENI slices in Flack that had both GIMI and GEMINI. Below is the topology created. [[BR]] [[Image(GnGExoTopology.png, 40%)]] [[BR]][[BR]] '''If you are creating your own topology here are some things to keep in mind:''' [[BR]] For GEMINI, the nodes must be named in a specific way. All global nodes must start with the prefix “GN-” and all other nodes must start with the prefix “MP-”. You will want to use an image from a GEMINI ExoGENI rspec for your global node rather than a GIMI image. Below is an example image for the global node: {{{ }}} GEMINI needs to execute commands on each node with sudo. Sudo requires that each node has a hostname that is resolvable. Thus we will include a postboot script that sets a unique hostname and adds an entry in the /etc/hosts file so the hostname can be resolved. This allows the sudo commands to run without returning an error code. [[BR]] On your MP nodes include the following section of code to add this postboot script: {{{ }}} [[BR]] == GEMINI == The stable version of the GENI Desktop does not currently handle ExoGENI slices. I used the development version of the GENI Desktop and the development version of the gdesktop scripts to initialize & instrumentize the slices. === GENI Desktop === Login to GENI Desktop '''before reserving resources for your slice'''. Once you are on the page with your slices listed, go to address bar and change “stable” in the link to “dev” and go to that new page. [[BR]][[Image(GENIDesktopStable.png, 34%)]] [[Image(GENIDesktopDevelopment.png, 30%)]][[BR]][[BR]] Keep this window open & create your slice as explained above. Go back to the development version of the GENI Desktop and refresh the page. [[BR]] Follow the same steps for initializing and instrumentizing your slice as for with an InstaGENI slice. You will notice a green background when you are in development mode. === Gdesktop Scripts === For the development version of the gdesktop scripts be sure to add the –devel flag as seen below when running all scripts. {{{ ./gdesktop-init.py -n GEMINIandGIMI2 -f ~/Downloads/geni-keleigh.pem --devel }}} {{{ ./gdesktop-instrumentize.py -n GEMINIandGIMI2 -f ~/Downloads/geni-keleigh.pem --devel }}} === GENI Desktop Features === Within the GENI Desktop I could only see graphs & tables after first opening PS Config from the global node & approving the security certificate. I was also unable to SSH from the Desktop. == GIMI == In !LabWiki run the four experiment scripts on the slices just as you did with your InstaGENI slices. Instructions are [http://groups.geni.net/geni/wiki/IMInteroperability/SliceWithGIMIAndGEMINI#GIMI here]. Be sure to edit the boxes labelled source1 through source5 so they match the names of your nodes.