Changes between Version 20 and Version 21 of GENIExperimenter/ExperimentExample-stitching
- Timestamp:
- 07/16/13 14:16:17 (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
GENIExperimenter/ExperimentExample-stitching
v20 v21 15 15 <img src="http://groups.geni.net/geni/attachment/wiki/GENIExperimenter/Tutorials/Graphics/design.png?format=raw" alt="Design/Setup"></a> 16 16 }}} 17 18 At this time GENI network stitching is supported by several aggregate, this example shows a simple stitching scenario with one server VM in the GPO InstaGENI rack and one VM client in the Utah InstaGENI rack that are connected with a link. The server-gpo host is configured to be both a Web Server and an Iperf server, also a routable IP address is requested to access the web server. All this is captured in the request RSpec used for this experiment: 17 At this time GENI network stitching is supported by several aggregate, this example shows a simple stitching scenario with one server VM in the GPO InstaGENI rack and one VM client in the Utah InstaGENI rack that are connected with a link. The server-gpo 18 host is configured to be both a Web Server and an Iperf server, also a routable IP address is requested to access the web server. 19 20 We will define an RSpec with 2 nodes and one link between them. The link ''' ''must'' ''' specify the 2 aggregates that are the 21 endpoints of the link. The tools will do the rest of the work required to stitch the topology. This is the request RSpec used for this experiment: 19 22 20 23 Assemble a Request Rspec that includes one VM at each rack site: … … 68 71 }}} 69 72 73 We will now use the new Omni tool named ''stitcher.py'' to set up a stitched topology between the two nodes. The ''stitcher.py'' tool deliver: 74 - Simpler experiment set-up. ''Stitcher.py creates slivers at all aggregates including network stitching path. 75 - Stitcher.py parses RSpec to determine all compute resource aggregates from your RSpec. No longer need to specify “-a aggregateName”. 76 - ''Stitcher.py'' uses the MAX Stitching Computation Service (SCS) to determine VLAN path needed for your experiment. 77 - VLANs are a scarce commodity, and failures can happen. ''Stitcher.py'' will re-try to create sliver when failures occur. 78 70 79 First create a slice for this experiment: 71 80 {{{ 72 $ omni.py print_slice_expirationig-gpo-ig-utah73 07:30: 38 INFO omni: Loading config file /home/lnevers/.gcf/omni_config74 07:30: 38 INFO omni: Using control framework portal75 07:30: 40 INFO omni: Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-ig-utah expires on 2013-07-25 00:00:00 UTC76 07:30: 40INFO omni: ------------------------------------------------------------77 07:30: 40 INFO omni: Completed print_slice_expiration:81 $ omni.py createslice ig-gpo-ig-utah 82 07:30:58 INFO omni: Loading config file /home/lnevers/.gcf/omni_config 83 07:30:58 INFO omni: Using control framework portal 84 07:30:59 INFO omni: Created slice with Name ig-gpo-ig-utah, URN urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-ig-utah, Expiration 2013-07-25 00:00:00 85 07:30:59 INFO omni: ------------------------------------------------------------ 86 07:30:59 INFO omni: Completed createslice: 78 87 79 88 Options as run: … … 81 90 project: ln-prj 82 91 83 Args: print_slice_expiration ig-gpo-ig-utah 84 85 Result Summary: Slice urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-ig-utah expires on 2013-07-25 00:00:00 UTC 86 07:30:40 INFO omni: ============================================================ 92 Args: createslice ig-gpo-ig-utah 93 94 Result Summary: Created slice with Name ig-gpo-ig-utah, URN urn:publicid:IDN+ch.geni.net:ln-prj+slice+ig-gpo-ig-utah, Expiration 2013-07-25 00:00:00 95 07:30:59 INFO omni: ============================================================ 96 87 97 }}} 88 98 … … 125 135 }}} 126 136 127 (1) Sticher.py runs rspeclint on the stitch-ig-gpo-ig-utah.rspec file. [[BR]]137 (1) Sticher.py get your slice credential to make sure you have named a valid slice in which to create your circuit and runs rspeclint on the stitch-ig-gpo-ig-utah.rspec file, if rspeclint is found in your path. [[BR]] 128 138 (2) Sticher.py contacts the Stitching Computation Service (SCS) and returns the list of AMs that are needed to establish the stitching path in addition to the Internet2/ION aggregate.[[BR]] 129 139 (3) Stitcher.py generates a request RSpec for each of the aggregates in the path to request both network and compute resources. [[BR]] … … 301 311 In the stitching definition: 302 312 - <hop id="1"> is for the GPO InstaGENI switch (procurve2:5.24) and uses VLAN 3748. 303 - <hop id="4"> is for the Internet2 switch(procurve-pgeni-atla:3.21) and uses VLAN 874304 - <hop id="5"> is for the Utah PG switch (procurveA:3.19) and uses VLAN 874313 - <hop id="4"> is for PG Utah switch that connects PG Utah to ION (procurve-pgeni-atla:3.21) and uses VLAN 874 314 - <hop id="5"> is for the Utah PG switch that connects to Utah IG (procurveA:3.19) and uses VLAN 874 305 315 - <hop id="6"> is for the Utah InstaGENI switch (procurve2:1.19) and uses VLAN 874 306 316