[[PageOutline]] = GEMINI v1.1 Tutorial at GEC15 = == Schedule == Tuesday, October 23rd, 2012 [[BR]] 1:00pm - 2:30pm [[BR]] break [[BR]] 3:00pm - 5:00pm [[BR]] == Session Leaders == Hussam Nasir (Univ of Kentucky) and Ezra Kissel (Indiana Univ) [[BR]] == Abstract == The [http://groups.geni.net/geni/wiki/GEMINI GEMINI project] is developing an instrumentation and measurement framework, capable of supporting the needs of both GENI experimenters and GENI infrastructure operators. Currently, it includes functionality from two recent GENI projects: INSTOOLS and LAMP. (LAMP is based on the perfSONAR system, modified for use in the GENI environment.) GEMINI will collect and manage both substrate metrics and active network measurements. This session will introduce the GEMINI instrumentation and measurement (I&M) tools and show how to instrument an experiment that is executed on an InstaGENI/ProtoGENI slice. [[BR]] After successfully finishing the tutorial, attendees should be able to instrument their own InstaGENI/ProtoGENI-based experiments. [[BR]] == Preparation == This tutorial assumes that attendees have a basic knowledge of ProtoGENI/InstaGENI, and we recommend that interested participants also consider attending the InstaGENI tutorial offered at GEC 15. [[BR]] Active participants will need a laptop equipped with a recent version of [http://www.virtualbox.org/ Virtual Box]. If you are unable to bring one, you may partner with someone else. == Steps == === 0) Overview of experiment === 0.1) Title and abstract 0.2) Goals 0.3) Configuration 0.4 Process (flow chart) === 1) Establish experiment environment === 1.1) Establish experiment managment (user workspace) service 1.2) Gather necessary keys, certificates and credentials 1.3) Verify availability of desired aggregates 1.4) Verify availability of desired software images/packages 1.5) Verify availability of necessary operational services, and access to those services === 2) Obtain slice of GENI resources, install I&M tools and experiment services === 2.1) Select target aggregates 2.2) Select desired software images/packages for I&M tools and experiment services 2.3) Obtain certs, credentials, passwords and keys 2.4) Formulate slice topology for experiment, and build request rspec 2.5) Acquire resources and load images/packages for I&M tools and experiment services 2.6) Start selected software processes 2.7) Confirm slice with installed I&M tools and experiment services === 3) Configure I&M tools and experiment services === 3.1) Configure selected I&M services - objectives: - binds services together, e.g., between each MP and the MC - configures baseline services - verifies that they are ready to run - at completion: configured I&M services, ready to run and collect data 3.2) Configure selected experiment services - objectives: - binds services together to realize overall reference/actual experiment - configures baseline services - verifies that they are ready to run - at completion: configured experiment services, ready to run and process data, which can be observed by I&M services === 4) Run and orchestrate I&M services and experiment services to complete run of experiment === 4.1) Initial setup: start basic host measurements and basic ping active network measurements - objectives: - verify functionality of hosts - verify topology of slice - observe measurements with a real-time presentation service - continue measurements throughout duration of the test/tutorial/experiment - at completion: - functionality of hosts and topology of slice has been verified throughout duration of the experiment 4.2) Continuity test: for a limited time, run iperf active network measurements - objectives: - verify ability of slice to carry traffic expected from experiment - observe measurements with a real-time presentation service - once satisfactory measurements have been observed, stop continuity test - at completion: - capability of slice to carry traffic expected from experiment has been verified 4.3) Instrument and run experiment: - objectives: - gather measurements during experiment that allow experiment goals to be met - include desired measurement points within hosts and/or experiment services to instrument test/tutorial/experiment - begin to run and orchestrate measurement services - begin to run and orchestrate experiment services - observe measurements with a real-time presentation service, to verify expected operation of experiment - collect all measurements for duration of experiment - stop experiment services, when this run of the experiment has been completed - stop measurement services - at completion: - one run of experiment has been completed - real-time look at measurements has verfied expected operation of experiment - a full set of measurements has been collected, for later analysis and presentation - collected measurments have been transfered to storage service, so that slice resources can be released (if desired) 4.4) Store collected measurements and other artifacts from test/tutorial/experiment in storage service - at completion: - collected measurements and other artifacts have been transfered to storage service - collected measurements and other artifacts are available for later analysis - slice resources can then be released at any time, without loss of any measurements or artifacts === 5) Analyze and visualize measurement results after completing run of experiment === - if necessary, retrieve measurement results from archive service - analyze and format results as desired, for visualization with presentation service - as appropriate, store analyzed results and/or visualization in storage service === 6) Move selected collected measurements and other artifacts from storage service to long-term archive service === - identify archived objects with peristent identifier - include policy for sharing with others - allow retrieval for further analysis and visualization === 7) Release experiment resources ===