135 | | In this step we are going to setup a sample GENI experiment, in order to |
136 | | get familiarized with most of the Omni commands. |
137 | | |
138 | | == 4a. Create and renew a slice == |
139 | | The first thing to do when preparing to run a GENI experiment is to create a |
140 | | slice. |
141 | | i. To create a slice type, use the `<slicename>` given in your paper slip: |
142 | | {{{ |
143 | | omni.py createslice <slicename> |
144 | | }}} |
145 | | ii. To verify that your slice has been created and in general to keep track of |
146 | | your slices, use the `listmyslices` command. use the <username> given in your |
147 | | paper slip. Type: |
148 | | {{{ |
149 | | omni.py listmyslices <username> |
150 | | }}} |
151 | | iii. Renew your slice. To extend the lifetime of your slice type: |
152 | | {{{ |
153 | | omni.py renewslice <slicename> 20121025 |
154 | | }}} |
155 | | |
156 | | == 4b. Reserve resources, a.k.a create a sliver == |
157 | | The next step in a GENI experiment is to actually reserve resources. For this |
158 | | experiment we are going to use the Aggregate manager of ProtoGENI in Utah. |
159 | | i. In Omni in order to see what each AM offers you can use the |
160 | | `listresources` command. Type: |
161 | | {{{ |
162 | | omni.py listresources -a pg-utah -o |
163 | | }}} |
164 | | The `-o` option will save the output to a file. The filename is chosen by Omni and printed as part of the output. The output will look like : |
165 | | {{{ |
166 | | geni@geni-VirtualBox:~$ omni.py listresources -a pg-utah -o |
167 | | INFO:omni:Loading config file /home/geni/.gcf/omni_config |
168 | | INFO:omni:Using control framework pg |
169 | | INFO:omni:Saving output to a file. |
170 | | INFO:omni:Substituting AM nickname pg-utah with URL https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0, URN unspecified_AM_URN |
171 | | INFO:omni:Listed resources on 1 out of 1 possible aggregates. |
172 | | INFO:omni:Writing to 'rspec-www-emulab-net-protogeniv2.xml' |
173 | | INFO:omni: ------------------------------------------------------------ |
174 | | INFO:omni: Completed listresources: |
175 | | |
176 | | Options as run: |
177 | | aggregate: ['pg-utah'] |
178 | | framework: pg |
179 | | output: True |
180 | | |
181 | | Args: listresources |
182 | | |
183 | | Result Summary: Queried resources from 1 of 1 aggregate(s). |
184 | | Wrote rspecs from 1 aggregate(s) to 1 file(s) |
185 | | Saved listresources RSpec at 'unspecified_AM_URN' (url 'https://www.emulab.net:12369/protogeni/xmlrpc/am/2.0') to file rspec-www-emulab-net-protogeniv2.xml; |
186 | | INFO:omni: ============================================================ |
187 | | }}} |
188 | | In the last line of the output Omni will tell you the name of the file that output is saved at. In the example above this would be `rspec-www-emulab-net-protogeniv2.xml`. Open the file that Omni saved and just take a look to see how an advertisement RSpec looks like. |
189 | | In order to see only available resources type |
190 | | {{{ |
191 | | omni.py listresources -a pg-utah --available -o |
192 | | }}} |
193 | | i. To be able to reserve resources you will need to craft a request rspec. |
194 | | For this example we have created the rspecs for you, use the rspec URL given |
195 | | in your paper slip. Type : |
196 | | {{{ |
197 | | omni.py createsliver -a pg-utah <slicename> <rspec_url> |
198 | | }}} |
199 | | For example |
200 | | {{{ |
201 | | omni.py createsliver -a pg-utah iomni30 http://www.gpolab.bbn.com/experiment-support/gec15/omni-intro/rspecs/iomni-30.rspec |
202 | | }}} |
203 | | '''Tip:''' If you are copying the above line make sure to substitute the slicename and the actual rspec name with the ones that are specified in your paper slip. |
204 | | i. Look at your reserved resources. Type: |
205 | | {{{ |
206 | | omni.py listresources -a pg-utah <slicename> |
207 | | }}} |
208 | | i. Extend the lifetime of your sliver: |
209 | | {{{ |
210 | | omni.py renewsliver -a pg-utah <slicename> 20121025 |
211 | | }}} |
212 | | i. Check the status of your resources. Type: |
213 | | {{{ |
214 | | omni.py sliverstatus -a pg-utah <slicename> |
215 | | }}} |
216 | | The `sliverstatus` command reports the status of your overall GENI slice. When |
217 | | the status is ready we are ready to continue to the next step. |
| 135 | |