| 1 | = [http://groups.geni.net/geni/wiki/GENIEducation/SampleAssignments/UnderstandAMAPI/Procedure Understanding the AM API] = |
| 2 | {{{ |
| 3 | #!html |
| 4 | |
| 5 | <div style="text-align:center; width:495px; margin-left:auto; margin-right:auto;"> |
| 6 | <img id="Image-Maps_5201305222028436" src="http://groups.geni.net/geni/attachment/wiki/GENIExperimenter/Tutorials/Graphics/Execute.jpg?format=raw" usemap="#Image-Maps_5201305222028436" border="0" width="495" height="138" alt="" /> |
| 7 | <map id="_Image-Maps_5201305222028436" name="Image-Maps_5201305222028436"> |
| 8 | <area shape="rect" coords="18,18,135,110" href="./DesignSetup" alt="" title="" /> |
| 9 | <area shape="rect" coords="180,18,297,111" href="./Execute" alt="" title="" /> |
| 10 | <area shape="rect" coords="344,17,460,110" href="./Finish" alt="" title="" /> |
| 11 | <area shape="rect" coords="493,136,495,138" href="http://www.image-maps.com/index.php?aff=mapped_users_5201305222028436" alt="Image Map" title="Image Map" /> |
| 12 | </map> |
| 13 | <!-- Image map text links - End - --> |
| 14 | |
| 15 | </div> |
| 16 | }}} |
| 17 | |
| 18 | == 6.1 Wait for experiment setup == |
| 19 | |
| 20 | 1. Please use the command: |
| 21 | {{{ |
| 22 | readyToLogin.py --no-keys -a AM_NICKNAME SLICENAME |
| 23 | }}} |
| 24 | where (as before) {{{AM_NICKNAME}}} and {{{SLICENAME}}} are your aggregate |
| 25 | manager nickname and your slice name (both found on your worksheet). |
| 26 | |
| 27 | 2. If it reports that the sliver is not yet ready (for example, it might say that the status is "changing"), then please wait a minute |
| 28 | or two and try again. Once everything is complete, {{{readyToLogin.py}}} |
| 29 | will give output that should look something like this: |
| 30 | |
| 31 | {{{ |
| 32 | ... |
| 33 | server's geni_status is: ready (am_status:ready) |
| 34 | User example logs in to server using: |
| 35 | ssh -p 32768 example@pc1.utah.geniracks.net |
| 36 | User example logs in to client using: |
| 37 | ssh -p 32769 example@pc1.utah.geniracks.net |
| 38 | ... |
| 39 | }}} |
| 40 | |
| 41 | {{{ |
| 42 | #!html |
| 43 | <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" /></td><td>If you didn't previously complete the Flack tutorial (or are not running an <tt>ssh</tt> agent), then your <tt>ssh</tt> client might |
| 44 | not be set up to log in with above commands. Try re-running <tt>readyToLogin.py</tt> without the <tt>--no-keys</tt> option, and it will give you one or |
| 45 | more <tt>ssh</tt> commands to choose from (which should work, although might require the key passphrase).</td></tr></table> |
| 46 | }}} |
| 47 | |
| 48 | == 6.2 Log in to client node == |
| 49 | |
| 50 | 1. Copy and paste the {{{ssh}}} command lines directly into your terminal |
| 51 | to log in to either of your hosts. While you're welcome to inspect either |
| 52 | one, for the purpose of this experiment, the {{{client}}} host is the one |
| 53 | running the {{{iperf}}} tests and collecting all the logs, so please use |
| 54 | the {{{client}}} ssh command now. |
| 55 | |
| 56 | You may get a warning from {{{ssh}}} complaining that the authenticity of the |
| 57 | host cannot be established. This is just because your {{{ssh}}} client has |
| 58 | never accessed this VM before, and so does not yet recognise its key. Say |
| 59 | "yes", you do want to continue connecting, and you should see a shell prompt |
| 60 | from the remote end: |
| 61 | {{{ |
| 62 | [example@client ~]$ |
| 63 | }}} |
| 64 | |
| 65 | The {{{install}}} and {{{execute}}} services requested in our rspec have |
| 66 | already started, and measurements are now being collected. (You can |
| 67 | verify that things are working by inspecting the {{{/local}}} directory |
| 68 | on each host, and looking for the approriate processes with a command like |
| 69 | {{{ps ax}}}. If you do not see the proper files and processes, please |
| 70 | double-check the {{{rspec}}} you used in the previous step.) |
| 71 | |
| 72 | 2. The client machine is saving all the test results in the {{{/tmp/iperf-logs}}} |
| 73 | directory. Files with timestamps in the names will gradually appear |
| 74 | there (there are 100 tests overall, and it may take 20 minutes for all |
| 75 | of them to complete if you want to wait for them). |
| 76 | |
| 77 | Each log file corresponds to one test with some number of simultaneous |
| 78 | TCP connections over the VLAN link you requested between the two hosts. |
| 79 | Later tests gradually include more concurrent connections, so the |
| 80 | throughput of each individual connection will decrease, but the |
| 81 | aggregate throughput (the {{{[SUM]}}} line at the end of each file) |
| 82 | should remain approximately consistent. |
| 83 | |
| 84 | For a real experiment, of course, this step would be the most imporant |
| 85 | and collection, analysis and archival of the results would be critical, |
| 86 | but for now, play around as necessary to satisfy your curiosity and |
| 87 | then continue. |
| 88 | |
| 89 | ---- |
| 90 | |
| 91 | = [wiki:GENIEducation/SampleAssignments/LabZero/Procedure Introduction] = |
| 92 | = [wiki:GENIEducation/SampleAssignments/LabZero/Procedure/Finish Next: Finish] = |