Open Cloud Computing Interface

From HandWiki
Short description: Open protocol for cloud computing
Open Cloud Computing Interface
Open Cloud Computing Interface logo.svg
StatusPublished
Year started2010
Latest version1.2
OrganizationOpen Grid Forum
Related standardsOpen Virtualisation Format (OVF), Cloud Data Management Interface (CDMI)
DomainCloud computing
AbbreviationOCCI
WebsiteOCCI 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

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

OCCI began in March 2009 and was initially led by 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

  • 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

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 (website) automated infrastructure service-level agreements using OCCI
Italian National Institute of Nuclear Physics (INFN) uses OCCI to power their on-demand computing infrastructure
CompatibleOne (website) An Open Source Cloud service broker

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

Generic Implementations (frameworks)

Here are frameworks to build OCCI APIs.

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

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

Alternatives

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

References

  1. "Open Cloud Computing Interface | Open Standard | Open Community". https://occi-wg.org/. 
  2. The “Open” Cloud is Coming
  3. A. Edmonds, T. Metsch, and A. Papaspyrou, "Open Cloud Computing Interface in Data Management-related Setups," Springer Grid and Cloud Database Management, pp. 1–27, Jul. 2011.
  4. "OCCI Use Cases". http://www.ogf.org/Public_Comment_Docs/Documents/2009-09/occi-usecases.pdf. 
  5. "An Open, Interoperable Cloud". http://www.infoq.com/articles/open-interoperable-cloud. 
  6. "OCCI and SNIA". http://www.snia.org/cloud/CloudStorageForCloudComputing.pdf. 
  7. "New OGF Working Group to Create an API for Cloud Computing". http://cloudcomputing.sys-con.com/node/939230. 
  8. OCCI Wiki
  9. "occi-wg Info Page". https://www.ogf.org/mailman/listinfo/occi-wg. 
  10. "EGI Federated Cloud". http://www.egi.eu/infrastructure/cloud/. Retrieved Feb 26, 2014. 
  11. "OpenNebula - Flexible Enterprise Cloud Made Simple". https://archives.opennebula.org/documentation:archives:rel4.0:suns_views. 
  12. "OCCI Interface to CloudStack". http://sebgoa.blogspot.com/2013/11/occi-interface-to-cloudstack.html. Retrieved Feb 26, 2014. 
  13. "OCCI Nova Interface to openStack". https://github.com/IFCA/occi-os. Retrieved Feb 26, 2014. 
  14. "Open Cloud Computing Interface | Implementations". https://occi-wg.org/community/implementations/. 
  15. Presentation on Cloud Standards Interoperability: Status Update on OCCI and CDMI Implementations at the Workshop on Science Agency Uses of Clouds and Grids
  16. "Open Cloud Computing Interface | Tools". https://occi-wg.org/community/tools/. 
  17. "OpenNebula Cloud API: Amazon, OGF OCCI, OpenStack, Google Cloud, DMTF CIMI or vCloud? - OpenNebula – Open Source Cloud & Edge Computing Platform" (in en-US). https://opennebula.io/opennebula-cloud-api-amazon-ogf-occi-openstack-google-cloud-dmtf-cimi-or-vcloud/. 
  18. gwdg/rOCCI-server, Gesellschaft für wissenschaftliche Datenverarbeitung mbH Göttingen, 2017-04-10, https://github.com/gwdg/rOCCI-server, retrieved 2021-11-22 

External links