WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-api

Re: [Xen-API] Xen Management API draft

To: Ewan Mellor <ewan@xxxxxxxxxxxxx>
Subject: Re: [Xen-API] Xen Management API draft
From: "Mike D. Day" <ncmike@xxxxxxxxxx>
Date: Fri, 23 Jun 2006 09:36:33 -0400
Cc: Xen-API <xen-api@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Fri, 23 Jun 2006 06:36:49 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <20060622170130.GI25606@xxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-api-request@lists.xensource.com?subject=help>
List-id: Discussion of API issues surrounding Xen <xen-api.lists.xensource.com>
List-post: <mailto:xen-api@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-api>, <mailto:xen-api-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-api>, <mailto:xen-api-request@lists.xensource.com?subject=unsubscribe>
References: <20060622170130.GI25606@xxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-api-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird 1.5.0.4 (Macintosh/20060530)
Ewan Mellor wrote:
Attached is a draft Xen Management API.  This document presents our ideas in
terms of a data model, with an implied binding to XML-RPC calls.  There are a
few examples in there too -- hopefully it's clear how the mapping between the
document and the wire protocol.

Ewan, I like the API a lot. The storage repository class needs some additional thought. It really requires some dbms-like attributes. I will try to get some more specific feedback on the storage repository class to you in a different note.

here is some cursory feedback:

1.4.1 transport layer

We should also support bare xml which would enable file redirection
(stdin and stdout) and the use of ssh.

1.4.2

session -

We should allow optional delegation of authentication to the transport
layer. For example, use ssh public key authentication instead of a
userid/password login.

1.6 (to do)

Authorization schema that maps uids to operations on objects.

notification - need a notification class and a notification listener
on the client.

2.6.1 VM class


Need an addition field "profile" that allows the user to classify VMs
for particular purposes. For example, "web server," "sendmail switch,"
"dbms host," "devel workstation," etc.

This should be a list attribute. Might be good to supply some
enumerated values but also allow values that are not enumerated.

Clone method needs to have a customization parameter. Simply cloning a
VM is not sufficient - the clone at minimum needs a different host
name, network configuration, and changes to various config files.

One way to customize a cloned image is to patch the
filesystem. Another is to replace specific files with new versions
(usually works best for binary files).

VM needs a migrate method:

Bool migrate(session id s, vm ref vm, host ref current, host ref
destination, Bool test)

If test is true, then the migration method will not actually migrate
the VM, but it will qualify the destination.


2.8 Host class

Host needs additional attributes that will allow automated
determination that a given host is capable of hosting a given VM.

For example, a VM may need specific host characteristics beyond CPU: a
minimum amount of memory, TPM, network bandwidth, and so on.

If the host class has these attributes we can create an addition
method that automatically determines if a host can host a particular
vm.

Bool qualify(session id s, vm ref vm, host ref host)


2.9 Class Network

Network needs additional attributes that provide media
characteristics of the NIC.

RO bandwidth integer Bandwidth in mbps

RO latency integer time in ms for an icmp roundtrip to a host on the
same subnet.


_______________________________________________
xen-api mailing list
xen-api@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-api