= [http://groups.geni.net/geni/wiki/GENIEducation/SampleAssignments/UnderstandAMAPI/Procedure Understanding the AM API] = {{{ #!html
|
|
Figure 2-1 Logging into the GENI Experimenter Portal. |
|
|
Figure 2-2 On the Profile page, select the "generate and download an SSH keypair" button. |
|
Figure 2-3 Enter passphrase twice, then generate SSH private key. |
|
Figure 2-4 Download an SSH Key Pair. |
omni-configure.pyThe cert and key files you need will be installed in the appropriate folders.
|
Figure 3-1 Create a new slice. |
For this exercise, we will start with a prepared rspec file.
You should load this topology into Flack:
|
1. For this sample experiment, we'd like some additional software (Apache, iperf, and a couple of custom scripts) loaded onto the VMs to perform traffic measurements. In Flack, you can manipulate the details of the request for a node or link with the "i" button on the relevant component on the canvas (see figure). Do this now on the client node. |
2. When you open the node information, you should see options like those in the figure. The controls available to you will vary depending on the types of the aggregate manager and the component, but many features are widely available throughout GENI. 3. One of the things you can set at this time is the image for the VM. InstaGENI Ubuntu 12.04 LTS ExoGENI Use the default image 4. The way we will request installation of the proper software and execution of our experiment is to add install and execute services. First, select "+ Add Install Service" as shown. Flack will now prompt you for an "Archive URL" and a location for installation. For this experiment, please enter the appropriate URL: InstaGENI http://www.gpolab.bbn.com/experiment-support/UnderstandAMAPI/ig/underAMAPI_ig.tar.gz ExoGENI http://protogeni.net/gec17tut2eg.tar.gzand ask for this to be installed in: /local 5. Similarly, please use the "+ Add Execute Service" button to request that the appropriate command: InstaGENI sudo /local/install-script.sh ExoGENI /local/install-client.sh(client node only) /local/install-server.sh(server node only) be executed using sh
6. Once both the "install" and "execute" services are specified, please choose "Apply". Then repeat the procedure to add the same "install" and "execute" services on the server node. If you have time, it would be instructive to download the "gec17tut2.tar.gz" file yourself, and inspect the contents. You will see the install-script.sh file referred to in the execute service, and this is a good example of how you can ask for GENI components to perform tasks for you without any manual intervention. This is a very useful facility for large experiments! |
Now we will pull back some of the covers and inspect exactly what Flack has been doing for us when preparing the rspecs for the experiments we design. Each node and link has a corresponding element in the rspec, and the details of the component configuration (such as the install and execute services we requested above) are specified with attributes, or sometimes child elements, within those portions of the document.
|