The CIMI REST API

Apache Deltacloud exposes the DMTF Cloud Infrastructure Management Interface (CIMI) as an alternative to the native Deltacloud API. This means that clients can 'speak' the CIMI API to a Deltacloud server on the frontend, managing resources in any of the backend cloud providers supported by Deltacloud.

Note:

This is NOT a definitive guide to the DMTF CIMI specification. The full CIMI spec is available from the DMTF Cloud Management Initiative (DSP0263).

This page shows examples of interactions with the CIMI interface exposed by a Deltacloud server. The examples here cover the CIMI resources and collections that are currently supported in Deltacloud; we are constantly improving our CIMI implementation. If you come across any bugs or inconsistencies we'd be very happy to hear about them.

In the following sections, the textual definitions following the title of each resource (e.g. "Machine") that are rendered in bold and italic type are taken from the CIMI 1.0.1 specification, available from the DMTF Cloud Management Initiative (DSP0263).


Starting Deltacloud with the CIMI interface

The –frontends (-f) flag is used to specify which frontends a deltacloud server should expose:


[user@name ~]$ deltacloudd -i ec2 -f cimi
Starting Deltacloud API :: ec2 :: http://localhost:3001/cimi/cloudEntryPoint

>> Thin web server (v1.5.0 codename Knife)
>> Debugging ON
>> Maximum connections set to 1024
>> Listening on localhost:3001, CTRL+C to stop


The example above shows the deltacloud server with the CIMI interface and the EC2 driver. You can even expose both the deltacloud and the CIMI frontends with a single server, e.g. -f cimi,deltacloud .

As can be seen above, starting deltacloud in this way will expose the CIMI cloud entry point at localhost:3001/cimi/cloudEntryPoint.