This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] Xen Management API Draft, version 0.4

To: Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] Xen Management API Draft, version 0.4
From: Ewan Mellor <ewan@xxxxxxxxxxxxx>
Date: Mon, 3 Jul 2006 16:53:32 +0100
Delivery-date: Mon, 03 Jul 2006 10:35:36 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.9i
Attached is version 0.4 of the Xen Management API Draft.  This document will
eventually define a fixed XML-RPC protocol for remote and local management of
Xen-based systems.  I would like to invite you to study, give feedback on, and
collaborate around this document, so that we will soon have for the first time
an open source toolstack that exports a supported management API for Xen.

This document presents our ideas in terms of a data model, with an implied
binding to XML-RPC calls. These XML-RPC calls can then be used (over one of a
number of transports) to manage a Xen-based system.

The intention is to standardise both the data model and XML-RPC calls (one
implying the other) and then the Xen project will guarantee that that wire
protocol would be supported for the long term.

Behind that interface, we would then be free to improve Xend, and at the same
time we give a solid foundation for third-party tools (in particular
libvirt-based applications), GUIs, and so on. The API becomes effectively part
of the "guarantees" of the Xen project.

The XML-RPC calls will be the fixed standard, but we're also going to need
bindings to that XML-RPC for Python (for xm), for C (for libvirt), and
possibly for other languages too. These will be a thin translation from the
host language's values and types onto the XML-RPC, so that they can be kept
stable so that third-party applications can rely upon them in the long
term. Cleverer facilities (such as libvirt) can then be built on top. These
bindings will be open-source, and committed as libraries to the Xen trees for
all to use.

The latest version of the API definition, version 0.4, is attached.  This is
an Open Preview Release, and we welcome any discussion about it and the issues
surrounding it. We would love to see use cases for this API, so that we can
check that it all makes sense, and welcome any feedback you might have.

Please join the xen-api mailing list if you are interested in this project.  I
will collate all the feedback from that list and push out new versions of the
document as and when.

In particular, please pay attention to Section 1.6, the to-do list.  All of
these changes will be rolled into the document in the next couple of days.

This document, and its source, are available at the Xen wiki page XenApi:


This API is not yet fixed! The definition is still in flux, so please do not
expect it to be stable.  Please do comment though!

Many thanks,


Attachment: xenapi.pdf
Description: Adobe PDF document

Xen-devel mailing list