Upload
collin
View
32
Download
0
Embed Size (px)
DESCRIPTION
Lab Zero: A First Experiment using GENI. Sarah Edwards, GENI Project Office. Hands On Exercise. Do a Simple Experiment in GENI Reserve two VMs connected at Layer 2. VM. VM. Layer 2. Understand GENI Terminology. project. slice. experimenter. resource. aggregate. - PowerPoint PPT Presentation
Citation preview
Sponsored by the National Science Foundation
Lab Zero:A First Experiment using GENI
Sarah Edwards, GENI Project Office
Sponsored by the National Science Foundation 2Lab Zero – GREE WC ’14 Jan 8, 2014
Hands On Exercise
Do a Simple Experiment in GENI
Reserve two VMs connected at Layer 2
Layer 2VMVM
Sponsored by the National Science Foundation 3Lab Zero – GREE WC ’14 Jan 8, 2014
Understand GENI Terminology
slice project
aggregate
experimenter
resource
Sponsored by the National Science Foundation 4Lab Zero – GREE WC ’14 Jan 8, 2014
Use the GENI Portal and Flack
Sponsored by the National Science Foundation 5Lab Zero – GREE WC ’14 Jan 8, 2014
Experiment Workflow• Part I: Design/Setup
• Part II: Execute
• Part III: Finish
Sponsored by the National Science Foundation 6Lab Zero – GREE WC ’14 Jan 8, 2014
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 7Lab Zero – GREE WC ’14 Jan 8, 2014
Flack is …
A graphical user interface (GUI) for: – designing topologies in GENI– reserving resources in GENI
Sponsored by the National Science Foundation 8Lab Zero – GREE WC ’14 Jan 8, 2014
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 9Lab Zero – GREE WC ’14 Jan 8, 2014
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
Today we will use a project created for Winter Camp
Sponsored by the National Science Foundation 11Lab Zero – GREE WC ’14 Jan 8, 2014
Experiment Workflow• Part I: Design/Setup
• Part II: Execute
• Part III: Finish
Sponsored by the National Science Foundation 12Lab Zero – GREE WC ’14 Jan 8, 2014
Part I: Establish Management Environment
1 Pre-work: Design your experiment
2.1 Pre-work: Create a GENI account
2.2 Pre-work: Project lead (aka professor) adds you to project
Project Name: GREEWC14
2.3 Generate and Download SSH KeypairTutorial instructions:http://groups.geni.net/geni/wiki/GENIEducation/SampleAssignments/LabZero/Procedure
Sponsored by the National Science Foundation 13Lab Zero – GREE WC ’14 Jan 8, 2014
Creating a GENI account
• GENI Portal is at:
https://portal.geni.net
• Instructions for creating an account are:
http://groups.geni.net/geni/wiki/SignMeUp
Sponsored by the National Science Foundation 15Lab Zero – GREE WC ’14 Jan 8, 2014
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 16Lab Zero – GREE WC ’14 Jan 8, 2014
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 a 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!
Sponsored by the National Science Foundation 18Lab Zero – GREE WC ’14 Jan 8, 2014
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
You are here
Projects
Slices
Log Messages
HelpProfile
Tools
Map
2
Login
Join Project
Generate SSH Keys
On your local machine…
> mv ~/Downloads/id_geni_ssh_rsa ~/.ssh/.> chmod 600 ~/.ssh/id_geni_ssh_rsa> ssh-add ~/.ssh/id_geni_ssh_rsa
2
Sponsored by the National Science Foundation 22Lab Zero – GREE WC ’14 Jan 8, 2014
Resource
A resource is a piece of infrastructure
A resource can be real or virtual.
Resource specifications (aka. RSpecs) 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 23Lab Zero – GREE WC ’14 Jan 8, 2014
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 24Lab Zero – GREE WC ’14 Jan 8, 2014
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 (within a project)
Sponsored by the National Science Foundation 25Lab Zero – GREE WC ’14 Jan 8, 2014
Experimenter(aka Student)
Putting it all together
slice
aggregate
project Member:Lead:
Experimenter(aka Professor)
Layer 2resourceresource
Sponsored by the National Science Foundation 26Lab Zero – GREE WC ’14 Jan 8, 2014
slice
Part I continued:Obtain Resources
3.1 Create a slice
3.2 (optional) Renew your slice
3.3 Reserve two VMs at on aggregate
3.4 Check Whether VMs are Ready to be Used
Layer 2VMVM
3.1
Create Slice
Extend slice expiration
3.2
LaunchFlack
3.3
LaunchFlack
username slice name
all availableaggregates
3.3
Draw two VMs connected by a link
3.3
Change names of VMs
3.3
3.3
Set IP and mask of interfaces
Reserve resources
3.3
Resources are READY!!!
3.4
Sponsored by the National Science Foundation 36Lab Zero – GREE WC ’14 Jan 8, 2014
Experiment Workflow• Part I: Design/Setup
• Part II: Execute
• Part III: Finish
Sponsored by the National Science Foundation 37Lab Zero – GREE WC ’14 Jan 8, 2014
Part II: Execute Experiment
4.1 Login to nodes (two nodes: client & server)
4.2 (optional) Download and compile experiment software
5 Execute experiment5.1 Send IP Traffic
5.2 (optional) Disable IP and send Layer 2 (non-IP) Traffic
6.1 Logout of nodes
Internet
Data Interfaces
Control Interfaces
ssh
Layer 2
Experimenter
serverclient
Login4.1
$ wget …/pingPlus-0.2.tar.gz$ tar xvfz pingPlus-0.2.tar.gz$ sudo apt-get update $ sudo apt-get install build-essential$ cd pingPlus-0.2 $ make
$ sudo ifconfig
$ wget …/pingPlus-0.2.tar.gz$ tar xvfz pingPlus-0.2.tar.gz$ sudo apt-get update $ sudo apt-get install build-essential$ cd pingPlus-0.2 $ make
$ sudo ifconfig
server
client
4.2
5.1
Worksheet
Client
Control Interface
Name eth ___
IP Address __ . __ . __ . __
Data Interface
Name eth ___
IP Address 10 . 10 . 0 . 1
Subnet Mask 255 . 255 . 255 . 0
Server
Control Interface
Name eth ___
IP Address __ . __ . __ . __
Data Interface
Name eth ___
IP Address 10 . 10 . 0 . 2 Subnet Mask 255 . 255 . 255 . 0
MAC Address __ : __ : __ : __ : __ : __
Project Name: GREEWC14 Slice Name: lab0<your
initials>
EtherType: 10001
5.1
# should SUCCEED$ ping 10.10.0.2 –c 5
# disable IP on your nodes$ sudo service neuca stop$ sudo ifconfig eth1 0.0.0.0
# should FAIL$ ping 10.10.0.2 –c 5
# start L2 client$ sudo pingPlus 01:02:03:04:05:06 eth1726 19001
$ exit
# disable IP on your nodes$ sudo service neuca stop$ sudo ifconfig eth1 0.0.0.0
# start L2 server
$ sudo pingPlusListener 11001
$ exit
serverclient
5.1
5.2
6.1
Sponsored by the National Science Foundation 42Lab Zero – GREE WC ’14 Jan 8, 2014
Experiment Workflow• Part I: Design/Setup
• Part II: Execute
• Part III: Finish
Sponsored by the National Science Foundation 43Lab Zero – GREE WC ’14 Jan 8, 2014
Part III: Finish Experiment
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
7
Sponsored by the National Science Foundation 45Lab Zero – GREE WC ’14 Jan 8, 2014
Congratulations!
You have…–Run your first GENI Experiment!–Exercised your knowledge of GENI
terminology–Used the GENI Portal and Flack
Sponsored by the National Science Foundation 46Lab Zero – GREE WC ’14 Jan 8, 2014
Welcome to GENI!