Cloud Foundry and Ubuntu - 2012

66
Cloud Foundry and Ubuntu one year of bliss for a marriage made in heaven! Patrick Chanezon Senior Director Developer Relations [email protected] http://twitter.com/chanezon Ubuntu Cloud Summit, May 2012 Tuesday, May 8, 12

Transcript of Cloud Foundry and Ubuntu - 2012

Page 1: Cloud Foundry and Ubuntu - 2012

Cloud Foundry and Ubuntuone year of bliss for a marriage

made in heaven!

Patrick ChanezonSenior DirectorDeveloper [email protected]://twitter.com/chanezon Ubuntu Cloud Summit, May 2012

Tuesday, May 8, 12

Page 2: Cloud Foundry and Ubuntu - 2012

P@ in a nutshell

• French, based in San Francisco

• Senior Director, Developer Relations, VMware

• Software Plumber, API guy, mix of Enterprise and Consumer

• 18 years writing software, backend guy with a taste for javascript

• 2 y Accenture (Notes guru), 3 y Netscape/AOL (Servers, Portals), 5 y Sun (ecommerce, blogs, Portals, feeds, open source)

• 6 years at Google, API guy (first hired, helped start the team)

• Adwords, Checkout, Social, HTML5, Cloud

Tuesday, May 8, 12

Page 3: Cloud Foundry and Ubuntu - 2012

Dreams Of my childhood

3

Tuesday, May 8, 12

Page 4: Cloud Foundry and Ubuntu - 2012

Accelerando / Singularity, in a Galaxy far far away

§ Even if we automate ourselves out of a job every 10 years

§ ...I don’t think the singularity is near!

4

Tuesday, May 8, 12

Page 5: Cloud Foundry and Ubuntu - 2012

Moore's Law is for Hardware Only

§ Does not apply to software

§ Productivity gains not keeping up with hardware and bandwidth

§ Writing software is hard, painful, and still very much a craft

5

Tuesday, May 8, 12

Page 6: Cloud Foundry and Ubuntu - 2012

Moore's Law’s free lunch is over

§ Herb Sutter, Welcome to the Junglehttp://herbsutter.com/welcome-to-the-jungle/

6

Tuesday, May 8, 12

Page 7: Cloud Foundry and Ubuntu - 2012

Future

“The future is already here — it's just not very evenly distributed” William Gibson

7

Tuesday, May 8, 12

Page 8: Cloud Foundry and Ubuntu - 2012

Haiku - Skylark

“Trampling on clouds,inhaling the mist,the skylark soars” —SHIKI

8

Tuesday, May 8, 12

Page 9: Cloud Foundry and Ubuntu - 2012

Haiku - Frog

“Crouching,studying the clouds—a frog”CHIYO-JO

9

Tuesday, May 8, 12

Page 10: Cloud Foundry and Ubuntu - 2012

Architecture Changes: 60’s Mainframe

Tuesday, May 8, 12

Page 11: Cloud Foundry and Ubuntu - 2012

Architecture Changes: 80’s Client-Server

Tuesday, May 8, 12

Page 12: Cloud Foundry and Ubuntu - 2012

Architecture Changes: 90’s Web

Tuesday, May 8, 12

Page 13: Cloud Foundry and Ubuntu - 2012

Architecture Changes: 2010’s Cloud, HTML5, Mobile

Tuesday, May 8, 12

Page 14: Cloud Foundry and Ubuntu - 2012

Back to Client Server: Groovy Baby!

14

Tuesday, May 8, 12

Page 15: Cloud Foundry and Ubuntu - 2012

What is Cloud Computing?

15

Cloud According to my daughter Eliette

Tuesday, May 8, 12

Page 16: Cloud Foundry and Ubuntu - 2012

Cloud Stack - Classic Pyramid

16

Platform As A Service

Infrastructure As A Service

SoftwareAs A Service

Tuesday, May 8, 12

Page 17: Cloud Foundry and Ubuntu - 2012

Cloud Stack - By Value

17

InfrastructureAs A Service

SoftwareAs A Service

Platform As A Service

Tuesday, May 8, 12

Page 18: Cloud Foundry and Ubuntu - 2012

Cloud Stack - History

§ What does cloud mean, 4 main angles• Software 1994 Netscape

