Changes between Initial Version and Version 1 of OTM-Control


Ignore:
Timestamp:
01/21/11 17:32:50 (13 years ago)
Author:
Prasad Calyam
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • OTM-Control

    v1 v1  
     1= !OnTime Control User Manual =
     2'''Prasad Calyam, Kunpeng Zhu'''[[BR]]
     3'''Jan 18, 2011'''
     4
     5''Software License:'' [http://www.geni.net/wp-content/uploads/2009/02/geniprojlic.pdf ''GENI Project License (GPL)'']
     6
     7== 1. Overview ==
     8!OnTime Control is a command-line interface client for users to login, manage slice information and control Node/Root Beacons within their slices in an ''automated manner''[[BR]]
     9
     10NOTE: Typically, users need to install !OnTime Control software on their desktops along with other experiment workflow tools such as GUSH; !OnTime Control provides a way to control the measurement service in an automated manner versus using the !OnTimeMeasure web-portal to control the measurement service in an ''interactive manner''.
     11
     12Features implemented include:
     13 * Manage measurement tasks
     14 * Start/Stop measurement service
     15 * Check measurement service status
     16 * Query measurement results
     17 * Query measurement archive
     18
     19== 2. Requirements ==
     20
     21A. ProtoGENI/PlanetLab slice with !OnTimeMeasure software installed and running.
     22
     23B. Python 2.5.X or 2.6.X (NOTE: Current version is not compatible with Python 2.7 or 3.0)
     24
     25'''Note''': [http://www.activestate.com/activepython/downloads ActivePython] is recommended for Windows users.
     26
     27== 3. Installation and Configuration ==
     28
     29Download the tarball from http://ontime.oar.net/download/OnTimeControl_latest.php, extract the files to any folder.
     30
     31Copy the config_example.yaml as config.yaml and edit it with any text editor.
     32
     33Follow instructions within the file to configure the !OnTime Control software. It is strongly suggested to use the "direct" connection mode. The "portal" mode should only be used when the !OnTime Control cannot connect to the Root Beacon directly.
     34
     35== 4. Usage ==
     36
     37=== 4.1 Check measurement service status ===
     38
     39Run command "service_status.py" to verify whether the !OnTime Control has been installed successfully, and to verify if all the components of the measurement service are functioning correctly.
     40
     41Example:
     42
     43[[Image(service_status.PNG)]]
     44
     45=== 4.2 Manage measurement tasks ===
     46
     47"task_manage.py" manages the measurement tasks, which are configured in a YAML file. An example "measurement.yaml" is included in the package with contents:
     48
     49{{{
     50# Measurement task settings
     51# Hint: A space is required after ':'
     52
     53##################################################
     54# Supported patters:
     55# - Periodic
     56# - RandomPoisson
     57# - RandomExponential
     58# - RandomGaussian
     59# - StratifiedRandom
     60# - Adaptive
     61##################################################
     62pattern: Periodic
     63
     64##################################################
     65# Measurement links
     66# Please use node names as source and destination
     67# Supported metrics:
     68# - RoundtripDelay
     69# - Throughput
     70# - Loss
     71# - Jitter
     72# - RouteChanges
     73##################################################
     74links:
     75- source: WASH
     76  destination: SALT
     77  metric: [Throughput, RoundtripDelay, Jitter, RouteChanges]
     78
     79- source: SALT
     80  destination: WASH
     81  metric: [Jitter, RoundtripDelay, Throughput, RouteChanges]
     82}}}
     83
     84Create your own measurement configuration file by following the example and comments in the file. Then run the "task_manage.py" with parameter "-c <measurement_config_file.yaml>".
     85
     86An example:
     87
     88[[Image(task_manage.PNG)]]
     89
     90=== 4.3  Measurement service control ===
     91
     92"service_control.py" controls the measurement service. Supported parameters are "start", "stop", "restart".
     93
     94[[Image(service_control.PNG)]]
     95
     96=== 4.4 Query measurement results ===
     97
     98"query.py" queries the measurement results. Parameters for the query are:
     99
     100  {{{
     101-f from time "YYYY-MM-DD HH:MM:SS" in UTC
     102-t to time "YYYY-MM-DD HH:MM:SS" in UTC
     103-s source node name
     104-d destination node name
     105-m metric {RountTripDelay|Throughput|Loss|Jitter}
     106-r result type {RawFiles|TimeSeries|TimeSeriesPlusAnomalies|TimeSeriesPlusForecasts}
     107}}}
     108
     109Measurement results are automatically downloaded into the local folder.
     110
     111An example query:
     112{{{
     113python query.py -f "2010-09-15 11:00:00" -t "2010-09-30 12:00:00" -s node1 -d node2 -m RoundTripDelay -r TimeSeries
     114}}}
     115
     116[[Image(query.PNG)]]
     117
     118=== 5. Query measurement archive ===
     119
     120"request_measurement_archive.py" queries the measurement archive in the Root Beacon and automatically downloads the archive into a local folder.
     121
     122[[Image(dump_measurement_db.PNG)]]