Changes between Version 2 and Version 3 of GENIExperimenter/Tutorials/GettingStarted_PartII_Labwiki_PartII/DesignSetup


Ignore:
Timestamp:
05/24/15 20:51:31 (9 years ago)
Author:
sedwards@bbn.com
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GENIExperimenter/Tutorials/GettingStarted_PartII_Labwiki_PartII/DesignSetup

    v2 v3  
    1 = [wiki:GENIExperimenter/Tutorials/jacks/GettingStarted_PartII_ccn/Procedure/Setup  Understanding the AM API using Content Centric Networking] =
     1= [wiki:GENIExperimenter/Tutorials/GettingStarted_PartII_Labwiki_PartII  Module C: Learning Switch with Extend topology ] =
    22{{{
    33#!html
     
    3535
    3636== 2.  Establish the Environment ==
    37 
    38 === 2.1 Pre-work: Ensure SSH keys are setup ===
    39 
    40 Verify that you have at least one public key associated with your account. To do that, after you login to the portal check under your Profile, under the `SSH keys` tab. If you do not have SSH keys associated yet, please follow the instructions on that tab of the Portal.
    41 
    42 === 2.2 Configure Omni ===
    43 
    44 
    45 {{{
    46 #!html
    47 <table>
    48 <tr><td>
    49         <ol type='a'>
    50           <li>Login to the <a href="http://portal.geni.net"> GENI Portal </a> </li>
    51            <li> Click on the `Profile tab` link on the top of your
    52            screen. Then click on the `Configure omni` tab under
    53            `PROFILE`.</li>
    54         </ol>
    55 </td><td>
    56            <img
    57            src="http://trac.gpolab.bbn.com/gcf/raw-attachment/wiki/OmniConfigure/Automatic/ConfigureOmniTab.png"
    58            width="400" />
    59      <br />
    60      <b>Figure 2-1</b> Click on the <i>Configure omni</i> tab under
    61      <i>Profile</i>.</i>
    62 </td></tr>
    63 <tr><td>
    64         <ol type='a' start='3'>
    65            <li> Click on the `Download your omni data` button under step 2. </li>
    66 </ol>
    67 </td><td>
    68            <img
    69            src="http://trac.gpolab.bbn.com/gcf/raw-attachment/wiki/OmniConfigure/Automatic/DownloadOmniDataButton.jpg"
    70            width="400" />
    71      <br />
    72      <b>Figure 2-2</b> <i>Download your omni data</i> under step 2.
    73 </td></tr>
    74 <tr><td>
    75         <ol type='a' start='4'>
    76            <li> If this is the first time you try to access your GENI
    77            certificate you will have to generate one. Click on the
    78            `generate a certificate` link.</li>
    79 </ol>
    80 </td><td>
    81            <img
    82            src="http://trac.gpolab.bbn.com/gcf/raw-attachment/wiki/OmniConfigure/Automatic/GenerateCertLink.jpg"
    83            width="400" />
    84      <br />
    85      <b>Figure 2-3</b> Click on <i>Generate a certificate</i>.</i>
    86 </td></tr>
    87 <tr><td>
    88         <ol type='a' start='5'>
    89            <li> Unless you really understand how SSL certificates
    90            work, choose the simple option. Click on the `Generate
    91            Combined Certificate and Key File` button and then click on
    92            `Close`.  You will be taken back to the download page with
    93            the warning.  Reload the page to enable the download
    94            button.</li>
    95 </ol>
    96 </td><td>
    97            <img
    98            src="http://trac.gpolab.bbn.com/gcf/raw-attachment/wiki/OmniConfigure/Automatic/SimpleOption.jpg"
    99            width="350"/>
    100      <br />
    101      <b>Figure 2-4</b> Click on <i>Generate Combined Certificate and Key File</i>.
    102 </td></tr>
    103 <tr><td>
    104         <ol type='a' start='6'>
    105            <li> If you are a member of more than one project, select
    106            which project you would like to be the default one for
    107            running experiments in GENI. You can always change the
    108            project that is used by the `-r` command line option of
    109            Omni.  Then click on `Download your omni data`.</li>
    110 </ol>
    111 </td><td>
    112         <img
    113         src="http://trac.gpolab.bbn.com/gcf/raw-attachment/wiki/OmniConfigure/Automatic/DownloadOmniData.jpg"
    114         width="400"/> 
    115      <br />
    116      <b>Figure 2-5</b> Click on <i>Download your omni data</i>.
    117 </td></tr>
    118 </table>
    119 <table>
    120 <tr><td>
    121         <ol type='a' start='7'>
    122            <li> The bundle will be saved at <code>~/Downloads/omni.bundle</code> </li>
    123 <li>Open a terminal window and type:<pre
    124 class="wiki">omni-configure</pre>The cert and key files you need will
    125 be installed in the appropriate folders.</li>
    126 </ol>
    127 </td></tr>
    128 </table>
    129 }}}
    13037
    13138== 3.  Obtain Resources ==
     
    18188
    18289</tr></table>
    183 }}}
    184 
    185 === 3.3. Modify the RSpec to automatically install and execute CCNX software ===
    186 
    187 For this experiment, we need to install the following software on the nodes:
    188    * The CCNX software (ccnx-0.6.2.tar.gz)
    189    * Scripts that set up the CCNX software (ccnx-setup.tar.gz)
    190    * Scripts used to pull atmospheric precipitation data using the CCNX protocol (ccnx-atmos.tar.gz)
    191 
    192 When the nodes start up, we need the following scripts to be executed:
    193    * Script that sets up the node (node-setup)
    194    * Script that sets up the ccnx protocol (ccnx-setup)
    195    * Script that setup up ccnx protocol routes (add-precip-routes)
    196 
    197 We automate the installation and running of the software using install and execute scripts in the RSpec.
    198 
    199 {{{
    200 #!html
    201 <table><tr>
    202 <td colspan=2>
    203   <ol type='a'>
    204      <li>Click on the <b>collab node</b> (see figure) to manipulate details of the node configuration.
    205 
    206 
    207 <table id="Table_01" border="0" cellpadding="5" cellspacing="0">
    208         <tr>
    209                 <td>
    210                         <img src="http://trac.gpolab.bbn.com/gcf/raw-attachment/wiki/Graphics/4NotesIcon_512x512.png" width="50" height="50" alt="Note">
    211                </td>
    212 <td>
    213 When you open the node information, you should see a new pane with fields to fill in like
    214 in the figure. 
    215 </td>
    216         </tr>
    217 </table>
    218 
    219 
    220      </li>
    221   </ol>
    222 </td>
    223 
    224 <td colspan=2>
    225   <img src="http://groups.geni.net/geni/attachment/wiki/GENIExperimenter/Tutorials/JacksLab1_5.png?format=raw" width='500'/>
    226      <br />
    227      <b>Figure 3-2</b> <i>Edit the nodes</i>
    228 </td>
    229 </tr>
    230 </table>
    231 
     90
     91<h3><u> 2. Setup the Topology: </u></h3>
     92<table>
     93<tr>
     94<td>
     95   <ol>
     96      <li>Login to the <a href="https://portal.geni.net"> GENI Portal </a> </li>
     97      <li>Create a new slice with the name of your choice.</li>
     98      <li>Click the <i>Add Resources</i> button on the Slice page.</li>
     99      <li>Drag two VMs (the black icons) onto the canvas.</li>
     100      <li>Draw a link between them.</li>
     101      <li>Drag a second site onto the canvas.</li>
     102      <li>Drag one of the existing VMs to the second site.</li>
     103      <li>Click on the unlabeled box in the middle of the link.  Select "Stitched Ethernet" as the link type.</li>
     104   </ol>
     105</td>
     106<td>
     107<img border="0" src="http://groups.geni.net/geni/raw-attachment/wiki/Tutorials/Stitching/Procedure/SetLinkType.png" alt="route topology"  align="center" width="350" title="topology" />
     108<br/>
     109<b>Figure 1</b> Set the Link Type on the inter-aggregate link.
     110</td>
     111</tr>
     112</table>
    232113<table>
    233114<tr><td>
    234   <ol type='a' start='2'>
    235 
    236 <li>The way we will request installation of the proper software and execution
    237 of our experiment is to add <i>install</i> and <i>execute</i> services.
    238 </li>
    239 </td>
    240 <td>
    241 <img width='500' src="http://groups.geni.net/geni/attachment/wiki/GENIExperimenter/Tutorials/JacksLab1_6.png?format=raw" />
    242      <br />
    243      <b>Figure 3-3</b> <i>Specify the install and execute scripts </i>
     115<img border="0" src="http://groups.geni.net/geni/raw-attachment/wiki/GENIExperimenter/Tutorials/Graphics/tip.png" width='75'/>
     116</td><td>
     117The link type you select will affect the aggregates you are allowed to bind to in the next step.
     118<ul>
     119<li> <b>Stitched Ethernet</b> gives you a layer 2 link (i.e. a VLAN) between aggregates.</li>
     120<li> <b>EGRE Tunnel</b> gives you a layer 3 tunnel between aggregates.</li>
     121<li> However, if you would like a Layer 2 link connecting only ExoGENI sites, instead set the Link Type to "(any)" and pick any two ExoGENI aggregates except "ExoGENI ExoSM".</li>
     122</ul>
    244123</td></tr>
    245 
    246 
    247 </table>
    248 
    249 <table>
    250 
    251 <tr>
    252 <td colspan=2>
    253 <ol  type='a' start='3'>
    254 <li>
    255 You will be adding three install scripts.  First, select "<tt>Add</tt>" under the <b>Install Scripts</b> sections as shown.  In the box in the <b>URL</b> field enter (cut-and-paste): <br>
    256 <pre>http://www.gpolab.bbn.com/experiment-support/ccnx-xen/ccnx-0.6.2.tar.gz</pre>
    257 and enter
    258 <pre>/</pre>
    259 in the box under it (labeled 'Install Path:').
    260 <br>
    261 <br>
    262 Now, select "<tt>Add</tt>" under the <b>Install Scripts</b> again.  This time add: <br>
    263 <pre>http://www.gpolab.bbn.com/experiment-support/ccnx-xen/ccnx-atmos.tar.gz</pre>
    264 and enter <br>
    265 <pre>/</pre>
    266 in the box under it (labeled 'Install Path:').
    267 <br>
    268 <br>
    269 Similarly, add a third install service:
    270 <pre>http://www.gpolab.bbn.com/experiment-support/ccnx-xen/ccnx-setup.tar.gz</pre>
    271 and enter <br>
    272 <pre>/tmp</pre>
    273 in the box under it (labeled 'Install Path:').  <strong> Note the different install directory this time. </strong>
    274 <br>
    275 <br>
    276 
    277   <li>In a similar manner, use the "<tt>Add</tt>" button under the <b>Execute Scripts</b> section to add three execute services on this node:
    278 <br>
    279 <pre>
    280 cd /tmp/ccnx-setup &&  ./node-setup
    281 cd /tmp/ccnx-setup &&  ./add-precip-routes rsrchr
    282 cd /tmp/ccnx-setup && ./ccnx-setup router 4
    283 </pre>
    284   </li>
    285 
    286 <table border="0" cellpadding="0" cellspacing="0"><tr><td><img src="http://groups.geni.net/geni/attachment/wiki/GENIExperimenter/Tutorials/Graphics/warning-icon-hi.png?format=raw" width='50' height='50'/></td><td>Be very careful when entering this information -- these commands will not
    287 be executed yet, so it will be some time before you will see any relevant
    288 error messages if there is a mistake here.</td></tr></table>
    289   </li>
    290 </ol>
    291 </td>
    292 </tr>
    293 </table>
    294 
    295 <table>
    296 <tr><td>
    297   <ol type='a' start='5'>
    298   <li> You <i> DO NOT </i> have to specify install and execute scripts for the other nodes as they have already been done for you.  You can check this by clicking on the icons for these nodes.
    299 
    300  
    301 </ol>
    302 </td>
    303 </tr>
    304 
    305 </table>
    306 }}}
    307 
    308 
    309 
    310 
    311 === 3.4. Export the modified request RSpec ===
    312 Now we will pull back some of the covers and inspect exactly what Jacks 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.
    313 
    314 {{{
    315 #!html
    316 <table><tr>
    317 <td>
    318    <ol type='a'>
    319    <li>From the <i>Add Resources</i> window (see figure), select the <b>View
    320 Rspec</b> button on the top right hand side.  This will bring up a pane showing the
    321 current RSpec -- please take a moment to inspect it.  The `&lt;node&gt;` and `&lt;link&gt;` elements
    322 contain the specification for the components we will request, and if you
    323 look closely, you will be able to see the install and execute service
    324 elements you added earlier.  Click on the "View RSpec" button again to return to the main screen.
    325    </li>
    326 
    327    </ol>
    328    </td>
    329    <td>
    330       <img src="http://groups.geni.net/geni/attachment/wiki/GENIExperimenter/Tutorials/JacksLab1_7.png?format=raw" width='500'/>
    331          <br/>
    332          <b>Figure 3-4</b> View and save the final request RSpec
    333    </td>
    334 </tr></table>
    335 
    336 <table><tr>
    337 <td>
    338    <ol type='a' start=2>
    339    <li>Use the <b>Download</b> button (in the lower left part of the screen next to Save RSpec) to
    340 make a local copy of your RSpec with the name <tt>rspec.xml</tt>.  We'll use this in the next step to
    341 demonstrate how other client tools also use RSpec files to communicate
    342 requests to aggregate managers.</li>
    343    </ol>
    344 </td></tr>
    345 </table>
    346 }}}
    347 
    348 
    349 
    350 === 3.5. Instantiate the new experiment using Omni ===
    351 
    352 For this step, we'll change the approach a bit and switch to a new client tool, the command line Omni client. 
    353 
    354 From a terminal, please enter the command:
    355 {{{
    356 $ omni -a AM_NICKNAME createsliver SLICENAME RSPEC_FILE
    357 }}}
    358 where {{{AM_NICKNAME}}} is the nickname for your assigned aggregate manager and {{{SLICENAME}}} is the name of the slice you created earlier (both of these are given on your worksheet).  {{{RSPEC_FILE}}} should be replaced with the filename of the RSpec you saved in step 3.4.
    359 
    360 
    361 If all is well, Omni should give you a number of informational messages, such as:
    362 {{{
    363 INFO:omni:Loading config file /home/geni/.gcf/omni_config
    364 }}}
    365 
    366 It should quickly proceed to the point where it makes the request to the remote manager:
    367 {{{
    368 INFO:omni:Creating sliver(s) from rspec file /home/geni/Downloads/experiments.rspec for slice ...
    369 }}}
    370 
    371 This step can sometimes be time-consuming, so please be patient.  If it succeeds, within a couple of minutes Omni should report:
    372 {{{
    373 INFO:omni: Completed createsliver:
    374 }}}
    375 
    376 and your resource reservation is complete!
     124</table>
     125<table  border="0" cellpadding="0" cellspacing="0">
     126<tr>
     127<td>
     128
     129   <ol start=9>
     130      <li>Bind each site to an aggregate.  (If you are doing this as part of a tutorial, use the aggregates specified on your worksheet.)</li>
     131   </ol>
     132</td>
     133<td>
     134<img border="0" src="http://groups.geni.net/geni/raw-attachment/wiki/Tutorials/Stitching/Procedure/BoundStitched.png" alt="route topology"  align="center" width="350" title="topology" />
     135<br/>
     136<b>Figure 2</b> Bind the sites.  The aggregate choices will be limited based on the link type.
     137</td>
     138</tr>
     139</table>       
     140          </td>
     141       </tr>
     142</table>
     143}}}
     144
     145
     146
     147
     148=== 3.5. Reserve the Topology using the Portal ===
     149{{{
     150#!html
     151<table  border="0" cellpadding="0" cellspacing="0">
     152<tr>
     153<td>
     154
     155   <ol start=9>
     156
     157      <li>Click <i>Reserve Resources</i>.</li>
     158   </ol>
     159</td>
     160<td>
     161<img border="0" src="http://groups.geni.net/geni/raw-attachment/wiki/Tutorials/Stitching/Procedure/BoundStitched.png" alt="route topology"  align="center" width="350" title="topology" />
     162<br/>
     163<b>Figure 2</b> Bind the sites.  The aggregate choices will be limited based on the link type.
     164</td>
     165</tr>
     166<tr>
     167<td>
     168    <ol start=12>
     169      <li>The reservation may take a couple of minutes to complete. After the reservation completes, return to the slice page. </li>
     170      <li>While you are waiting for the nodes to be ready, click the <i>Geo Map</i> button.  Wait for this page to load to see where your nodes are geographically located.  <i>Note that it may take a moment for your nodes to be drawn.</i></li>
     171   </ol>
     172</td>
     173<td>
     174<img border="0" src="http://groups.geni.net/geni/raw-attachment/wiki/Tutorials/Stitching/Procedure/GeoView.png" alt="route topology"  align="center" width="350" title="topology" />
     175<br/>
     176<b>Figure 3</b> The geographical location of your nodes.
     177</td>
     178</tr>
     179<tr>
     180<td>
     181    <ol start=14>
     182      <li>Press the back button on your browser to return to the slice page. Wait for the nodes to be ready.</li>
     183    </ol> 
     184</td>
     185<td>
     186<img border="0" src="http://groups.geni.net/geni/raw-attachment/wiki/Tutorials/Stitching/Procedure/SlicePgWithManifest.png" alt="route topology"  align="center" width="350" title="topology" />
     187<br/>
     188<b>Figure 4</b> The stitched topology is ready and green.
     189</td>
     190</tr>
     191    <ol>
     192</td>
     193</tr>
     194</table>       
     195          </td>
     196       </tr>
     197</table>
     198}}}
     199
     200Your resource reservation is complete!
    377201
    378202