Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Libcloud: a unified (python) interface into the cloud (libcloud.org)
71 points by polvi on July 24, 2009 | hide | past | favorite | 15 comments


We're looking for folks who would be interested in "owning" a particular provider. Shoot us a note on the mailing list if you would like to participate! Although, patches speak louder than words. :)


[Disclaimer - I work for Windows Azure]

I think this is a great library and I would love to see it work with Windows Azure. Windows Azure doesn't have a service management API today (we only have storage APIs) but we are working on one and we'll have it by the end of the year[1].

I do think it'll need some changes to work with us (or with AppEngine for that matter) since libcloud seems to deal with raw nodes and Windows Azure likes to deal with 'services' as the first class entity with the raw nodes/machines/VMs/whatever just being various instances of something we call 'roles'. I think you could kind of hack around that in your code but it wouldn't be very elegant.

[1] I'm the person responsible for them so feel free to reach out to me. I can't reveal much of how it will look like in public yet though.


It is true, we're initially targeting providers that will give you a "server via API call". When you're developing against AppEngine (and I imagine Azure), you're committing to that platform, because it is very very specific. Whereas when you develop against Amazon or Slicehost, the server is the common unit ... which you are free to do whatever you like with.

That said, I think there is a lot of room for a similar project with storage. Amazon S3, Rackspace Cloud Files ... and maybe Azure will fit in there?

As for libcloud, we're trying to provide a DBI like thing for cloud server providers. It's not the end-all solution, but it is a clean first step towards cloud portability.


You can hack around it (but like I said, it isn't very clean). I can't speak for AppEngine or the others but on Windows Azure, you're really committing to Windows but not Windows Azure. So in theory, anything that works on Windows should work on us (we don't run things in a sandbox as some people like to say though we do run you currently in a normal user account without admin privs).

One way to implement this would be wrap a Windows Azure service around whatever you want to do on a node/server and then deploy that service. For example, if you have a Windows server where you install a ASP.NET app or a PHP site by xcopying binaries, you could do the same thing by wrapping that into a web role and put that in a Windows Azure service.

By doing this, you do miss out on some of the advantages of the platform but it should make it fit into your model.


Hey man, I could probably spend some time "owning" Slicehost. After all, I know what the API is like ;)


I use flexiscale at the moment, but have had one hell of a time trying to get any of their officially-offered API stuff to even work. If I manage to get anything out of them, I'll be sure to ping you guys...


How would you contrast this with OCCI?

http://www.occi-wg.org/

It seems to me that a python-only library however useful it may be would be less productive than a binding to the OCCI specs.


None of the providers (that I know of) support OCCI. libcloud could support OCCI once it has gotten some support.


Is your "current support" the only public TODO list?


Yes. Although we're willing to add more providers and more functions to the API (such as "list_images").


Sorry to bother you, I'm also having trouble cloning with git://github.com/polvi/libcloud.git Could be on my end, but can't think of why off the top of my head.


No problem, try this one:

  git clone git://github.com/cloudkick/libcloud.git


Launching and stopping servers is a small part of the portability hassle. The big part is a unified image and data plan. Things like building images programmatically from templates (look up rBuilder) and calling back to some centralized thing to seed the image with context/data to work on can help (many variations in these areas).

That said, I am glad to see more people releasing tooling in this area and appreciate the open licensing! Not trying to rain on this parade or anything.


Great! I'm a slicehost user and happy to see them here, but nice to be able to do this stuff in a non-platform specific way.


I attended your talk at Oscon, and am really excited about this project, thanks for releasing it. You'll see me on the mailing list soon.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: