Jump to: navigation, search


< Graffiti
Revision as of 00:51, 19 April 2014 by Travis Tripp (talk | contribs) (Proposed Horizon Widgets)

Graffiti Architecture

Base Concepts

    • OpenStack services are great at providing somewhere to use metadata in terms of key-value pairs, but collaborating on metadata is largely a disconnected and difficult process that often involves searching outdated wikis and opening the source code. It becomes more difficult as a cloud's scale grows in terms of the number of resources being managed and services being integrated. Graffiti makes this easier by creating the following concepts:
      • Capabilities and Requirements: Graffiti embraces the idea that cloud resources may be described using capabilities and requirements, a concept influenced by some parts of OpenStack today as well as by industry specifications like OASIS TOSCA (Please note, Graffiti is NOT an orchestration engine, it only assists in describing and locating existing resources in the cloud.).
      • Dictionary: A common place for services, admins, and users to expose their metadata vocabulary. This is the basis for creating an agreement on how to describe the various capabilities the cloud provides. It supports both unstructured and structured / hierarchical metadata in the form of "capability types".
      • Directory: A common API to tag and search across existing and new services for cloud content based on the metadata vocabulary, ad-hoc properties, or freeform text.
      • Resource Capability Directory: A persistent shared repository for services to publish information about cloud resources. This can optionally be used by services instead of or in addition to having their own local native storage to describe resources.


Proposed Horizon Widgets

In Graffiti, we are proposing reusable widgets that we will plug into Horizon. The widgets will provide the ability to "tag" capabilities and requirements on various resources. They will also be able to generate filter criteria that a Graffiti plugin service can use to filter resources.


Proposed Horizon Component Architecture