Cloud Infrastructure Management Interface
Abbreviation | CIMI |
---|---|
Status | Published |
Year started | 2010 |
Latest version | 1.1 October 2013 |
Organization | Distributed Management Task Force |
Related standards | Open Virtualisation Format (OVF) |
Domain | Cloud computing |
Website | Cloud Management Working Group |
Cloud Infrastructure Management Interface (CIMI) is an open standard API specification for managing cloud infrastructure.
CIMI aims to standardize interactions between cloud environments to achieve interoperable cloud infrastructure management between service providers and their consumers and developers, enabling users to manage their cloud infrastructure easily and without complexity.
CIMI 1.1 was registered as an International Standard in August 2014 by the Joint Technical Committee 1 (JTC 1) of the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC). [1]
Overview
The CIMI standard is defined and published by the Distributed Management Task Force (DMTF). It includes the Cloud Infrastructure Management Interface (CIMI) Model and RESTful HTTP-based Protocol specification, the CIMI XML Schema[2], the CIMI Primer and the CIMI Uses Cases whitepaper:
- Cloud Infrastructure Management Interface (CIMI) Model and RESTful HTTP-based Protocol
- The Cloud Infrastructure Management Interface (CIMI) Model and RESTful HTTP-based Protocol Specification defines the architecture and concepts of CIMI.
- CIMI XML Schema
- The CIMI XML Schema defines the XML representation of the CIMI model.
- CIMI Primer
- The CIMI Primer explains how clients can use the CIMI API for some common use cases, such as listing Machine Images and Configurations, creating a Machine from a Template and then retrieving details about it.
- CIMI Use Cases
- The CIMI Use Cases whitepaper collects a number of use cases that typify the next generation of issues facing IaaS providers and that are being considered to be addressed in the next version of the CIMI specification, such as Business Continuity/Disaster Recovery, Service Level Objective Management, Log / Metadata Management and Multicloud Management.[3]
In addition, a whitepaper on extensions is being developed.[4]
Goals
CIMI aims to provide a single interface that a cloud consumer can use to manage their cloud infrastructure in multiple clouds, so client code no longer needs to be adapted to each of the proprietary interfaces from these multiple vendors. Also, unlike a de facto standard where typically one vendor has change control over the interface, and everyone else has to reverse engineer the inner workings of it, CIMI is a de jure standard that is under change control of a standards body.[5] It takes a pragmatic view towards the standard and is expecting vendors to embrace a dual strategy that sees them deliver two products – one a CIMI compliant offering and the second a more proprietary offering that allows for more proprietary functionality.[6]
Scope
CIMI is scoped to the core IaaS functionality such as deploying and managing Machines, Volumes, Networks, Monitoring, and Systems that group them. It includes a feature discovery mechanism to find out what functions the cloud provider supports, including the metadata describing capabilities and resource constraints.[7]
Model and Features
Model
The CIMI model describes in detail all the resources that are accessible by the Cloud Consumer and that are maintained by the Cloud Provider, and their relationships.
The main entry point for the CIMI Consumer is the IaaS Provider's Cloud Entry Point. All other data is discovered, iteratively:
- Pointers to Machines, Volumes, Networks, Systems (a grouping of resources managed as a single unit), Machine Images, Credentials, ...
- Templates to provision new resources such as Machines, Volumes, Networks and Systems
- Monitoring resources such as Meters, Events & Event Logs (for notifications from the Provider, with time, type (error, warning, ...), severity, etc.)
- Jobs (one or more processes or actions directed to accomplish a specific goal, performed by the Provider)
- Metadata describing capabilities and resources constraints
- Optional provider extensions
The model is self-describing and allows for querying its own metadata, e.g., to discover which extensions have been implemented. The model is also extensible by the Consumer and the Provider.
The model also defines serializations both in XML and JSON for each resource.
Features
CIMI addresses the management of the lifecycle of infrastructure provided by a IaaS Provider, such as the creation, deletion, viewing and alteration of virtual machines, networks and storage, and start and stop operations. It also defines resource operations such as creating machine images or snapshots of machines for backup & restore, or for creation of additional identical virtual machines.
CIMI allows the import of an OVF package to create multiple CIMI resources. Support for OVF import and export is optional for a Provider and it is an implementation choice as to how many of the attributes in the OVF package are exposed through CIMI resources. Support for the actual import and export of OVF packages will typically be handled by a hypervisor under the management of the CIMI implementation, and thus the CIMI resources that are created reflect what the hypervisor did upon import.
Protocols
CIMI currently supports the RESTful [REST] architectural style using HTTP for all interactions between the Consumer and the Providers.
This protocol binding follows REST principles and describes the mapping of HTTP protocol verbs to operations on the model: Each request is sent by using an HTTP verb such as GET, POST, PUT and DELETE, and includes a message body in either JSON or XML format. Each response uses a standard HTTP status code, whose semantics are interpreted in the context of the particular request that was made.
Implementations
Several adapters have been developed that expose a CIMI API endpoint for client applications to consume and translate API calls to the proprietary API calls of supported target cloud provider(s).
The following is a list of CIMI implementations:
- Apache Deltacloud
- OW2 Sirocco Project
- StratusLab Project
- CIMI interface for OpenStack[8]
The CIMI Working Group has announced plug-fests for improved interoperability between CIMI implementations.[9]
References
- ^ "Cloud Infrastructure Management Interface (CIMI) Model and RESTful HTTP-based Protocol -- An Interface for Managing Cloud Infrastructure". Retrieved 2014-10-30.
- ^ "CIMI XML Schema". Retrieved 2014-06-30.
- ^ "Cloud Infrastructure Management Interface (CIMI) Use Cases" (PDF). Retrieved 2014-10-30.
- ^ "Cloud Management Working Group". Retrieved 2014-10-30.
- ^ Carlson, Mark. "Cloud Infrastructure has a new standard". Retrieved 2012-08-29.
- ^ Kepes, Ben (2012-09-07). "DMTF's Cloud Infrastructure Standard".
- ^ Norfolk, David (2012-09-20). "The DMTF's Cloud Infrastructure Management Interface (CIMI), a new cloud infrastructure management standard". Bloor.
- ^ "Infrastructure as a service cloud development". Retrieved 2013-01-30.
- ^ Chawki, Jamil (2012-11-05). "la nouvelle norme de gestion IaaS : CIMI".
See also
Category:DMTF standards Category:Cloud computing Category:Cloud standards Category:Application programming interfaces Category:Open standards
new article on IT standard
This article, Cloud Infrastructure Management Interface, has recently been created via the Articles for creation process. Please check to see if the reviewer has accidentally left this template after accepting the draft and take appropriate action as necessary.
Reviewer tools: Inform author |