Open Cloud Computing Interface

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Open Cloud Computing Interface
Open Cloud Computing Interface logo.svg
Current Status Published
Year Started 2010
Version 1.1
Organization Open Grid Forum
Related Standards Open Virtualisation Format (OVF), Cloud Data Management Interface (CDMI)
Domain Cloud computing
Abbreviation OCCI
Website OCCI working group

The Open Cloud Computing Interface (OCCI) is a set of specifications delivered through the Open Grid Forum,[1][2] for cloud computing service providers. OCCI has a set of implementations that act as proofs of concept. It builds upon World Wide Web fundamentals by using the Representational State Transfer (REST) approach for interacting with services.

Scope[edit]

The aim of the Open Cloud Computing Interface is the development of an open specification and API for cloud offerings. The focus was on Infrastructure-as-a-Service (IaaS) based offerings but the interface can be extended to support Platform and Software as a Service offerings[3] as well.

IaaS is one of three primary segments of the cloud computing industry in which compute, storage and network resources are provided as services. The API is based on a review of existing service-provider functionality and a set of use cases contributed by the working group.[4] OCCI is a boundary API that acts as a service front-end to an IaaS provider’s internal infrastructure management framework. OCCI provides commonly understood semantics, syntax and a means of management in the domain of consumer-to-provider IaaS. It covers management of the entire life-cycle of OCCI-defined model entities and is compatible with existing standards such as the Open Virtualization Format (OVF) and the Cloud Data Management Interface (CDMI).[5] Notably, it serves as an integration point for standardization efforts including Distributed Management Task Force, Internet Engineering Task Force and the Storage Networking Industry Association.[6]

Context[edit]

OCCI began in March 2009 and was initially led by Sun Microsystems, RabbitMQ and the Complutense University of Madrid. Today,[when?] the working group has over 250 members and includes numerous individuals, industry and academic parties. The OCCI operates under the umbrella of the Open Grid Forum (OGF),[7] using a wiki [8] and a mailing list [9] for collaboration.

Goals[edit]

  • Interoperability: allow different Cloud providers to work together without data schema/format translation, facade/proxying between APIs and understanding and/or dependency on multiple APIs
  • Portability: no technical/vendor lock-in and enable services to move between providers allows clients to easily switch between providers based on business objectives (e.g., cost) with minimal technical costs, thus enabling and fostering competition.
  • Integration: the specification can be implemented with both the latest infrastructures or legacy ones.
  • Extensibility: thanks to the use of a meta-model and capabilities discovery features, an OCCI client is able to interact with any OCCI server using provider-specific OCCI extensions.

Specific Implementations[edit]

They implement specific extensions of OCCI for a particular service: IaaS, PaaS, brokering, etc.

Project Link
European Grid Infrastructure OCCI used in its multi-organization community Federated Cloud [10]
OpenNebula Supports OCCI, Amazon Web Services and its internal Sunstone GUI [11] interfaces.
CloudStack Supports OCCI, Amazon Web Services and its own internal interface [12]
OpenStack Supports its own internal interfaces with community-supported OCCI add-on available[13]
SLA@SOI automated infrastructure service-level agreements using OCCI
Italian National Institute of Nuclear Physics (INFN) uses OCCI to power their on-demand computing infrastructure
CompatibleOne An Open Source Cloud service broker

Several implementations have been announced or released.[14][15]

Generic Implementations (frameworks)[edit]

Here are frameworks to build OCCI APIs.

Project Language Protocol Backends
rOCCI Ruby HTTP OpenNebula
erocci erlang HTTP, HTTPS, XMPP mnesia

Complementing these are a variety of developer tools.[16]

Alternatives[edit]

Alternative approaches include the use of the Cloud Infrastructure Management Interface (CIMI) and related standards set from DMTF and the Amazon Web Services interfaces from Amazon. (The latter have not been endorsed by any known Standards organization.)

OpenNebula conducted a survey [17] of their users in which the results showed 38% do not expose cloud APIs, their users only interface through the Sunstone GUI, 36% mostly use the Amazon Web Services API, and 26% mostly use the OpenNebula’s OCCI API or the OCCI API offered by rOCCI.[18]

See also[edit]

References[edit]

External links[edit]