Sponsored by the National Science Foundation 1GREE SC: June 24, 2013
Are you ready for the tutorial?1. Grab a Worksheet and instructions
2. Did you do the pre-work?A. Are you able to login to the GENI Portal?
• Using your home institution username and password, or• Using a GPO issued username and password, or• A temporary account
B. Are you running the GREE Summer Camp Tutorial VM including both:• VirtualBox• GREE SC Tutorial VM image
GENI Portal is at:
http://portal.geni.net
Sponsored by the National Science Foundation
Tutorial: Getting Started with GENI
Using the GENI Portal
Sarah Edwards
GENI Project Office
24 June 2013
Sponsored by the National Science Foundation 3GREE SC: June 24, 2013
Hands On Exercise
Do a Simple Layer 2 Experiment in GENI
Reserve two VMs across the US from each other connected by a Layer 2 circuit
Layer 2VM in
MAVM inUtah
Sponsored by the National Science Foundation 4GREE SC: June 24, 2013
Understand GENI Terminology
slice project
aggregate
experimenter
resource
Sponsored by the National Science Foundation 5GREE SC: June 24, 2013
Use the GENI Portal
Sponsored by the National Science Foundation 6GREE SC: June 24, 2013
Experiment Workflow• Part I: Design/Setup
– Step 1: Establish Management Environment– Step 2: Obtain Resources
• Part II: Execute– Execute Experiment
• Part III: Finish– Teardown Experiment
Sponsored by the National Science Foundation 7GREE SC: June 24, 2013
The GENI Portal is…
A web-based tool for experimenters to manage
experimenters, projects, and slices.
Includes simple tools to reserve resources.
More to come in the future.
Sponsored by the National Science Foundation 8GREE SC: June 24, 2013
Experimenter
An experimenter is a researcher who uses GENI resources
Different types of experimenters have different roles and permissions:• Advisor vs Grad Student• Teacher vs TA vs Student Experimenter
Sponsored by the National Science Foundation 9GREE SC: June 24, 2013
Projects
Projects organize research in GENI
Project
Lead
Members
Slice
Projects contain both people and their experiments
A project is led by a single responsible individual: the project lead
Sponsored by the National Science Foundation 10GREE SC: June 24, 2013
Creating Projects• Only project leads can create projects.• Project names are public, unique and
permanent• A project may contain many experimenters;
an experimenter may be a member of many projects
• Projects have an optional expiration (e.g. for classes, tutorials)
For today’s tutorial we will all join a project which expires in a week
Sponsored by the National Science Foundation 11GREE SC: June 24, 2013
Experiment Workflow• Part I: Design/Setup
– Step 1: Establish Management Environment– Step 2: Obtain Resources
• Part II: Execute– Execute Experiment
• Part III: Finish– Teardown Experiment
Sponsored by the National Science Foundation 12GREE SC: June 24, 2013
Part I: Establish Management Environment
1. Pre-work: Login to the Portal
2. Pre-work: Project lead adds you to project
Project Name: GREESC13
3. Generate and Download SSH KeypairTutorial instructions:http://groups.geni.net/geni/wiki/GENIExperimenter/Tutorials/GREESC13/PortalSimpleLayer2Example
Sponsored by the National Science Foundation 13GREE SC: June 24, 2013
Creating a GENI account
• GENI Portal is at:
https://portal.geni.net
• Anyone with an account at a supported identity provider (usually your school or employer) can log in, but they will have no privileges
• If you don’t have such an account, we will make you an account at the GPO Identity Provider
• You must be a member of a project to do anything interesting
Sponsored by the National Science Foundation 14GREE SC: June 24, 2013
InCommon
For many experimenters:• no new passwords• familiar login screens
Leverage InCommon forsingle sign-on authentication
Experimenters from 304 educational and research institutions have InCommon accounts
Sponsored by the National Science Foundation 15GREE SC: June 24, 2013
Using ssh with a public/private keypair
Login to all GENI compute resources using
ssh with a private key
There are several ways to offer your private key to ssh. Today we will use tool called an ssh agent.
$ ssh-add ~/.ssh/id_geni_ssh_rsa $ ssh username@hostname -p 12345
You should never be prompted for a password to log into a GENI compute node.
If you are, something has always gone wrong.
No password!
Projects
Slices
Log Messages
Profile
You are here
Help1.
Join a ProjectGREESC13
2.
Generate SSH Keys3.
In your local VM …
> mv ~/Downloads/id_geni_ssh_rsa ~/.ssh/.> chmod 600 ~/.ssh/id_geni_ssh_rsa> ssh-add ~/.ssh/id_geni_ssh_rsa
3.
Sponsored by the National Science Foundation 20GREE SC: June 24, 2013
Resource
A resource is a piece of infrastructure
A resource can be real or virtual.
Resource specifications are used to describe and request resources.
Examples:• Compute: computer vs virtual machine (VM)• Wireline Network: VLAN or OpenFlow• Wireless: WiMAX
Sponsored by the National Science Foundation 21GREE SC: June 24, 2013
Aggregate
An aggregate manages a set of reservable resources
Aggregates include:GENI racks
OpenFlow
WiMAX
InstaGENI Rack ExoGENI Rack
Sponsored by the National Science Foundation 22GREE SC: June 24, 2013
Slice
A slice is a container of resources used in an experiment.
A slice can contain resources from one or more aggregates
A slice is in a single project
A slice has an expiration
Slice names are public, reusable and unique
Sponsored by the National Science Foundation 23GREE SC: June 24, 2013
Experimenter
Putting it all together
slice
aggregate aggregate
project Member:Lead:
Experimenter
Layer 2 VLANresourceresource
Sponsored by the National Science Foundation 24GREE SC: June 24, 2013
Expiration and renewal
slice expiration time ≤ project expiration time
each resource expiration time ≤ slice expiration time
each resource expiration time ≤ aggregate’s max expiration
project
slice
resource
(optional)project
expiration timeslice
expiration timeresource
expiration timenow
In general, to extend the lifetime of your resource reservation, you must renew the slice and all resources
resourceresource
Sponsored by the National Science Foundation 25GREE SC: June 24, 2013
Slice Membership
• Membership in a slice controls:– who can act on a slice, and– sometimes who can login to the resources on a slice.
• You can only add other members of your project to your slice
• Project leads are added to each slice by default
Slice members will be able to login to resources reserved in the future if:
– the resources were reserved directly through the portal (by clicking Add Resources on the slice page), and
– the slice member has uploaded an ssh public key.
Sponsored by the National Science Foundation 26GREE SC: June 24, 2013
Experiment Workflow• Part I: Design/Setup
– Step 1: Establish Management Environment– Step 2: Obtain Resources
• Part II: Execute– Execute Experiment
• Part III: Finish– Teardown Experiment
Sponsored by the National Science Foundation 27GREE SC: June 24, 2013
slice
Part I: Obtain Resources
4. Create a slice
5. Renew your slice
6. (optional) Add other experimenters to your slice
7. Reserve VM at Two Aggregates – Utah InstaGENI – GPO InstaGENI
8. Check Whether VMs are Ready to be Used
Layer 2 VLANVM
(Mass)VM
(Utah)
Wait for blinking ball
Create Slice
4.
Extend slice expiration5.
Add your neighbor to your slice
6.
Add Resources
7.
Add Resources at
Utah InstaGENI
Add Resources at
GPO InstaGENI
Wait for blinking ball
7.
7.
Nodes ready?
8.
Sponsored by the National Science Foundation 35GREE SC: June 24, 2013
Experiment Workflow• Part I: Design/Setup
– Step 1: Establish Management Environment– Step 2: Obtain Resources
• Part II: Execute– Execute Experiment
• Part III: Finish– Teardown Experiment
Sponsored by the National Science Foundation 36GREE SC: June 24, 2013
Part II: Execute Experiment
9. Login to nodes (two nodes: client & server)
10.Run your experiment1. Send IP Traffic
2. Disable IP
3. Send Layer 2 (non-IP) Traffic
11.Logout of your nodes
Internet
Data Interfaces
Control Interfaces
ssh
Layer 2 VLAN
Experimenter
server(Mass)
client(Utah)
Login
9.
# login to “client” VM
> ssh username@hostname1 -p port1
$ /sbin/ifconfig
# login to “server” VM
> ssh username@hostname2 -p port2
$ /sbin/ifconfigserver
client
10.
9.
Worksheet
Client
Control Interface
Name eth999
IP Address __ . __ . __ . __
Data Interface
Name eth3742
Initial IP Addr 10 . __ . __ . __
Des IP Addr 10 . 17 . 1 . 1 /24
Server
Control Interface
Name eth999
IP Address __ . __ . __ . __
Data Interface
Name eth3742
Initial IP Addr 10 . __ . __ . __
Des IP Addr 10 . 17 . 1 . 2 /24
MAC Address __ : __ : __ : __ : __ : __
Project Name: GREESC13
Slice Name: portal01
EtherType: 17001
10.
# configure your IP
$ sudo /sbin/ifconfig eth3742 10.17.1.1/24
# should SUCCEED$ ping 10.17.1.2 –c 5
# disable IP on your nodes
$ sudo /sbin/ifconfig eth3742 0.0.0.0
# should FAIL$ ping 10.17.1.2 –c 5
# start L2 client$ sudo /usr/local/bin/pingPlus 01:02:03:04:05:06 eth3742 17001
$ exit
# configure your IP $ sudo /sbin/ifconfig eth3742 10.17.1.2/24
# disable IP on your nodes$ sudo /sbin/ifconfig eth3742 0.0.0.0
# start L2 server
$ sudo /usr/local/bin/pingPlusListener 17001
$ exit
serverclient
Be careful!
10.
11.
Sponsored by the National Science Foundation 42GREE SC: June 24, 2013
Experiment Workflow• Part I: Design/Setup
– Step 1: Establish Management Environment– Step 2: Obtain Resources
• Part II: Execute– Execute Experiment
• Part III: Finish– Teardown Experiment
Sponsored by the National Science Foundation 43GREE SC: June 24, 2013
Part III: Finish Experiment
12. Delete your resources
When your experiment is done, you should always release your resources.
– Normally this is when you would archive your data– Delete your resources at each aggregate
sliceproject
aggregateexperimenter
resource
Delete Resources at both GPO InstaGENI and Utah InstaGENI
12.
Sponsored by the National Science Foundation 45GREE SC: June 24, 2013
Congratulations!
You have…–Run your first GENI Experiment!–Exercised your knowledge of GENI
terminology–Used the GENI Portal
Sponsored by the National Science Foundation 46GREE SC: June 24, 2013
Learn about other tools
• Tools that are integrated with the Portal– Flack GUI is linked on each slice page
• Ask me about it!
– Omni command line tool (config linked on bottom of Profile page)• Tutorial: Intro to Omni and Openflow (Tues AM)
– Coming soon! (or already here)• GEMINI• GIMI• WiMAX
• Get help after Summer Camp– Portal specific questions: [email protected] (Sarah, Tom, Aaron
& Marshall)– Everything else: [email protected] (Niky and Vic)
Sponsored by the National Science Foundation 47GREE SC: June 24, 2013
Welcome to GENI!
Keep experimenting!