[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-API] Xen Management API draft

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.


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

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



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.