• Infrastructure 2002 Amazon AWS

• Platform 2008 Google

• Development now!

18

§ Industrialization of hardware and software infrastructurelike electricity beginning of 20th century

§ But software development itself is moving towards craftmanship

Tuesday, May 8, 12

Page 19: Cloud Foundry and Ubuntu - 2012

Cloud started at Consumer websites solving their needs

• Google, Amazon, Yahoo, Facebook, Twitter

• Large Data Sets

• Storage Capacity growing faster than Moore’s Law

• Fast Networks

• Vertical -> Horizontal scalability

• Open Source Software

• Virtualization

• Cloud is a productization of these infrastructures

• Public Clouds Services: Google, Amazon

• Open Source Software: Hadoop, Eucalyptus, Ubuntu, Cloud Foundry

Tuesday, May 8, 12

Page 20: Cloud Foundry and Ubuntu - 2012

20

Infrastructure

Tuesday, May 8, 12

Page 21: Cloud Foundry and Ubuntu - 2012

IaaS/Virtualization getting mainstream

§ AWS, Joyent, Rackspace,...

§ Open Source projects: OpenStack, DeltaCloud, Eucalyptus

§ Automation: Chef, Juju

§ Standardization? DMTF

§ Inside the Firewall, Virtualization: VMware, Microsoft, Xen, KVM

§ 50% of workloads are virtualized

§ Easy to provision, manage instance...BUT

§ Still need to manage backups, software stacks, monitor, upgrades

21

Tuesday, May 8, 12

Page 22: Cloud Foundry and Ubuntu - 2012

With Infrastructure, you still need to build your own platform

§ Need to build a distributed platform on top of you infrastructure

§ Story of the AWS meltdown from last summer• http://blog.reddit.com/2011/03/why-reddit-was-down-for-6-of-last-24.html

• http://www.readwriteweb.com/cloud/2010/12/chaos-monkey-how-netflix-uses.php

• http://news.ycombinator.com/item?id=2477296

• http://stu.mp/2011/04/the-cloud-is-not-a-silver-bullet.html

§ Twilio, Smugmug, SimpleGeo survived it because they built their own distributed platform on top of IaaS

§ Enterprise customers want to consider Infrastructure like CDNs• Multi Cloud usage

• Based on Open Source de facto standards, or full standards whenever that happens

22

Tuesday, May 8, 12

Page 23: Cloud Foundry and Ubuntu - 2012

23

Platforms

Let the wild rumpus begin!

Tuesday, May 8, 12

Page 24: Cloud Foundry and Ubuntu - 2012

Platforms

§ Raise the Unit of currency to be application & services instead of infrastructure

§ Google App Engine, Cloud Foundry, SalesForce Heroku, Cloudbees, Amazon Elastic Beanstalk, Microsoft ex-Azure, AppFog

§ Single or a few languages, services

§ Start of Multi language Polyglot platforms

§ Enabler for Agile Developers -> Create Business value faster

§ Lack of standards: risk, vendor lock-in

§ Enterprise needs:•Control, customizability

•Private/Hybrid Cloud

•Avoid lock-in

24

Tuesday, May 8, 12

Page 25: Cloud Foundry and Ubuntu - 2012

Agile Development Processes

Tuesday, May 8, 12

Page 26: Cloud Foundry and Ubuntu - 2012

Agility as a survival skill

§ Consumer software is becoming like fashion•Phone apps, social apps, short lifetime, fast lifecycles

•Ab testing

§ Enterprise•Clay Shirky, rise of situational apps

§ Kent Beck, Usenix 2011 Talk, “Software G-Forces”change in software process when frequency grows

§ Cloud Platforms enables an Agile culture, driver for innovation•Scalability is built in the platforms

•Can iterate faster

•Focus on design

§ Cloud Platforms lets developers focus on driving business value

26

Tuesday, May 8, 12

Page 27: Cloud Foundry and Ubuntu - 2012

Main Risk: Lock-In

27

Welcome to the hotel californiaSuch a lovely placeSuch a lovely facePlenty of room at the hotel californiaAny time of year, you can find it here

Last thing I remember, I wasRunning for the doorI had to find the passage backTo the place I was before’relax,’ said the night man,We are programmed to receive.You can checkout any time you like,But you can never leave!

