OCCI and OpenStack

OpenStack is one of the major players in the cloud community at the moment. Still it currently lacks an standardized Interface which can be used to manage VMs. This changes now! During the Cloud Plugfest OCCI has been demoed on top of OpenStack.

The blueprint (details on wiki) for this feature enhancement has been around a while now. And based on this blueprint a first implementation has been created.

Andy Edmonds presented the following slides during the Cloud Plugfest in Düsseldorf which highlight more details of the OCCI interface for OpenStack

As noted this work has partly been sponsored by dgsi and FI-WARE. Now on to interoperability testing and looking into getting other Standards like CDMI on top of OpenStack.

Performance testing

One of the more recent questions was: how many overhead does OCCI add with regards to performance. The following diagram shows the ‘Requests per Second’ as well as the ‘Time per request’ from one of the python based OCCI implementations. Measured where only the times is took for an OCCI framework to parse and deal with a request to show that OCCI barely adds to the performance of the overall system. As the concurrency level rises the peak number of request can easily reach 4000 request per second whereas the time per request varies from 0.2 to 0.3 milliseconds.

OCCI in SSF

pyssf_slide

Platform Computing developed an implementation of the OCCI protocol/API for the German Research Project DGSI. As part of the Service Sharing Facility (SSF) the occi module is an OCCI implementation written in Python.

Usage is as simple as just saying ‘import occi’ in your code. Since python is an interpreted language and can be easily bind to other programming languages like C/C++ or Java this implementation can be used for several purposes. The module can be installed by either downloading the source and run ‘python setup.py install’ or by running ‘easy_install pyssf’.

The implementation includes demos for Job Submission (SaaS/PaaS), a KeyValue store (PaaS) and of cause a skeleton implementation of the OCCI infrastructure model which only needs to be bound to your hyper-visor to create your IaaS based Cloud.

Features

  • OCCI compliant implementation in Python using as a WSGI application
  • Can be used by and device/programing language which is able to understand HTTP
  • In addition to the Renderings defined by the OCCI Specification is comes with an HTML rendering for easy monitoring using a Web-Browser
  • Easy to use – to give your applications a RESTful OCCI compliant interface (“RESTify your apps”)
  • Build upon Tornado Web for high-performance request handling
  • Multi-user ready, easy to integrate with OpenId service or similar authentication/authorization services (including transport via SSL)
  • Enables you to easily integrate several products, provide service interface to clients/customers, build your Cloud Service offerings
  • Focuses on Integration, Interoperability, Portability and Innovation

 

Resourcespyssf_teaser

All work (c) 2010-2012 Platform Computing and (c) 2012-2016 engjoy UG (haftungsbschraenkt) under LGPL License.