Apache Libcloud Paul Querna, Chief Architect, Cloudkick June 22, - - PowerPoint PPT Presentation

apache libcloud
SMART_READER_LITE
LIVE PREVIEW

Apache Libcloud Paul Querna, Chief Architect, Cloudkick June 22, - - PowerPoint PPT Presentation

Apache Libcloud Paul Querna, Chief Architect, Cloudkick June 22, 2010 Tuesday, June 22, 2010 I want a server. Tuesday, June 22, 2010 I want a server right now. Tuesday, June 22, 2010 Libcloud is about Compute Not SaaS, PaaS, or Cloud


slide-1
SLIDE 1

Apache Libcloud

Paul Querna, Chief Architect, Cloudkick June 22, 2010

Tuesday, June 22, 2010

slide-2
SLIDE 2

I want a server.

Tuesday, June 22, 2010

slide-3
SLIDE 3

I want a server right now.

Tuesday, June 22, 2010

slide-4
SLIDE 4

Libcloud is about Compute

  • Not SaaS, PaaS, or Cloud Storage

Tuesday, June 22, 2010

slide-5
SLIDE 5

Why!?!?

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

Tuesday, June 22, 2010

slide-6
SLIDE 6

Cloud API Standards

  • Haven’t worked.

Tuesday, June 22, 2010

slide-7
SLIDE 7

16 Providers

Tuesday, June 22, 2010

slide-8
SLIDE 8

Simple APIs

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

Tuesday, June 22, 2010

slide-9
SLIDE 9

Tricks!

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

Tuesday, June 22, 2010

slide-10
SLIDE 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

Tuesday, June 22, 2010

slide-11
SLIDE 11

Don’t update that Wiki!

  • pssh on list list_nodes()

Tuesday, June 22, 2010

slide-12
SLIDE 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.

Tuesday, June 22, 2010

slide-13
SLIDE 13

Building on Top

  • Silver Lining: Python Deployment on the Cloud

Tuesday, June 22, 2010

slide-14
SLIDE 14

Building on Top

  • Mercury: Drupal Deployment on the Cloud

Tuesday, June 22, 2010

slide-15
SLIDE 15

Up Next

  • No World Domination, just clouds

Tuesday, June 22, 2010

slide-16
SLIDE 16

Image Formats

  • Standards haven’t worked (yet!)

Tuesday, June 22, 2010

slide-17
SLIDE 17

Multiple Languages

  • Java experiment started

Tuesday, June 22, 2010

slide-18
SLIDE 18

It’s Open Source

Tuesday, June 22, 2010

slide-19
SLIDE 19

Related Projects

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

Tuesday, June 22, 2010

slide-20
SLIDE 20
  • Apache Libcloud:

http://libcloud.org/ #libcloud on Freenode IRC

  • Slides online:

http://paul.querna.org/slides

Tuesday, June 22, 2010