Tuesday, May 8, 12

Page 28: Cloud Foundry and Ubuntu - 2012

Cloud Foundry: The Open PaaS

28

Clou

d Pr

ovide

r Int

erfa

ce

Application Service Private Clouds

PublicCloud

MicroCloud

Data Services

Other Services

Msg Services

vFabric Postgres

vFabric RabbitMQTM

• Open Source: Apache 2 Licensed

• multi language/frameworks

• multi services

• multi cloud

Tuesday, May 8, 12

Page 29: Cloud Foundry and Ubuntu - 2012

29

Open Source

Tuesday, May 8, 12

Page 30: Cloud Foundry and Ubuntu - 2012

Open Source Advantage: moves faster

§ http://code.google.com/p/googleappengine/issues/detail?id=13

30

• https://github.com/cloudfoundry/vcap/pull/25

Tuesday, May 8, 12

Page 32: Cloud Foundry and Ubuntu - 2012

Open Source Advantage: more innovation

32

Tuesday, May 8, 12

Page 33: Cloud Foundry and Ubuntu - 2012

33

CloudFoundry.org

Tuesday, May 8, 12

Page 34: Cloud Foundry and Ubuntu - 2012

34

Cloud Foundry Open Source Workflow

Reviewers +2/-2

test verification score ✓ ✗ git push triggers test execution

Gerrit Code Review

reviews.cloudfoundry.org

Jenkins CI

ci.cloudfoundry.org

github

github.com/cloudfoundry

+1/-1 Committers

on +2 and ✓ change pushed to github

cloudfoundry.com

production updated ~2x/week

Tuesday, May 8, 12

Page 35: Cloud Foundry and Ubuntu - 2012

35

Multi Cloud

Tuesday, May 8, 12

Page 36: Cloud Foundry and Ubuntu - 2012

36

CloudFoundry.COM

Runtimes & Frameworks

Services

vCenter / vSphere

Cloud Foundry

Infrastructure

Tuesday, May 8, 12

Page 37: Cloud Foundry and Ubuntu - 2012

37

Cloud Foundry.ORG

The Source Code to Compile & Build Cloud Foundry

vCenter / vSphere

Cloud Foundry

DownloadCode

Setup Environment

Deploy Behind Firewall

Setup Scripts

Tuesday, May 8, 12

Page 38: Cloud Foundry and Ubuntu - 2012

Micro Cloud Foundry

38

Micro

Tuesday, May 8, 12

Page 39: Cloud Foundry and Ubuntu - 2012

What is a Micro Cloud?

39

Entire Cloud Running inside of a single VM

Or

Tuesday, May 8, 12

Page 40: Cloud Foundry and Ubuntu - 2012

What is in Micro Cloud Foundry?

40

Open source Platform as a Service project

App Instances Services

10.04

Dynamic Updating DNS

.COM

Tuesday, May 8, 12

Page 41: Cloud Foundry and Ubuntu - 2012

Cloud Foundry is 1 year old

41

§ Services• Caldecott – tunnel into your services, explore with standard client tools

• PostgreSQL, RabbitMQ

§ Frameworks, Runtimes, and Tools• Java and Ruby Auto-Reconfiguration

• Scala, node.JS 0.6.*, Erlang, JRuby, PHP, Python, .NET, Spring 3.1, Grails 2.0, Play 2.0

• Multi-Node Chef based deployment tools

• Maven Plugin, Eclipse Integration

• VMC manifests, Java Debugging, Rails Console

• Standalone applications

§ Micro Cloud Foundry x 3

Tuesday, May 8, 12

Page 42: Cloud Foundry and Ubuntu - 2012

Cloud Foundry is 1 year old

41

§ Services• Caldecott – tunnel into your services, explore with standard client tools

• PostgreSQL, RabbitMQ

§ Frameworks, Runtimes, and Tools• Java and Ruby Auto-Reconfiguration

• Scala, node.JS 0.6.*, Erlang, JRuby, PHP, Python, .NET, Spring 3.1, Grails 2.0, Play 2.0

• Multi-Node Chef based deployment tools

• Maven Plugin, Eclipse Integration

• VMC manifests, Java Debugging, Rails Console

