incubator-libcloud mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Paul Querna <p...@querna.org>
Subject Re: [libcloud] Voxel support - how to handle sizes and creates
Date Thu, 14 Jan 2010 20:56:24 GMT
On Mon, Jan 11, 2010 at 5:41 AM, Upayavira <uv@odoko.co.uk> wrote:
> I've mostly implemented support for Voxel in libcloud.
>
> I've done everything but create_node and list_sizes, as I haven't yet
> worked out how best to implement them.
>
> My main question is that libcloud expects discrete "sizes", whereas at
> Voxel the memory/CPU are not tied to the disk usage. A 10 core device
> could have a 10Gb disk while a 1 core device could have a 1Tb disk.

Yup, several providers allow this kind of variable NodeSize.

I think the best thing we can do is in two parts:
1) Add a features["list_sizes"] dict, with:
  - variable_disk
  - variable_cores
  - variable_memory

If these features attributes are set, its an indicator to a user of
the driver, they are safe to set arbitrary values on the NodeSize
object.

2) We should make a sensible set of default NodeSizes, this is what
the vcloud driver does for example with regards to memory.  I would
suggest just making a set of NodeSizes that is roughly the same as
what amazon or rackspace offer.

This keeps the library easy to use for people who just want a node
quickly, but also provides an API defined way for variable NodeSize
objects.

Thoughts?

Thanks,

Paul

Mime
View raw message