Changes between Version 13 and Version 14 of GiB-gettingStarted
- Timestamp:
- 09/28/12 17:40:47 (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
GiB-gettingStarted
v13 v14 121 121 $ 122 122 }}} 123 The output of the command is the ''advertisement Rspec'' from the GENI-in-a-Box aggregate. You'll see the aggregate advertises six compute resources. Only two are shown here for readability reasons but you will find the complete advertisement rspec here. Look at the description of the first resource in the spec. This compute resources is an openVZ container running Fedora 15 image (or an Ubuntu 10 image if you are using the Ubuntu flavor of GENI-in-a-Box). The resource has four network interfaces: {{{eth0}}} through {{{eth3}}}. {{{eth0}}} is a control interface and is not available to the experimenter. All six compute resources advertised by this aggregate are identical. You can therefore use this aggregate to create experiment topologies with up to six nodes and up to three links per node. 123 124 124 The output of the command is the ''advertisement Rspec'' from the GENI-in-a-Box aggregate. You'll see the aggregate advertises six compute resources (only two are shown here for readability reasons). Look at the description of the first resource: 125 4. We are now ready to run an experiment using these resources. We'll start with a very simple experiment that consists of two hosts connected to one another by a single link. When the hosts come up they execute an experimenter specified script that: 126 * Downloads and installs iperf on each host. 127 * Runs iperf in server mode on the host named 'left' and iperf in client mode on the host named 'right'. The outputs of the iperf commands are written to /tmp/iperf-srv.log and /tmp/iperf-client.log on the respective hosts. 128 We will ssh into these hosts to view these logs. 129 130 The request rspec for this experiment (and other examples of request rspecs) are in the directory {{{~/geni-in-a-box}}}. 125 131 {{{ 126 <node component_id="urn:publicid:IDN+geni-in-a-box.net+node+pc101" component_manager_id="urn:publicid:IDN+geni-in-a-box.net+authority+cm" component_name="pc101" exclusive="true"> 127 <hardware_type name="openVZ container"> 128 </hardware_type> 129 <sliver_type name="virtual-pc"> 130 <disk_image description="Standard 32-bit Fedora 15 image" name="urn:publicid:IDN+geni-in-a-box.net+image:FEDORA15-STD" os="Fedora" version="15"/> 131 <disk_image default="true" description="Standard 32-bit Fedora 15 image" name="urn:publicid:IDN+geni-in-a-box.net+image:FEDORA15-STD" os="Fedora" version="15"/> 132 </sliver_type> 133 <interface component_id="urn:publicid:IDN+geni-in-a-box.net+interface+pc101:eth0" role="control"> 134 <emulab:interface name="eth0"/> 135 </interface> 136 <interface component_id="urn:publicid:IDN+geni-in-a-box.net+interface+pc101:eth1" role="experimental"> 137 <emulab:interface name="eth2"/> 138 </interface> 139 <interface component_id="urn:publicid:IDN+geni-in-a-box.net+interface+pc101:eth2" role="experimental"> 140 <emulab:interface name="eth3"/> 141 </interface> 142 <interface component_id="urn:publicid:IDN+geni-in-a-box.net+interface+pc101:eth3" role="experimental"> 143 <emulab:interface name="eth1"/> 144 </interface> 145 <location country="Molvania"/> 146 </node> 132 $ cd geni-in-a-box 133 $ ls 134 click-example.rspec four-nodes.rspec islands.rspec README.txt two-nodes-iperf.rspec 135 example-scripts install-example.rspec out.log three-nodes-lan.rspec 147 136 }}} 148 This compute resources is an openVZ container running Fedora 15 image (or an Ubuntu 10 image if you are using the Ubuntu flavor of GENI-in-a-Box). The resource has four network interfaces: {{{eth0}}} through {{{eth3}}}. {{{eth0}}} is a control interface and is not available to the experimenter. All six compute resources advertised by this aggregate are identical. You can therefore use this aggregate to create experiment topologies with up to six nodes and up to three links per node.137 We'll use the spec file called two-nodes-iperf.rspec. You can view it here or inside the VM. This rspec requests two nodes called left and right, each of which has one network interface called left:if0 on node left and right:if0 on node right. The {{{<install>}}} element in the rspec asks the aggregate to download a script at the specified URL, uncompress and untar it, and save it in the /local directory. The <execute> element asks the aggregate to execute the specified script when the hosts come up. In this case the script to be executed is the one that was installed in /local. 149 138 150 4. We are now ready to run an experiment using these resources. We'll start with a very simple experiment that consists of two hosts connected to one another by a single link. When the hosts come up they 139 140 151 141 152 142 3. Now, let's find out the GENI AM API version and GENI Rspecs version supported by this aggregate using the command {{{omni.py -a http://geni-in-a-box.net:8001 get version}}}: … … 190 180 191 181 2. In the terminal window, cd to the directory geni-in-a-box in your home directory and list the contents of that directory. You will see a number of 192 {{{ 193 $ cd geni-in-a-box 194 $ ls 195 click-example.rspec four-nodes.rspec islands.rspec README.txt two-nodes.rspec 196 example-scripts install-example.rspec log.test three-nodes-lan.rspec 197 }}} 198 182 199 183 3. List the contents of the directory (ls). You will see a number of example request rspec files you can use to get started. We'll walk you through an experiment using one of these rspecs in section [wiki:sampleExperiment]. 200 184