omni: a command line geni resource reservation tool
Post on 22-Feb-2016
58 Views
Preview:
DESCRIPTION
TRANSCRIPT
Sponsored by the National Science Foundation
Omni:a command line
GENI resource reservation tool
Niky Riga, Sarah EdwardsGENI Project Office
13 March, 2012
Sponsored by the National Science Foundation 2GEC 13: March 13, 2012
WHAT IS OMNI?
Sponsored by the National Science Foundation 3GEC 13: March 13, 2012
Omni: Resource Reservation tool
• A command line experimenter tool
• Create slices and slivers using the GENI AM API
• Written in and scriptable from Python
• Use existing user accounts– ProtoGENI (incl. GPO issued)– PlanetLab
• Works with aggregates that implement the GENI AM API – ProtoGENI, PlanetLab,
OpenFlow, …
$ omni.py createsliver aliceslice myRSpec.xml INFO:omni:Loading config file omni_config INFO:omni:Using control framework pgeni INFO:omni:Slice urn:publicid:IDN+pgeni.gpolab. expires within 1 day on 2011-07-07 INFO:omni:Creating sliver(s) from rspec fileINFO:omni:Writing result of createsliver for INFO:omni:Writing to ‘aliceslice-manifest-rspeINFO:omni: -----------------------------------INFO:omni: Completed createsliver:
Options as run: aggregate: https://www.emulab. framework: pgeni native: True
Args: createsliver aliceslice myRSpec.xml
Result Summary: Slice urn:publicid:IDN+pgeniReserved resources on https://www.emulab.net/p Saved createsliver results to aliceslice-manINFO:omni: ===================================
http://trac.gpolab.bbn.com/gcf/wiki/Omni
Sponsored by the National Science Foundation 4GEC 13: March 13, 2012
Omni Command Workflow
createslice
listmyslices
getversion
renewslice createsliver
listresources
sliverstatus
deletesliver
Repeat for each aggregate
Repeat for each aggregate
Create Slice Create Sliver Cleanup
Legend: AM API command
renewsliver
Sponsored by the National Science Foundation 5GEC 13: March 13, 2012
omni.py getversion
Sponsored by the National Science Foundation 6GEC 13: March 13, 2012
Omni Commands
• omni.py getversion• omni.py createslice slicename• omni.py renewslice slicename date• omni.py listmyslices username• omni.py createsliver slicename reqRSpec• omni.py sliverstatus slicename• omni.py listresources [slicename]• omni.py deletesliver slicename
Sponsored by the National Science Foundation 7GEC 13: March 13, 2012
Other Omni command line arguments
-c omni_config to specify an omni_config-f plc to use a different framework-t GENI 3 to specify the version of the Rspec-V 2 to specify the version of the AM API
ProtoGENI and PLC now both support AM API v2.
When running against an AM API v2 aggregate, include both:
-V 2 -t GENI 3
Sponsored by the National Science Foundation 8GEC 13: March 13, 2012
Getting Help• omni.py –h
Lists all commands and their argumentsLists all command line optionsLists Omni versionLists url to find out more information about Omni
• Omni Troubleshooting page: http://trac.gpolab.bbn.com/gcf/wiki/OmniTroubleShoot
• Omni Configuration instructions:http://trac.gpolab.bbn.com/gcf/wiki/OmniConfigure
• Submitting a bug report:– Send e-mail to help@geni.net or omni-users@geni.net– Include:
• Exact command run and output of command (if possible, run with --debug)• The omni_config you are using• The request Rspec used to create your sliver
Sponsored by the National Science Foundation 9GEC 13: March 13, 2012
WHERE & WHEN TO USE OMNI
Sponsored by the National Science Foundation 10GEC 13: March 13, 2012
Where to use Omni
• Use at aggregates in the GENI Meso-scale – Many of these aggregates only trust GPO credentials– In particular, this includes OpenFlow aggregates
Sponsored by the National Science Foundation 11GEC 13: March 13, 2012
OpenFlow Mesoscale Overview
OpenFlow Mesoscale deployment :• is a prototype GENI infrastructure • spans multiple sites connected over Layer 2
– 2 backbone, 7 regionals, 8 campuses• is open to experimenters that want to gain early
access to a Layer 2 infrastructure that combines multiple aggregates.
• includes : – OpenFlow aggregates – Private PlanetLab aggregates (MyPLC) – ProtoGeni aggregates
Sponsored by the National Science Foundation 12GEC 13: March 13, 2012
Where are the GENI meso-scale resources?
10 OpenFlow AM (2 backbones (NLR, I2) + 8 campuses)8 MyPLC AM
- Clemson, GaTech, GPO, Indiana, Rutgers, Stanford, Wisconsin, Washington 2 ProtoGENI AM (GPO, Utah)
Sponsored by the National Science Foundation 13GEC 13: March 13, 2012
When to use Omni
• Any time a command line tool is preferable• Scripting• Determine ssh command to login to your resource
– readyToLogin.py script is very helpful for this• Also useful for tool development and testing
– AM API acceptance tests use omni scripting– Could use omni scripting to write simple experimenter
tools
Sponsored by the National Science Foundation 14GEC 13: March 13, 2012
Scripting Omni
• You can write custom Python scripts – Call existing Omni functions– Easily create scripts which take the same
arguments as Omni– Parse the Output
• Example: examples/readyToLogin.py– Calls sliverstatus– Parses output of sliverstatus– Determines ssh command to log into node
• More examples distributed with Omnihttp://trac.gpolab.bbn.com/gcf/wiki/OmniScriptingWithOptions and http://trac.gpolab.bbn.com/gcf/wiki/OmniScriptingExpiration
Sponsored by the National Science Foundation 15GEC 13: March 13, 2012
WANT TO TRY OMNI?
Sponsored by the National Science Foundation 16GEC 13: March 13, 2012
Want to try Omni?
• Tutorial: Experimenter Workflow and Example Topologies– After this session at 10:00am in Pacific/Palisades Room– See Omni and Flack in action
• Experimenter Coding Sprint– Thurs at 1:30pm in Pacific/Palisades Room– Get help getting started with a tool or an experiment– Experienced members of the GENI community on hand
• Try it at Home– HelloGENI tutorials at:
http://groups.geni.net/geni/wiki/HelloGENIhttp://groups.geni.net/geni/wiki/GENIExperimenter
– Configuring Omni: http://trac.gpolab.bbn.com/gcf/wiki/OmniConfigure
– Get help: help@geni.net or omni-users@geni.net
top related