= Raven Quarterly Status Report for Q2 2010 = Reporting period: Apr 1 - Jun 30 2010 PI: John H. Hartman (University of Arizona) == Major accomplishments == * Publish/Subscribe system * Elimination of PyXML dependencies * Rewrite Keyconvert tool from C to Python * !ServiceMonitor tool * Seattle support for Owl monitoring service * Continuing support for SFA credentials * Major Owl refactoring and enhancements * Enhanced Owl Mapviewer support * VINI support == Description of work performed during last quarter == === Publish/Subscribe system === We created a publish/subscribe system that notifies slivers quickly and efficiently of events. The publish/subscribe system is used in Tempest to notify slivers of configuration changes that may require installing, updating, or removing packages. === Elimination of PyXML dependencies === We eliminated the use of PyXML by Raven, switching to an XML parser that is built into the Python distribution. This enhances Raven portability, opening up non-PlanetLab platforms where PyXML may not have been available. === Rewrite Keyconvert tool from C to Python === We developed our own ASN.1 parsing routines in native python and ported a C-based tool for converting SSH keys to Python. This eliminates dependencies on precompiled binaries, allowing Stork to run on more platforms and more diverse hardware. === !ServiceMonitor tool === We created a tool for monitoring services that run in a sliver and automatically restarting them. This tool is typically used by long-running experiments where fault tolerance of failed processes over a long period of time must be guaranteed. The !ServiceMonitor tool replaces several one-off special-purpose tools for monitoring different critical services. === Owl refactoring and enhancements === We refactored Owl not only to improve the code base but also to extend its capabilities. The Owl client now uses a library to communicate with the Owl server. This library can be used by services that want to use Owl directly without going through the client. The server now supports integer data, statistics such as the mean, column hiding, a legend containing field descriptions, increaing and decreasing sort on all columns, and a per-row view that displays only the data for a row (typically a sliver). === Seattle support for Owl === We ported the Owl client to the Seattle platform and performed a feasibility study of supporting other Raven tools on that platform. Owl allows Seattle experiments to report results back to a centralized database where they can be analyzed. === Continuing support for SFA credentials === We continued to update Raven tools to use new versions of SFA credentials. More work needs to be done as the Credential continues to evolve toward merged support of !PlanetLab and ProtGENI. === Enhanced Owl Mapviewer support === Added new features to the Owl map viewer application, including a control panel for selecting display options and the ability to view links between nodes. Links allow services that implement virtualized network topologies, such as VINI, to be monitored by Owl. === Support for VINI === We added support for the Raven tools to automatically detect when they are installed on VINI nodes, and to install custom packages for the VINI platform. We created a monitoring application for Owl that allows latencies on VINI links to be monitored and reported to the Owl database. More work needs to be done with respect to VINI key distribution and initscript support to make it easier to provision VINI experiments with Raven. == Project participants == * John H. Hartman (University of Arizona) * Scott Baker (SB Software) * Jude Nelson (University of Arizona) == Publications (individual and organizational) == * None. == Outreach activities == * None. == Collaborations == We worked closely with the following Cluster B members: * !PlanetLab * GUSH * GpENI We are also working with the ProtoGENI, Seattle, and VINI projects to port Raven to their platforms. == Other Contributions == * None.