Version 7 (modified by 12 years ago) (diff) | ,
---|
<TCP Assignment>
<The following is all done on a MAC Book>
STEPS FOR SETTING UP
Using Omni:
0. Get account: (Ignore this if u already have one)
Go to https://www.pgeni.gpolab.bbn.com/reqaccount.php3 for emulab account and to join a GENI project.
Apparently you need to join a GENI project (which is created by PIs/GPOs/others who have permission to do so) in order to use GENI resources.
1. Prepare Omni, follow instructions here: http://trac.gpolab.bbn.com/gcf/wiki/GettingGcf
A small hint: make sure u have installed xcode before hand, if u are using MAC.
An even better hint: use App store to install xcode, much faster :-)
Note: while compiling M2Crypto using "pip install M2Crypto", there are a lot of warnings, ignore them.
Note: you need to change the first line of omni-configure.py to "#!/usr/local/bin/python" to make omni config work.
2. Use Omni to create the topology:
Download the RSPEC from http://www.cs.purdue.edu/homes/fahmy/geni/geni-tcp_exp.tar.gz
Then do the following:
Create slice:
omni.py createslice shufengTCPOutput should be something like the following:
INFO:omni:Loading config file /Users/shuang/.gcf/omni_config INFO:omni:Using control framework portal INFO:omni:Created slice with Name shufengTCP, URN urn:publicid:IDN+panther:ShufengProject+slice+shufengTCP, Expiration 2013-05-08 21:17:05 INFO:omni: ------------------------------------------------------------ INFO:omni: Completed createslice: Options as run: framework: portal project: ShufengProject Args: createslice shufengTCP Result Summary: Created slice with Name shufengTCP, URN urn:publicid:IDN+panther:ShufengProject+slice+shufengTCP, Expiration 2013-05-08 21:17:05 INFO:omni: ============================================================Renew Slice:
omni.py renewslice shufengTCP 20130509Output:
INFO:omni:Loading config file /Users/shuang/.gcf/omni_config INFO:omni:Using control framework portal INFO:omni.pgch:Requesting new slice expiration '2013-05-09T00:00:00' INFO:omni:Slice shufengTCP now expires at 2013-05-09 00:00:00 UTC INFO:omni:Slice urn:publicid:IDN+panther:ShufengProject+slice+shufengTCP expires within 1 day on 2013-05-09 00:00:00 UTC INFO:omni: ------------------------------------------------------------ INFO:omni: Completed renewslice: Options as run: framework: portal project: ShufengProject Args: renewslice shufengTCP 20130509 Result Summary: Slice shufengTCP now expires at 2013-05-09 00:00:00 UTC Slice urn:publicid:IDN+panther:ShufengProject+slice+shufengTCP expires within 1 day(s) on 2013-05-09 00:00:00 UTC INFO:omni: ============================================================Create Sliver using the rspec in the tar ball:
omni.py createsliver -a pg-utah shufengTCP star.rspecOutput:
INFO:omni:Loading config file /Users/shuang/.gcf/omni_config INFO:omni:Using control framework portal INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN INFO:omni:Slice urn:publicid:IDN+panther:ShufengProject+slice+shufengTCP expires within 1 day on 2013-05-09 00:00:00 UTC INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN INFO:omni:Creating sliver(s) from rspec file star.rspec for slice urn:publicid:IDN+panther:ShufengProject+slice+shufengTCP INFO:omni: (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=03ab3733e54e717594433659b39ca150) INFO:omni:Got return from CreateSliver for slice shufengTCP at https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0: INFO:omni:<!-- Reserved resources for: Slice: shufengTCP at AM: URN: unspecified_AM_URN URL: https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0 --> INFO:omni:<rspec xmlns="http://www.protogeni.net/resources/rspec/2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.protogeni.net/resources/rspec/2 http://www.protogeni.net/resources/rspec/2/manifest.xsd" type="manifest"> <node client_id="center" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc73" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+127723"> <sliver_type name="raw-pc"> <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops//FEDORA10-STD"/> </sliver_type> <interface client_id="center:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc73:eth4" sliver_id="urn:publicid:IDN+emulab.net+sliver+127730" mac_address="00034794bc44"><ip address="10.10.1.2" type="ipv4"/></interface> <interface client_id="center:if1" component_id="urn:publicid:IDN+emulab.net+interface+pc73:eth0" sliver_id="urn:publicid:IDN+emulab.net+sliver+127733" mac_address="00034773942f"><ip address="10.10.2.2" type="ipv4"/></interface> <interface client_id="center:if2" component_id="urn:publicid:IDN+emulab.net+interface+pc73:eth1" sliver_id="urn:publicid:IDN+emulab.net+sliver+127736" mac_address="000347739430"><ip address="10.10.3.2" type="ipv4"/></interface> <interface client_id="center:if3" component_id="urn:publicid:IDN+emulab.net+interface+pc73:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+127739" mac_address="0002b335e0a5"><ip address="10.10.4.2" type="ipv4"/></interface> <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc73"/><host name="center.shufengTCP.panther.emulab.net"/><services><login authentication="ssh-keys" hostname="pc73.emulab.net" port="22" username="shufeng"/></services></node> <node client_id="left" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc81" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+127725"> <sliver_type name="raw-pc"> <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops//FEDORA10-STD"/> </sliver_type> <interface client_id="left:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc81:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+127729" mac_address="0002b33f7333"><ip address="10.10.1.1" type="ipv4"/></interface> <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc81"/><host name="left.shufengTCP.panther.emulab.net"/><services><login authentication="ssh-keys" hostname="pc81.emulab.net" port="22" username="shufeng"/></services></node> <node client_id="right" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc55" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+127724"> <sliver_type name="raw-pc"> <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops//FEDORA10-STD"/> </sliver_type> <interface client_id="right:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc55:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+127732" mac_address="0002b33f7449"><ip address="10.10.2.1" type="ipv4"/></interface> <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc55"/><host name="right.shufengTCP.panther.emulab.net"/><services><login authentication="ssh-keys" hostname="pc55.emulab.net" port="22" username="shufeng"/></services></node> <link client_id="leftLink" sliver_id="urn:publicid:IDN+emulab.net+sliver+127728" vlantag="260"> <interface_ref client_id="left:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc81:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+127729"/> <interface_ref client_id="center:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc73:eth4" sliver_id="urn:publicid:IDN+emulab.net+sliver+127730"/> </link> <link client_id="rightLink" sliver_id="urn:publicid:IDN+emulab.net+sliver+127731" vlantag="284"> <interface_ref client_id="right:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc55:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+127732"/> <interface_ref client_id="center:if1" component_id="urn:publicid:IDN+emulab.net+interface+pc73:eth0" sliver_id="urn:publicid:IDN+emulab.net+sliver+127733"/> </link> <node client_id="top" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc47" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+127722"> <sliver_type name="raw-pc"> <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops//FEDORA10-STD"/> </sliver_type> <interface client_id="top:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc47:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+127735" mac_address="0002b33f73e7"><ip address="10.10.3.1" type="ipv4"/></interface> <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc47"/><host name="top.shufengTCP.panther.emulab.net"/><services><login authentication="ssh-keys" hostname="pc47.emulab.net" port="22" username="shufeng"/></services></node> <node client_id="bottom" exclusive="true" component_id="urn:publicid:IDN+emulab.net+node+pc84" component_manager_id="urn:publicid:IDN+emulab.net+authority+cm" sliver_id="urn:publicid:IDN+emulab.net+sliver+127726"> <sliver_type name="raw-pc"> <disk_image name="urn:publicid:IDN+emulab.net+image+emulab-ops//FEDORA10-STD"/> </sliver_type> <interface client_id="bottom:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc84:eth1" sliver_id="urn:publicid:IDN+emulab.net+sliver+127738" mac_address="00034773a1f4"><ip address="10.10.4.1" type="ipv4"/></interface> <rs:vnode xmlns:rs="http://www.protogeni.net/resources/rspec/ext/emulab/1" name="pc84"/><host name="bottom.shufengTCP.panther.emulab.net"/><services><login authentication="ssh-keys" hostname="pc84.emulab.net" port="22" username="shufeng"/></services></node> <link client_id="topLink" sliver_id="urn:publicid:IDN+emulab.net+sliver+127734" vlantag="290"> <interface_ref client_id="top:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc47:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+127735"/> <interface_ref client_id="center:if2" component_id="urn:publicid:IDN+emulab.net+interface+pc73:eth1" sliver_id="urn:publicid:IDN+emulab.net+sliver+127736"/> </link> <link client_id="bottomLink" sliver_id="urn:publicid:IDN+emulab.net+sliver+127737" vlantag="262"> <interface_ref client_id="bottom:if0" component_id="urn:publicid:IDN+emulab.net+interface+pc84:eth1" sliver_id="urn:publicid:IDN+emulab.net+sliver+127738"/> <interface_ref client_id="center:if3" component_id="urn:publicid:IDN+emulab.net+interface+pc73:eth3" sliver_id="urn:publicid:IDN+emulab.net+sliver+127739"/> </link> </rspec> INFO:omni: ------------------------------------------------------------ INFO:omni: Completed createsliver: Options as run: aggregate: ['pg-utah'] framework: portal project: ShufengProject Args: createsliver shufengTCP star.rspec Result Summary: Got Reserved resources RSpec from www-emulab-net-protogeniv2 INFO:omni: ============================================================The above output shows the reserved nodes: pc73, pc81, pc55, pc47, pc84 and how they are connected. In this case, pc73 is the central node of the star topology.
Renew the sliver:omni.py renewsliver -a pg-utah shufengTCP 20130509Output:
INFO:omni:Loading config file /Users/shuang/.gcf/omni_config INFO:omni:Using control framework portal INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN INFO:omni:Slice urn:publicid:IDN+panther:ShufengProject+slice+shufengTCP expires within 1 day on 2013-05-09 00:00:00 UTC INFO:omni:Renewing Sliver shufengTCP until 2013-05-09 00:00:00+00:00 (UTC) INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN WARNING:omni:Failed to renew sliver urn:publicid:IDN+panther:ShufengProject+slice+shufengTCP on unspecified_AM_URN (https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0) (got result 'None'). Error from Aggregate: code 14. protogeni AM code: 14: slice is busy; try again later (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=daae02988bdac3f0d008b48b6397e0fb). INFO:omni: ------------------------------------------------------------ INFO:omni: Completed renewsliver: Options as run: aggregate: ['pg-utah'] framework: portal project: ShufengProject Args: renewsliver shufengTCP 20130509 Result Summary: Slice urn:publicid:IDN+panther:ShufengProject+slice+shufengTCP expires within 1 day(s) on 2013-05-09 00:00:00 UTC Failed to renew sliver urn:publicid:IDN+panther:ShufengProject+slice+shufengTCP on unspecified_AM_URN (https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0) (got result 'None'). Error from Aggregate: code 14. protogeni AM code: 14: slice is busy; try again later (PG log url - look here for details on any failures: https://www.emulab.net/spewlogfile.php3?logfile=daae02988bdac3f0d008b48b6397e0fb). INFO:omni: ============================================================Note: When dealing with specific slivers, we need to add "-a pg-utah" to specify which aggregate manager we want to use (i.e., from where we want to reserve the resources). In our case here, we are using utah aggregate.
OK. After this point, we are ready to log on to the nodes and do our experiments! :-)
Using GENI Portal:
0. As usual, get a GENI Portal account via: https://panther.gpolab.bbn.com
1. Prepare Omni via: http://trac.gpolab.bbn.com/gcf/wiki/GettingGcf
As a result, if you have already installed omni, all u need to do now is to do "omni-configure.py -f portal"
Apparently GENI Portal also uses Omni to control and manage GENI resources.
Very Important: using omni-configure.py -f portal will over-write ~/.ssh/geni_key and ~/.ssh/geni_key.pub. The result is, user can not login the reserved nodes using their omni keys (the original geni_key pair)
What I did is to save the GENI Portal key pair to another name, e.g., geni_key_portal and geni_key_portal.pub and use ssh -i ~/.ssh/geni_key_portal to log on the reserved nodes with GENI Portal account
Question: Can we just use one Key? and one user account? There are toooooo many of them :-(
2. To my understanding, GENI Portal is a web-based graphical interface for using Omni.
The using of GENI Portal is pretty straight forward, let's just follow the instructions here: http://groups.geni.net/geni/wiki/GENIExperimenter/Tutorials/PortalSimpleLayer2Example/ObtainResources
Next: Run Experiment
Attachments (4)
- addResource.png (40.4 KB) - added by 12 years ago.
- selectRspec.png (33.5 KB) - added by 12 years ago.
- reserveResource.png (115.0 KB) - added by 12 years ago.
- sliceReady.png (98.2 KB) - added by 12 years ago.
Download all attachments as: .zip