• Standalone applications

§ Micro Cloud Foundry x 3

Tuesday, May 8, 12

Page 43: Cloud Foundry and Ubuntu - 2012

Cloud Foundry Ecosystem

42

Tuesday, May 8, 12

Page 44: Cloud Foundry and Ubuntu - 2012

Cloud Foundry Ecosystem

43

Tuesday, May 8, 12

Page 45: Cloud Foundry and Ubuntu - 2012

Register today

44

http://cloudfoundry.com/signup

CFOpenTour2012Use Promo Code

To avoid approval queue waiting time

Tuesday, May 8, 12

Page 46: Cloud Foundry and Ubuntu - 2012

45

Cloud Foundry BOSH

Tuesday, May 8, 12

Page 47: Cloud Foundry and Ubuntu - 2012

46

§ 500 – 5,000 VMs

§ 40+ unique node types

§ 75+ unique software packages

§ 75+ unique environments

§ 2x/week cf.com updates

§ 24x7x365 non-stop operation

§ No-downtime deployments

§ Reliable, robust, repeatable deployments, updates, capacity adjustments

§ Small teams manage many instances

Production Grade Cloud Foundry Clusters

Google style problem è Google style solution

cloudfoundry.com

production, staging, stress, qa, dev

Tuesday, May 8, 12

Page 48: Cloud Foundry and Ubuntu - 2012

47

§ Cloud Foundry BOSH is an open source tool-chain for release engineering, deployment, and lifecycle management of large scale distributed services• Prescriptive way of creating releases and managing systems and services

• It is not a collection of shell scripts, not a pile of Perl

§ Built to deploy and manage production-class, large scale clusters• Production grade Cloud Foundry clusters: 500+ VMs, 40+ jobs, 75+ packages

• Multi-node, multi-tier, complex clusters: e.g., our Gerrit/Jenkins Cluster

§ Built for devops usage and scale by a crack team of veterans• A project, not a product: command line interface, YAML, etc.

• Continuous improvement, iterative development, rough edges

Cloud Foundry BOSH

github.com/cloudfoundry/bosh

Tuesday, May 8, 12

Page 49: Cloud Foundry and Ubuntu - 2012

48

BOSH: under the hood

bosh cli

redis natsdb

director healthmon

IaaS CPI

workers

stemcellagent

blobs

“BOSH is deployed by BOSH”

cloudfoundry.com

BOSH User

active jobs

disk

Tuesday, May 8, 12

Page 50: Cloud Foundry and Ubuntu - 2012

49

IaaS neutral by design

CPI: code completefunctional status: “work in progress”

vSphere: battle tested implementation, thousands of deployments

vCloud Director: “work in progress”, 2H 2012

contribute: github.com/cloudfoundry/bosh

Cloud Provider Interface (CPI)

Cloud Foundry BOSH

github.com/piston/openstack-bosh-cpi

Tuesday, May 8, 12

Page 52: Cloud Foundry and Ubuntu - 2012

Cloud for Developers: the true path is PaaS!

51

Tuesday, May 8, 12

Page 53: Cloud Foundry and Ubuntu - 2012

52

Development As A

Service

Tuesday, May 8, 12

Page 54: Cloud Foundry and Ubuntu - 2012

Development

§ Final frontier, happening now

§ Not whole product yet

§ Social Coding: Google code, Github

§ Web IDEs: Cloud9, Exo, Orion

§ Higher level case tools, Wavemaker, Orangescape, Runmyprocess

§ Continuous Integration: Jenkins, Cloudbees, OpenShift

§ Test: feature of cloud platforms

§ Knowledge Sharing: StackOverflow

53

Tuesday, May 8, 12

Page 55: Cloud Foundry and Ubuntu - 2012

54

Lessons for Developers

Tuesday, May 8, 12

Page 56: Cloud Foundry and Ubuntu - 2012

Predictions

§ Software is becoming like fashion, design rules

§ Welcome to Babel, use the best tool for the job, embrace multiple language & heterogeneity

§ Our jobs will change, build yourself out of your current job

§ Sysadmin jobs will morph, there will be less of them

§ Many opportunities open when you embrace change

55

Tuesday, May 8, 12

Page 57: Cloud Foundry and Ubuntu - 2012

