incubator-libcloud mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ivan Meredith <i...@ivan.net.nz>
Subject Re: [libcloud] location sensitive APIs
Date Tue, 05 Jan 2010 21:48:36 GMT
On Tue, Jan 5, 2010 at 9:28 PM, Paul Querna <paul@querna.org> wrote:
> If you have been following trunk, I have added list_locations to the
> NodeDriver, and added support for all of our current providers[1].
> Most providers only have one location, Linode has multiple, EC2 has 3,
> but we need to change a few things to expose that more transparently.
> ** Ignore EC2 for a little bit, until later on in this email **
>
> One thing we don't have right now is a way to get location sensitive
> NodeSize, which includes the price.   For example, both EC2 and
> RimuHosting both vary the price of a node by the location.
>
> It seems that list_sizes should have an optional location kwarg.  If
> absent, a provider should:
>  - List all sizes, across all locations? (implies adding Location
> attribute to NodeSize)
>  - Pick one 'main' location, list sizes for it?
>  - Explode? (aka, its a required kwarg)
>

I like the idea of having a location on a NodeSize, and then listing
all sizes across different locations, with the ability to filter it
down by location with a kwarg. If a driver supports the same NodeSize
at multiple locations it could return a  Cartesian list of NodeSizes
with different locations maybe.

> ** On EC2:
>
> EC2 also has different image storage for each location, so list_images
> can be different between locations.  EC2 though also has completely
> separate endpoint URLs for each location, (us-west, us-east, eu-west).
>  Currently we make you have one NodeDriver for each EC2 Region, but
> it seems like we should just have one EC2 NodeDriver which
> transparently queries the right region -- this is how our Linode
> driver and I expect the RimuHosting driver will behave.   WDYT?
>

+1

> Thanks,
>
> Paul
>
> [1] - http://ci.apache.org/projects/libcloud/apidocs/libcloud.base.NodeDriver.html#list_locations
>

Mime
View raw message