SlideShare a Scribd company logo
1 of 20
Download to read offline
Apache Libcloud
                        Paul Querna, Chief Architect, Cloudkick

                                    June 22, 2010


Friday, June 25, 2010
I want a server.




Friday, June 25, 2010
I want a server right now.




Friday, June 25, 2010
Libcloud is about Compute


                        • Not SaaS, PaaS, or Cloud Storage



Friday, June 25, 2010
Why!?!?

                        • Amazon: XML + Custom HMAC Auth
                        • Rackspace: JSON + Auth Tickets
                        • SoftLayer: XML RPC + User / Password


Friday, June 25, 2010
Cloud API Standards


                        • Haven’t worked.



Friday, June 25, 2010
16 Providers




Friday, June 25, 2010
Simple APIs

                        • list_nodes()
                        • reboot_node()
                        • destroy_node()
                        • create_node()

Friday, June 25, 2010
Tricks!

                        • Included data:
                         • Location
                         • Price-per-hour in USD
                        • Cheapest 4 gigabyte node outside the US

Friday, June 25, 2010
Code on Slides, at Ignite!
           possible = []
           for d in drivers:
             loc = filter(lambda x: x.country != 'US',
                           d.list_locations())
             for l in loc:
               sizes = filter(lambda x: x.ram >= 4096, d.list_sizes(l))
               for s in sizes:
                 possible.append({'size': s,
                                   'location': l,
                                   'driver': d})

           best = sorted(possible, lambda x,y:
                            x['size'].price < y['size'].price)[0]
           print best




Friday, June 25, 2010
Don’t update that Wiki!


                        • pssh on list list_nodes()



Friday, June 25, 2010
Fabric + Libcloud
                 $ fab hostname
                 [173.45.245.33] run: hostname
                 [173.45.245.33] out: lctest3.k1k.me
                 [173.45.245.32] run: hostname
                 [173.45.245.32] out: lctest2.k1k.me

                 Done.
                 Disconnecting from 173.45.245.33... done.
                 Disconnecting from 173.45.245.32... done.

Friday, June 25, 2010
Building on Top


                        • Silver Lining: Python Deployment on the Cloud



Friday, June 25, 2010
Building on Top


                        • Mercury: Drupal Deployment on the Cloud



Friday, June 25, 2010
Up Next


                        • No World Domination, just clouds



Friday, June 25, 2010
Image Formats


                        • Standards haven’t worked (yet!)



Friday, June 25, 2010
Multiple Languages


                        • Java experiment started



Friday, June 25, 2010
It’s Open Source




Friday, June 25, 2010
Related Projects


                        • JClouds: Java-world-equivalent
                        • Apache Deltacloud: Ruby-ish equivalent


Friday, June 25, 2010
• Apache Libcloud:
                          http://libcloud.org/

                          #libcloud on Freenode IRC


                        • Slides online:
                          http://paul.querna.org/slides


Friday, June 25, 2010

More Related Content

Similar to Paul Querna - libcloud

Couchdbkit djangocong-20100425
Couchdbkit djangocong-20100425Couchdbkit djangocong-20100425
Couchdbkit djangocong-20100425
guest4f2eea
 
Android casting-wide-net-android-devices
Android casting-wide-net-android-devicesAndroid casting-wide-net-android-devices
Android casting-wide-net-android-devices
Marakana Inc.
 
From where OpenVBX came from to how we open sourced it
From where OpenVBX came from to how we open sourced itFrom where OpenVBX came from to how we open sourced it
From where OpenVBX came from to how we open sourced it
minddog
 
Scaling with Postgres (Robert Treat)
Scaling with Postgres (Robert Treat)Scaling with Postgres (Robert Treat)
Scaling with Postgres (Robert Treat)
Ontico
 
Torquebox @ Charlotte.rb May 2011
Torquebox @ Charlotte.rb May 2011Torquebox @ Charlotte.rb May 2011
Torquebox @ Charlotte.rb May 2011
tobiascrawley
 
Scaling with Postgres (Highload++ 2010)
Scaling with Postgres (Highload++ 2010)Scaling with Postgres (Highload++ 2010)
Scaling with Postgres (Highload++ 2010)
Robert Treat
 

Similar to Paul Querna - libcloud (20)

Couchdbkit & Dango
Couchdbkit & DangoCouchdbkit & Dango
Couchdbkit & Dango
 
Couchdbkit djangocong-20100425
Couchdbkit djangocong-20100425Couchdbkit djangocong-20100425
Couchdbkit djangocong-20100425
 
ActiveRecord 2.3
ActiveRecord 2.3ActiveRecord 2.3
ActiveRecord 2.3
 
ScaleCamp 2009 - Last.fm vs Xbox
ScaleCamp 2009 - Last.fm vs XboxScaleCamp 2009 - Last.fm vs Xbox
ScaleCamp 2009 - Last.fm vs Xbox
 
Android casting-wide-net-android-devices
Android casting-wide-net-android-devicesAndroid casting-wide-net-android-devices
Android casting-wide-net-android-devices
 