Things to Forget

§ First normal form

§ Waterfall model

§ Single server deployment

§ Single language skill

§ Build everything from scratch

§ Build custom infrastructure

56

Tuesday, May 8, 12

Page 58: Cloud Foundry and Ubuntu - 2012

Things to Learn

• Agile

• Take risks, fail often, fail fast and learn

• API Design: create the API first

• UI Design, Javacript, HTML5, CSS3

• A/B Testing

• Open Source, Open Standards

• Architecture, Distributed Computing (CAP theorem, 8 fallacies)

• Cloud Platforms and APIs

• Multiple types of languages (imperative, object, functional, logic)

• Ability to encapsulate domain knowledge in a DSL

• Build on the shoulders of giants: reuse, REST APIs

• Pick your battles, choose what you need to build yourself to add value

• Learn to live in a box (embrace platform limitations) to think outside the box

• Use an App Store for distribution

• Consider your career as a startup57

Tuesday, May 8, 12

Page 59: Cloud Foundry and Ubuntu - 2012

Tuesday, May 8, 12

Page 60: Cloud Foundry and Ubuntu - 2012

Such stuff as dreams are made on

§ Like a kid on a candy store: there's never been a better time to be a software developer!

§ Welcome to the Cloud: embrace change and reinvent yourselves

§ “The future is already there, not evenly distributed” Gibson

§ We Developers, invent the future today

59

Tuesday, May 8, 12

Page 61: Cloud Foundry and Ubuntu - 2012

Cloud Foundry Resources

60

Primary Site : cloudfoundry.com

Open Source Site : cloudfoundry.org

Twitter : @cloudfoundry , hash tag #cfoundry

Blog : blog.cloudfoundry.com

FB : facebook.com/cloudfoundry

Support : support.cloudfoundry.com• Documentation

• Knowledge Base

• Q & A / Forums

We’re hiring: www.cloudfoundry.com/jobs

Tuesday, May 8, 12

Page 62: Cloud Foundry and Ubuntu - 2012

Questions

61

?Tuesday, May 8, 12

Page 63: Cloud Foundry and Ubuntu - 2012

Thank You!@CloudFoundry

@chanezon

Website : www.cloudfoundry.comBlog : blog.cloudfoundry.comForum : support.cloudfoundry.com

t

t

Tuesday, May 8, 12

Page 64: Cloud Foundry and Ubuntu - 2012

Books / Articles

§ Nick Carr, The Big Switch

§ Eric Raymond, The Art of Unix Programming

§ Weinberg, Psychology of Computer Programming

§ Wes python book

§ Mark html5 book

§ Kent Beck XP

§ Hunt, Thomas, The Pragmatic Programmer

§ Ade Oshineye, Apprenticeship Patterns

§ Matt Cutt's Ignite Talk IO 2011, Trying different things

§ Josh Bloch talk about api design

§ Larry and Sergey, Anatomy of a Search Engine

§ Rob Pike, The Practice of Programming

63

Tuesday, May 8, 12

Page 65: Cloud Foundry and Ubuntu - 2012

Papers / Talks

§ Simon Wardley, Oscon 09 “Cloud - Why IT Matters”

§ Tim O’Reilly article on internet os

§ Peter Deutsch’s 8 Fallacies of Distributed Computing

§ Brewer’s CAP Theorem

§ Gregor Hohpe’s Starbucks Does Not Use Two-Phase Commit

§ Stuff I tag http://www.delicious.com/chanezon/

§ More specifically http://www.delicious.com/chanezon/cloudfoundry

§ My previous Talks http://www.slideshare.net/chanezon

§ My list of favorite books http://www.chanezon.com/pat/soft_books.html

64

Tuesday, May 8, 12

Page 66: Cloud Foundry and Ubuntu - 2012

Acknowledgement

§ Drawings from my daughters Eliette

§ Slides from Dave McCrory, Derek Collison, Duke Leto

§ Haiku from Addiss, Stephen; Yamamoto, Fumiko; Yamamoto, Fumiko Y.; Yamamoto, Akira Y. (2011-06-22). Haiku: An Anthology of Japanese Poems (Shambhala Library)

§ Painting Hiroshige, Sengai

65

Tuesday, May 8, 12