running a class: lab management
DESCRIPTION
Running a class: Lab Management. Niky Riga GENI Project Office. Timeline/Checklist. 1. Notify [email protected] 2. Determine how your students will login to GENI 3. Create a project for the class 4. Choose exercises and test them 5. Decide what machine/software the students should use - PowerPoint PPT PresentationTRANSCRIPT
Sponsored by the National Science Foundation
Running a class:Lab Management
Niky Riga
GENI Project Office
Sponsored by the National Science Foundation 2Train the TA – Sept 13, 2012
Timeline/Checklist
1. Notify [email protected]
2. Determine how your students will login to GENI
3. Create a project for the class
4. Choose exercises and test them
5. Decide what machine/software the students
should use
6. Pre-work
7. bulk add attendees to the project
8. Do exercise
Sponsored by the National Science Foundation 3Train the TA – Sept 13, 2012
Timeline/Checklist
1. Notify [email protected]
2. Determine how your students will login to GENI
3. Create a project for the class
4. Choose exercises and test them
5. Decide what machine/software the students
should use
6. Pre-work
7. bulk add attendees to the project
8. Do exercise
Sponsored by the National Science Foundation 4Train the TA – Sept 13, 2012
Exercises – Assignments Available Exercises
Create your own
Slice setup
Notify resource providers
Student setup
Debugging
Sponsored by the National Science Foundation 5Train the TA – Sept 13, 2012
Available Exercises
• List of sample assignments and tutorials:– Use as they are– Modify to meet your needs
• Annotated:– Type – Purpose– Resources needed– Difficulty/Duration
Sponsored by the National Science Foundation 6Train the TA – Sept 13, 2012
Available Exercises
• Each sample exercise has:– Handouts / Instructions for students– Further information about the instructors– For solutions email [email protected]
• Instruction format:– 3 Steps based on standard experiment
lifecycle
Sponsored by the National Science Foundation 7Train the TA – Sept 13, 2012
Create your own
1. Figure out GENI Resources
2. Test your exercise
3. Adjust writeup
Sponsored by the National Science Foundation 8Train the TA – Sept 13, 2012
Create your own: GENI Resources
• Compute resources:– Wired / Wireless– Are VMs ok?
• Networking requirements• Tools
– Flack, Omni, I&M
List per student/group:GENI resourcesTools
Sponsored by the National Science Foundation 9Train the TA – Sept 13, 2012
Create your own: Test
• Run through the exercise
• Automate:– Install scripts (HowTo/WriteInstallScripts)– Custom Image
RSpec for exercise Install scriptsCustom image
Sponsored by the National Science Foundation 10Train the TA – Sept 13, 2012
Create your own: WriteUp
• Decide what students should hand in:– Screenshots– Commands– Configuration
• Should they leave the slice up?– Login and test their environment
• Online template for instructions
Remember to include clean up!
Send us your exercise!
Sponsored by the National Science Foundation 11Train the TA – Sept 13, 2012
Slice Setup: Student Setup Slice
Research AsstSlice Lead Post-Doc
Slice MemberProfessor
Slice Admin
Need to provide:• RSpec:
– Students might create their own (e.g. LabZero)– URL, File, Upload it in Portal
• AMs for students to use• Preferred tool
– Flack, Omni, Portal
Sponsored by the National Science Foundation 12Train the TA – Sept 13, 2012
Slice Setup: Premade slices
Lab Exercises: Resource reservation might take time
Assignments: Resource reservation is complicated/unique or out of scope
1. Create a slice per student/group
2. Make the student(s) member of the slice• Ensure they have keys (email us if needed)
3. Reserve resources from the Portal
Sponsored by the National Science Foundation 13Train the TA – Sept 13, 2012
Load Balance the students
• Split students/groups between equivalent resources (e.g. racks) to avoid resource contention
• If using scarce resources consider a rolling deadline
Sponsored by the National Science Foundation 14Train the TA – Sept 13, 2012
Notify Resource GMOC
GMOC: GENI Meta-operation Center• Keeps track of outages• Notification system for resource reservation
http://groups.geni.net/geni/wiki/HowTo/PreReserveGENIResources
GMOC Google Calendar keeps track of reservations/outages
Sponsored by the National Science Foundation 15Train the TA – Sept 13, 2012
Exercises – Assignments
Student setup Native Setup
Setup using a VM
How to chose
Debugging
Sponsored by the National Science Foundation 16Train the TA – Sept 13, 2012
Native Setup: Student’s laptop
If students will use their personal computer, (e.g. laptop):• Make a list of all tool requirements (e.g. Flack
needs Flash installed)• Ensure that they can install/use all tools
needed for exercise (e.g. they can ssh)
Make sure they test it early in the class. LabZero is a good way to do this!
Sponsored by the National Science Foundation 17Train the TA – Sept 13, 2012
Native Setup: Lab Computers
If students will use lab computers:
• Install and test tools in the machines– Go through the exercises in the lab
• If there are specific times the lab is open, stress-test the resources or split students
Sponsored by the National Science Foundation 18Train the TA – Sept 13, 2012
Setup using a VM
You can create a VM:• install all tools
– Go through the exercises from the VM
• students use VirtualBox to load the VM– You can use any Virtualization solution you want– http://groups.geni.net/geni/wiki/HowTo/CreateTutorialVM
Sponsored by the National Science Foundation 19Train the TA – Sept 13, 2012
VM or not? How to chose
Use a VM if:Want to use Omni – coming soon windowsStudents are not very familiar with computer
admin (e.g. offering a cross-discipline course)This is a one-time tutorialUniform environment
Easier to help students Easier to write instructions
Use native setup if: Students will use GENI for research Students in class are future TAs
Sponsored by the National Science Foundation 20Train the TA – Sept 13, 2012
Exercises – Assignments
Student setup
Debugging
Slice access
Common problems
Sponsored by the National Science Foundation 21Train the TA – Sept 13, 2012
Slice Access
Research AsstSlice Lead Post-Doc
Slice MemberProfessor
Slice Admin
Members of all slices:• Project Leads (Professor)• Project Admins (TAs, Graders) – coming soon!
Sponsored by the National Science Foundation 22Train the TA – Sept 13, 2012
Slice Access
Being a member of a slice means you can act on a slice:– Add resources– Check status– Delete resources– Renew resources
With any tool!
Sponsored by the National Science Foundation 23Train the TA – Sept 13, 2012
Slice Access: Logging in to resources
Slice membership does not guarantee ability to login to resources!
To ensure access in student’s resources:Option 1: Make resource reservation from Portal
• fix the membership of the slice• Use the add resource button in the portal
Option 2: Ensure common public key is loaded • distribute common public key to students• ask students to upload it in their profile• use corresponding private key to login
Ability to login can help in debugging!
Sponsored by the National Science Foundation 24Train the TA – Sept 13, 2012
Common Problems
Problem: Can’t login to a node
Sponsored by the National Science Foundation 25Train the TA – Sept 13, 2012
Can’t login to nodes: SSH
Login to all GENI compute resources using
ssh keys – no password
If you are ever prompted for a password during login to GENI nodes something is wrong
Using key-pair to SSH:– Public key: is public to everyone, loaded to
nodes
Private key: kept private in your computer, provided to SSH to verify it matches the loaded public key
Sponsored by the National Science Foundation 26Train the TA – Sept 13, 2012
SSH Challenges
• Students might not be familiar with CLI
• Students might not be familiar with public key cryptography– Hard to distinguish between private and public– Hard to distinguish between password and
passphrase
http://groups.geni.net/geni/wiki/HowTo/LoginToNodes
Consider a brief SSH tutorial/intro
Sponsored by the National Science Foundation 27Train the TA – Sept 13, 2012
SSH from Windows
SSH with keys from Windows is non-trivial– No standard ssh client that support keys (like openSSH)
Possible Solutions
http://groups.geni.net/geni/wiki/HowTo/LoginToNodes
Need to address this early!
– Pay software – eg SecureCRT– Linux VM – make use of a slim OS– Lab machine/campus resources– cygwin– FireSSH – javascript plugin for Firefox– PuTTy (private key format different)
Sponsored by the National Science Foundation 28Train the TA – Sept 13, 2012
Common Problems
Problem: Can’t login to a node
Possible causes: – Wrong username– Public key isn’t loaded, Private key is wrong or non-existing– Private key has wrong permissions (it should have 0600)– Slice/sliver expired– Technical issue with node
Debug strategy:– Try logging in to the node yourself
• If successful look for the student account – cd ..; ls
• Look for loaded keys – sudo cat <student_user_path>/.ssh/authorized_keys
– Ask them to use ‘-v’ option• ssh –v [email protected]
Sponsored by the National Science Foundation 29Train the TA – Sept 13, 2012
Common Problems
Problem: Can’t access AMs
Possible causes: – Firewall issues– AM is down
Debug strategy:– Check the GMOC calendars for planned/unplanned outages
• http://globalnoc.iu.edu/gmoc/index/support/gmoc-operations-calendars.html
– Verify access from campus (check the wireless!)– Have the student try to telnet to the port:
• e.g. telnet www.emulab.net 12369• http://groups.geni.net/geni/wiki/KnownGENIPorts
Sponsored by the National Science Foundation 30Train the TA – Sept 13, 2012
Common Problems
Problem: Slice did not come up
Possible causes: – Student did not wait long enough– Problem with rspec
Debug strategy:– Check slice/sliver status yourself– Ask students to tell you the exact steps and try to replicate it– Use rspeclint on your rspecs
• http://www.protogeni.net/wiki/RSpecDebugging
Sponsored by the National Science Foundation 31Train the TA – Sept 13, 2012
Common Problems
Problem: Omni is not working
Possible causes: – Computer is not connected to the internet/behind firewall– PATH/PYTHONPATH is not correct
• Python error
– omni is not configured
Debug strategy:– Check their PATH and PYTHONPATH variables:
• echo $PATH• echo $PYTHONPATH
– Verify connectivity to:• The internet (ping www.google.com)• To the AMs (telnet ch.geni.net 8443, telnet
Sponsored by the National Science Foundation 32Train the TA – Sept 13, 2012
General debug advice
• Ask students to be specific about what is not working– Step-by-step run through usually helps
• Ask for what they see:– screenshots– omni output errors
• Gather as much information as you can– get slice name– tool they used– rspec
• Remember you have access to their slices, check for yourself!
• Contact [email protected] for help• Register for resource mailing lists
– Better that you contact resource owners and not the students