120 likes | 250 Views
OnTimeMeasure I ntegration with Gush. Prasad Calyam , Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected Project Highlights Session March 15 th 2011. Topics of Discussion. OnTimeMeasure Overview Gush Overview
E N D
OnTimeMeasureIntegration with Gush Prasad Calyam, Ph.D. (PI) pcalyam@osc.edu Tony Zhu (Software Programmer) Alex Berryman (REU Student) GEC10 Selected Project Highlights Session March 15th 2011
Topics of Discussion • OnTimeMeasure Overview • Gush Overview • OnTimeMeasure-Gush User Workflow • Integration Details
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 servicethat 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
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): • 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 • Gush.prefs: define working directory and client prefix Source: Gush project website - http://gush.cs.williams.edu
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 Gush
User Workflow (ProtoGENI or PlanetLab Aggregates) • 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 • User registers at the “Researcher Web-Portal” (http://ontime.oar.net) • 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 • User installs Gush and uses OnTimeMeasure xml files to: • Submit measurement requests • Control the measurement service • 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…
Deployment Steps for OnTimeMeasure-Gush Otm-deploy.xml directory.xml Root Beacon • 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 Node Beacon gush.prefs Gush Controller Root Beacon Node Beacon Node Beacon GENI Slice
OnTime Control (Stand-alone Mode) Node Beacon Node Beacon • 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 Slice Topolgy .yaml files Node Beacon DB GENI Slice Root Beacon User Desktop Python Scripts OnTime Control
OnTime Control (GUSH Integration mode) Node Beacon Node Beacon • 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 Node Beacon GENI Slice Python Scripts OnTime Control DB Root Beacon Slice Topology otm-control.xml directory.xml User Desktop GUSH Controller
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
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.