From where OpenVBX came from to how we open sourced it
From where OpenVBX came from to how we open sourced itFrom where OpenVBX came from to how we open sourced it
From where OpenVBX came from to how we open sourced it
 
how to rate a Rails application
how to rate a Rails applicationhow to rate a Rails application
how to rate a Rails application
 
JRubyConf 2009
JRubyConf 2009JRubyConf 2009
JRubyConf 2009
 
Introduction to Node.js: perspectives from a Drupal dev
Introduction to Node.js: perspectives from a Drupal devIntroduction to Node.js: perspectives from a Drupal dev
Introduction to Node.js: perspectives from a Drupal dev
 
Bar Camp Auckland - Mongo DB Presentation BCA4
Bar Camp Auckland - Mongo DB Presentation BCA4Bar Camp Auckland - Mongo DB Presentation BCA4
Bar Camp Auckland - Mongo DB Presentation BCA4
 
Scaling with Postgres (Robert Treat)
Scaling with Postgres (Robert Treat)Scaling with Postgres (Robert Treat)
Scaling with Postgres (Robert Treat)
 
For every site a make file
For every site a make fileFor every site a make file
For every site a make file
 
Music Hackday Boston - The Last.fm API
Music Hackday Boston - The Last.fm APIMusic Hackday Boston - The Last.fm API
Music Hackday Boston - The Last.fm API
 
Why RESTful Design for the Cloud is Best
Why RESTful Design for the Cloud is BestWhy RESTful Design for the Cloud is Best
Why RESTful Design for the Cloud is Best
 
iSoligorsk #3 2013
iSoligorsk #3 2013iSoligorsk #3 2013
iSoligorsk #3 2013
 
Torquebox @ Charlotte.rb May 2011
Torquebox @ Charlotte.rb May 2011Torquebox @ Charlotte.rb May 2011
Torquebox @ Charlotte.rb May 2011
 
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02深層学習ライブラリの環境問題Chainer Meetup2016 07-02
深層学習ライブラリの環境問題Chainer Meetup2016 07-02
 
Scaling with Postgres (Highload++ 2010)
Scaling with Postgres (Highload++ 2010)Scaling with Postgres (Highload++ 2010)
Scaling with Postgres (Highload++ 2010)
 
Guild Prototype
Guild PrototypeGuild Prototype
Guild Prototype
 
Infra@LINE_Chris
Infra@LINE_ChrisInfra@LINE_Chris
Infra@LINE_Chris
 

Recently uploaded

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Recently uploaded (20)

Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 

Paul Querna - libcloud

  • 1. Apache Libcloud Paul Querna, Chief Architect, Cloudkick June 22, 2010 Friday, June 25, 2010
  • 2. I want a server. Friday, June 25, 2010
  • 3. I want a server right now. Friday, June 25, 2010
  • 4. Libcloud is about Compute • Not SaaS, PaaS, or Cloud Storage Friday, June 25, 2010
  • 5. Why!?!? • Amazon: XML + Custom HMAC Auth • Rackspace: JSON + Auth Tickets • SoftLayer: XML RPC + User / Password Friday, June 25, 2010
  • 6. Cloud API Standards • Haven’t worked. Friday, June 25, 2010
  • 8. Simple APIs • list_nodes() • reboot_node() • destroy_node() • create_node() Friday, June 25, 2010
  • 9. Tricks! • Included data: • Location • Price-per-hour in USD • Cheapest 4 gigabyte node outside the US Friday, June 25, 2010
  • 10. Code on Slides, at Ignite! possible = [] for d in drivers: loc = filter(lambda x: x.country != 'US', d.list_locations()) for l in loc: sizes = filter(lambda x: x.ram >= 4096, d.list_sizes(l)) for s in sizes: possible.append({'size': s, 'location': l, 'driver': d}) best = sorted(possible, lambda x,y: x['size'].price < y['size'].price)[0] print best Friday, June 25, 2010
  • 11. Don’t update that Wiki! • pssh on list list_nodes() Friday, June 25, 2010
  • 12. Fabric + Libcloud $ fab hostname [173.45.245.33] run: hostname [173.45.245.33] out: lctest3.k1k.me [173.45.245.32] run: hostname [173.45.245.32] out: lctest2.k1k.me Done. Disconnecting from 173.45.245.33... done. Disconnecting from 173.45.245.32... done. Friday, June 25, 2010
  • 13. Building on Top • Silver Lining: Python Deployment on the Cloud Friday, June 25, 2010
  • 14. Building on Top • Mercury: Drupal Deployment on the Cloud Friday, June 25, 2010
  • 15. Up Next • No World Domination, just clouds Friday, June 25, 2010
  • 16. Image Formats • Standards haven’t worked (yet!) Friday, June 25, 2010
  • 17. Multiple Languages • Java experiment started Friday, June 25, 2010
  • 18. It’s Open Source Friday, June 25, 2010
  • 19. Related Projects • JClouds: Java-world-equivalent • Apache Deltacloud: Ruby-ish equivalent Friday, June 25, 2010
  • 20. • Apache Libcloud: http://libcloud.org/ #libcloud on Freenode IRC • Slides online: http://paul.querna.org/slides Friday, June 25, 2010