ontimemeasure integration with gush prasad calyam, ph.d. (pi) [email protected] tony zhu (software...

12
OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) [email protected] Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected Project Highlights Session March 15 th 2011

Upload: lillian-kelley

Post on 16-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected

OnTimeMeasure Integration with Gush

Prasad Calyam, Ph.D. (PI)[email protected]

Tony Zhu (Software Programmer)

Alex Berryman (REU Student)

GEC10 Selected Project Highlights Session

March 15th 2011

Page 2: OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected

Topics of Discussion

• OnTimeMeasure Overview• Gush Overview• OnTimeMeasure-Gush User Workflow• Integration Details

2

Page 3: OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected

OnTimeMeasure Overview

• Goal: Provide GENI community with capabilities for provisioning on-going and on-demand measurement requests – Used in forecasting, anomaly detection, and fault-location diagnosis in

GENI experiments and GENI operations• Outcomes:

– Software to perform centralized and distributed measurement orchestration and provisioning of measurements

• Centralized orchestration for continuous monitoring, persistent measurements storage and processed network measurement feeds

• Distributed orchestration for on-demand (real-time) measurement requests without need for persistent measurements storage

– Measurement service that enables users to utilize OnTimeMeasure software in GENI experiments

• Registers users, slices, maintains meta-data, and allows user control of measurement service functions

– Researcher Web-portal – http://ontime.oar.net for interactive user control of measurement service

– Command-line tools for measurement service control automation

3

Page 4: OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected

OnTimeMeasure Architecture

4

Page 5: OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected

Gush Overview• Gush runs on a user desktop and executes

commands on Client nodes in a GENI Slice

• The application description is written in an XML format with following specs:

– Web addresses of software packages– List of target clients– Commands to be executed

• Two configuration files are required in Gush (filled in using a helper script):

1. Directory.xml: defines where to locate resources during execution of experiment Gush queries PlanetLab database about user

slice and auto populates the Directory.xml file

2. Gush.prefs: define working directory and client prefix

Source: Gush project website - http://gush.cs.williams.edu

5

Page 6: OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected

Advantages of OnTimeMeasure-Gush Integration

• Improves Experiment Measurements in Classroom:– Students can instrument/query/analyze active and passive measurements within

GENI using their familiar Gush interface– Get on-demand plots of measurement time series results of their experiments with

simple commands in Gush• Don’t need to teach students GNUPlot

• Eases Installation of OnTimeMeasure:– Configure once and re-use in slices using their familiar Gush interface– Login and install on a number of nodes from user desktop

• Gush takes care of ProtoGENI/PlanetLab authentication

• Improves Automation, Scalability and Security of OnTimeMeasure :– Identical configuration steps on Node Beacons can be done in parallel across large

number of nodes– GENI experimenter can securely script the request/management/query of

OnTimeMeasure measurements through Gush6

Page 7: OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected

User Workflow (ProtoGENI or PlanetLab Aggregates)

1. User creates an experiment slice using ProtoGENI or PlanetLab control framework tools

– For ProtoGENI slice creation, see - http://groups.geni.net/geni/wiki/OnTime-Install

– For PlanetLab slice creation, see - http://groups.geni.net/geni/wiki/OTM-PlanetLabInstall

2. User registers at the “Researcher Web-Portal” (http://ontime.oar.net)

3. User installs OnTimeMeasure measurement instance in experiment slice– Slice RSpec should include reservation of any required measurement resources– Node/Root Beacons need to be installed as slivers based on the instructions

provided in Step-1 for the specific aggregate

4. User installs Gush and uses OnTimeMeasure xml files to:i. Submit measurement requests

ii. Control the measurement service

iii. Query measurement data

For details, see - http://groups.geni.net/geni/wiki/OTM-Gush

See Demo of OnTimeMeasure-Gush at GEC10 Project Demo & Networking Event… 7

Page 8: OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected

Deployment Steps for OnTimeMeasure-Gush

• ProtoGENI/PlanetLab slice must be created using an RSpec file or using graphical interfaces

• XML file of the application description must be created with at least two parts:

– Commands to be executed only on the Root Beacon

– Commands to be executed on all of the Node Beacons

• Description of the slice resources must be written in directory.xml

• Gush.prefs must be configured correctly as per Gush setup instructions

Gush Controller

Otm-deploy.xml

Root BeaconNode

Beacon

Root Beacon

directory.xml

gush.prefs

Node Beacon

Node Beacon

GENI Slice8

Page 9: OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected

OnTime Control (Stand-alone Mode)

• User installs OnTime Control on his/her desktop

– Requires Python install– Manually configure slice topology

in .yaml files

• User executes python scripts that query a SQL database of measurements on the Root Beacon

– Requires root db user information

• Measurement result time-series files/plots are automatically downloaded into current directory on user desktop

User Desktop

OnTime Control

Python Scripts

Slice Topolgy .yaml files

RootBeacon

DB

NodeBeaconNode

BeaconNodeBeacon

GENI Slice

9

Page 10: OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected

OnTime Control (GUSH Integration mode)

• OnTime Control package resides on Root/Node Beacon; Gush is installed on user desktop

• Write a set of XML experiment files in the Gush format that interacts with the OnTime Control python scripts

• Gush topology description (directory.xml) is passed to the OnTime Control

• Output of the OnTime Control is a URL of a text/plot file containing the results of the measurement

User Desktop

OnTime Control

Python Scripts

Slice Topology

RootBeacon

DB

NodeBeaconNode

BeaconNodeBeacon

GUSH Controller

otm-control.xml directory.xml

GENI Slice

10

Page 11: OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected

Reference List

• OnTime Control Wiki– http://groups.geni.net/geni/wiki/OTM-Control

• OnTimeMeasure-PlanetLab Wiki– http://groups.geni.net/geni/wiki/OTM-PlanetLabInstall

• OnTimeMeasure-ProtoGENI Wiki– http://groups.geni.net/geni/wiki/OnTime-Install

• OnTimeMeasure-Gush Wiki – http://groups.geni.net/geni/wiki/OTM-Gush

11

Page 12: OnTimeMeasure Integration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected

12

Thank you for your attention !

This material is based upon work supported by the National Science Foundation under Grant No. CNS-0940805. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of BBN Technologies, Corp., the GENI Project Office, or the National Science Foundation.