= Raven Quarterly Status Report for Q3 2009 = Reporting period: Jul 1 - Sep 30 2009 PI: John H. Hartman (University of Arizona) == Major accomplishments == * Support for creating Stork groups using !CoMon queries * Prototyped {{{raven}}} tool for one-step software installation * Ported Stork repository to mod_python infrastructure * Modified {{{sfa}}} authentication mechanism to explicitly sign arguments * Prototyped {{{owl}}}, a tool for monitoring slice health == Description of work performed during last quarter == === Activities and findings === We developed {{{tempest}}}, an evolution of the {{{pacman}}} tool. {{{Tempest}}} separates group membership determination and package action determination into separate helper commands. This allows {{{tempest}}} to support the original {{{pacman}}} format for the groups and packages files, but also arbitrary programs that produce the proper output. For example, this allows {{{tempest}}} to make group membership decisions based on a !CoMon query, e.g. the user can specify a group based on a !CoMon query consisting of nodes that have more than a certain amount of free memory. Nodes individually and dynamically decide whether or not they belong in this group. We developed {{{raven}}}, a tool for one-step software installation. {{{Raven}}} greatly simplifies the process of deploying software packages on a slice. {{{Raven}}} creates a template directory tree that the user populates with the proper GENI key and software packages. {{{Raven}}} takes care of the rest, creating and signing the proper tpfiles and {{{tempest}}} files, and uploads these files to the Stork repository along with the packages. At that point Stork will install these packages on all nodes in the specified slice. We ported the Stork repository to the mod_python infrastructure of Apache. This allows the repository to take advantage of Apache's authentication and load balancing mechanisms. We modified the SFA authentication mechanism so that authentication is done by explicitly signing the request, rather than relying on the underlying SSL protocol for authentication. This greatly simplifies the design and implementation by decoupling authentication from the underlying transport protocol. We developed a prototype of {{{owl}}}, a service for monitoring slice health. {{{Owl}}} consists of an extensible set of client-side scripts that collect information about software running in the slice. This information is sent to a centralized {{{owl}}} server that stores the information in a database. The {{{owl}}} server makes this information available via Web pages as well as in XML and JSON format. We demoed {{{owl}}} at GEC5. We continue to work on {{{iftd}}}, a data transfer daemon that will allow Stork clients to access files via a variety of transport protocols such as http, ftp, !BitTorrent, and !CoDeploy. Protocol handling and error handling are encapsulated in the {{{iftd}}} daemon, freeing individual Raven tools from having to perform these functions. We anticipate deploying {{{iftd}}} in the next quarter and it will eventually replace the arizona_transfer module the Raven tools currently use. === Project participants === * John H. Hartman (University of Arizona) * Scott Baker (SB Software) * Justin Cappos (University of Washington) * Justin Samuel (University of Washington) * Jude Nelson (University of Arizona) === Publications (individual and organizational) === * None. === Outreach activities === * None. === Collaborations === We worked closely with the following Cluster B members: * !PlanetLab -- Princeton University * GUSH -- Williams College === Other Contributions === * None.