PlanetLab-specific Details

We have run SWORD continuously on about 200 PlanetLab nodes for several months as a publicly-accessible service. To issue a SWORD query, users can download and run a simple C client from the SWORD web page, or enter the query into a text form on that web page. Any SWORD node can receive a query from the C clients and return results to the user.

To add a new metric to be reported from a node, an administrator writes a script or program that measures the new metric and writes it to a file; this script or program is then installed as a cron job that runs periodically. Finally a line is added to the SWORD configuration file on that node, specifying the attribute's name, the name of the Java class containing its value-to-DHT-key mapping function (or the name of a default datatype to use a built-in mapping function), and the name of the data file that will contain its current value. At the next update interval (two minutes in our current PlanetLab deployment), SWORD will re-read the configuration file and incorporate the new metric into the measurement report it generates, without requiring the SWORD process to restart..

SWORD currently generates reports with 54 attributes from four data sources on each node: the ganglia [15] daemon running on each node, CoTop [12] invoked periodically on each node, Trumpet [1], and the Vivaldi implementation built into SWORD.

Jeannie Albrecht 2004-11-03