Presentation is loading. Please wait.

Presentation is loading. Please wait.

Getting Started With Your Own Experiment

Similar presentations


Presentation on theme: "Getting Started With Your Own Experiment"— Presentation transcript:

1 Getting Started With Your Own Experiment

2 Intermediate Topics Solutions to Common Problems Getting Help
Advanced Topics

3 Reproducible Experiments
Two approaches: Use existing images with install scripts Use custom images or snapshots Image creation ExoGENI provides a sandbox for image creation Snapshot images InstaGENI provides standard images which are easy to snapshot Snapshot image: … or combine the two approaches

4 Inter-aggregate Connectivity
Different experiments have different needs, chose based on your experiment!

5 ExoGENI, InstaGENI, ProtoGENI are they different and how do I choose?
Rack Differences ExoGENI, InstaGENI, ProtoGENI are they different and how do I choose? ExoGENI, InstaGENI: GENI racks developed by different teams ProtoGENI: Pre-existing testbeds that are GENI enabled, InstaGENI is based on ProtoGENI software The important thing is your experiment, so you should always start by designing your experiment and don’t worry about the aggregate. 6

6 Designing your experiment: Things to consider
Do I need access to bare metal hosts? What are my networking needs? What tools do I want to use? What platform am I familiar with? 7

7 Acting against known aggregates
Query for existing slice, members, slivers … $ omni listslices $ omni listslicemembers SLICENAME $ omni listslivers SLICENAME Omni/Portal report sliver creation/deletion to Clearinghouse. --useSliceAggregates queries against aggregates known to have resources in your slice $ readyToLogin SLICENAME --useSliceAggregates $ omni deletesliver SLICENAME --useSliceAggregates Hands-On Query and manipulate slice memberships: `listslices` - list all of my slices `listslicemembers` - list members of my slice (and the member's public keys) `addslicemember` - add member to my slice When calling `createsliver` at a compute aggregate, create accounts loaded with the public key(s) for users in one or both of the following sets: Members of the slice Users listed in your omni_config Query and report reservations to the clearinghouse `createsliver`/`deletesliver` / `renewsliver` now report reservations and deletions to the clearinghouse `listslivers` / `--useSliceAggregates` - list/query aggregates and slivers known to contain resources in my slice (advisory information only - query the aggregates to know for sure) `--useSliceAggregates` allows users to not (or not only) specify aggregates using -a and instead query for aggregates known to have resources in this slice when using the following calls: listresources sliverstatus / status deletesliver / delete renewsliver / renew performoperationalaction (aka poa) readyToLogin script remote-execute script Add users to existing slivers Clearinghouse info is only advisory! Query aggregates for authoritative info

8 Add a member to existing slivers
1) Add member to slice $ omni addslicemember SLICENAME USERNAME 2) Add slice member’s accounts to existing slivers $ omni -V 3 poa SLICE geni_update_users --useSliceAggregates –-useSliceMembers Alternatively, the Linux version has a script to do the above two steps $ addMemberToSliceAndSlivers myslice username Demo Query and manipulate slice memberships: `listslices` - list all of my slices `listslicemembers` - list members of my slice (and the member's public keys) `addslicemember` - add member to my slice When calling `createsliver` at a compute aggregate, create accounts loaded with the public key(s) for users in one or both of the following sets: Members of the slice Users listed in your omni_config Query and report reservations to the clearinghouse `createsliver`/`deletesliver` / `renewsliver` now report reservations and deletions to the clearinghouse `listslivers` / `--useSliceAggregates` - list/query aggregates and slivers known to contain resources in my slice (advisory information only - query the aggregates to know for sure) `--useSliceAggregates` allows users to not (or not only) specify aggregates using -a and instead query for aggregates known to have resources in this slice when using the following calls: listresources sliverstatus / status deletesliver / delete renewsliver / renew performoperationalaction (aka poa) readyToLogin script remote-execute script Add users to existing slivers Only works on InstaGENI/ProtoGENI

9 Advanced Topics Solutions to Common Problems Getting Help

10 Common Problems Problem: Slice did not come up (“not green”)
Possible causes: Did not wait long enough Problem with RSpec Debug strategy: Check slice/sliver status Use rspeclint on your rspecs

11 Three ways to get SliverStatus
Flack “green” is good Use “Get Status” button to refresh status Omni Use readyToLogin Portal On slice page, use “Get Status” or “Get All” buttons Demo Demo

12 Common Problems Problem: Resources disappeared Possible causes:
Slice expired Resources (aka slivers) expired Debug strategy: Check slice/sliver status Reserve resources again if expired  Don’t rely on nodes for storage Edit scripts locally and scp to your nodes Copy data off machines

13 Expiration and renewal
project slice resource resource resource (optional) project expiration time resource expiration time slice expiration time now slice expiration time ≤ project expiration time each resource expiration time ≤ slice expiration time each resource expiration time ≤ aggregate’s max expiration GENI resources are provided by free on a first-come-first-serve basis. GENI uses a variety of expiration times to ensure resources are returned to the pool of available resources in a timely manner. To start with, projects have an optional expiration time. A slice created within that project has a slice expiration time that can not be any later than the project expiration time. Resources reserved within that slice have an expiration time that can not be later than the slice’s expiration time. Moreover, different resources within the same slice may have distinct expiration times. In general, to extend the lifetime of your resource reservation, you must renew both the slice and all resources within that slice. In general, to extend the lifetime of your resource reservation, you must renew the slice and all resources

14 Slice and Sliver Expiration
Hands-On Extend slice/resource expirations $ omni renewslice # renew each sliver individually $ omni renewsliver –a gpo-ig myslice $ omni renewsliver –a renci-eg myslice $ omni renewsliver –a missouri-ig myslice # OR renew all known slivers for “as long as possible” $ omni -V 3 renew myslice –useSliceAggregates --alap Next we will renew the slice to extend the initial expiration time for the resources.

15 Common Problems Problem: Can’t login to a node Possible causes:
Slice/sliver expired Wrong username Public key isn’t loaded, Private key is wrong or non-existing Private key has wrong permissions (it should have 0600) Technical issue with node Debug strategy: Check the status of the sliver Try having a collaborator login Look for loaded keys sudo cat ~other_user_path/.ssh/authorized_keys Ask them to use ‘-v’ option ssh –v ssh -v

16 Clean up now! project resource experimenter aggregate slice
Try this now: $ omni deletesliver SLICENAME --useSliceAggregates Be sure to delete your resources.

17 Advanced Topics Solutions to Common Problems Getting Help

18 Answer is help@geni.net
Have a question? Answer is which is an list which only goes to members of the GPO including… Sarah Edwards Niky Riga Vic Thomas Have a question? The answer is always goes to a number of friendly faces including Niky, Sarah & Vic. We’ll answer your question or redirect it the appropriate place. Always instead of ing us directly, as it ensures a more timely response. (However, the archive of the list is public)

19 Ways to Get Help Sign Up for : Use #geni IRC chatroom
Use #geni IRC chatroom Go over HowTo pages

20 General debug advice Gather as much information as you can
Be specific about what is not working Step-by-step run through usually helps Include what you see (screenshots, omni output errors) Always include: type of account you are using (eg portal) the tool you are using (eg Flack, omni, portal) your slice name or URN aggregates you are using a detailed description of what's wrong including any error messages Contact for help Register for resource mailing lists

21 Finding other resources
GENI wiki Pages for Instructors and Experimenters

22 “How To” pages Listed under the “Experimenters” section
Each “How To” is a short descriptions of how to do various tasks New entries being added all the time

23 Ways to Learn More Sign up for announce@geni.net to be notified about:
Train-the-TA at the start of each semester (online-only) GENI Summer Camp Sign up at: 27

24 Please fill out the survey
Thank you for attending! Update!!! Please fill out the survey

25 Instrumentation and Measurement
Are you going to Instrumentation and Measurement with GEMINI on Tuesday at 11am ? Pick up a slip. Create a slice called: gems<YOUR INITIALS> Go to Portal to reserve the specified RSpec at the Specified aggregate

26 Working With Collaborators

27 Projects organize research in GENI
Slice Lead Members Projects contain both people and their experiments A project is led by a single responsible individual: the project lead Experimenters can perform experiments in the context of a project. Projects contain both people and their experiments. (Experiments are represented by slices, a term we will define in a few minutes.) A project must have a single individual who is willing to take responsibility for what happens within the project. This person is called the project lead. For our purposes today, we will use a project created for this class and the professor will be the project lead. 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

28 Project Membership example
Projects have 1 Lead and any number of Admins, Members, and Auditors Expiration Calendar clipart: Projects have an optional expiration (e.g. for classes, tutorials) For classes it is recommended to have the project expire at the end of the class. Typical Research Project Typical Class

29 Populating a Project Member-initiated Admin-initiated
Each experimenter asks to join a project, approval needed Typical for Research projects Admin-initiated Project Lead/Admin bulk-adds experimenters Typical for Classrooms or Tutorials

30 Working with multiple members in a slice
Members of all slices in a project: Project Leads (Professor) Project Admins (TAs, Graders) Other can be added manually Research Asst Slice Lead Post-Doc Slice Member Professor Slice Admin

31 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!

32 Slice Access: Logging in to resources
Slice membership does not guarantee ability to login to resources! To ensure access in collaborator’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: Make resource reservation using omni Call createsliver Option 3: Ensure common public key is loaded distribute common public key to collaborators ask collaborators to upload it in their profile use corresponding private key to login Add options


Download ppt "Getting Started With Your Own Experiment"

Similar presentations


Ads by Google