113
Implementing Private Clouds Andrew Clay Shafer QCon SF 2010

Building private-clouds-qconsf

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Building private-clouds-qconsf

Implementing Private Clouds

Andrew Clay ShaferQCon SF 2010

Page 2: Building private-clouds-qconsf

Andrew Clay Shafer

@littleidea

Page 3: Building private-clouds-qconsf

Andrew Clay Shafer

@littleidea

Page 4: Building private-clouds-qconsf

Andrew Clay Shafer

@littleidea

Page 5: Building private-clouds-qconsf

Andrew Clay Shafer

@littleidea

Page 6: Building private-clouds-qconsf

Andrew Clay Shafer

@littleidea

Page 7: Building private-clouds-qconsf

Andrew Clay Shafer

@littleidea

Page 8: Building private-clouds-qconsf

Andrew Clay Shafer

@littleidea

Page 9: Building private-clouds-qconsf

real artists ship

Page 10: Building private-clouds-qconsf

great artists steal

Page 11: Building private-clouds-qconsf

pri·vate

http://www.flickr.com/photos/athomeinscottsdale/3279949186/

Page 12: Building private-clouds-qconsf

pri·vate• confined to or intended only for the persons immediately concerned; confidential

http://www.flickr.com/photos/athomeinscottsdale/3279949186/

Page 13: Building private-clouds-qconsf

pri·vate• confined to or intended only for the persons immediately concerned; confidential

• not open or accessible to the general public

http://www.flickr.com/photos/athomeinscottsdale/3279949186/

Page 14: Building private-clouds-qconsf

pri·vate• confined to or intended only for the persons immediately concerned; confidential

• not open or accessible to the general public

• undertaken individually or personally

http://www.flickr.com/photos/athomeinscottsdale/3279949186/

Page 15: Building private-clouds-qconsf

cloud

Page 16: Building private-clouds-qconsf

cloud- noun• a dim or obscure area in something otherwise clear or transparent.

Page 17: Building private-clouds-qconsf

cloud- noun• a dim or obscure area in something otherwise clear or transparent.

- verb• to make obscure or indistinct; confuse

Page 18: Building private-clouds-qconsf

Chance of Tangential Ranting and Meandering Editorialization

Warning

Page 19: Building private-clouds-qconsf

is_a?(Cloud)

Page 20: Building private-clouds-qconsf

CloudTaxonomies

Page 21: Building private-clouds-qconsf

CloudTaxonomies

Page 22: Building private-clouds-qconsf

CloudTaxonomies

Too Much *aaS

Page 23: Building private-clouds-qconsf

CloudStandards

Page 24: Building private-clouds-qconsf

CloudStandards

Page 25: Building private-clouds-qconsf

CloudStandards

I have no standards.

Page 26: Building private-clouds-qconsf

If someone tells you they have a cloud solution you can install in a rack...

Page 27: Building private-clouds-qconsf

If someone tells you they have a cloud solution you can install in a rack...

ask them for the brochure with the architecture...

Page 28: Building private-clouds-qconsf

If someone tells you they have a cloud solution you can install in a rack...

ask them for the brochure with the architecture...

and how much it costs...

Page 29: Building private-clouds-qconsf

If someone tells you they have a cloud solution you can install in a rack...

ask them for the brochure with the architecture...

and how much it costs...

and if they will throw in a free bridge.

Page 30: Building private-clouds-qconsf

Where did cloud arise?

Page 31: Building private-clouds-qconsf

Where did cloud arise?

Page 32: Building private-clouds-qconsf

Where did cloud arise?

Page 33: Building private-clouds-qconsf

Where did cloud arise?

Page 34: Building private-clouds-qconsf

Where did cloud arise?

Page 35: Building private-clouds-qconsf

Where did cloud arise?

Page 36: Building private-clouds-qconsf

Industrial Revolution

Page 37: Building private-clouds-qconsf

Revolutionized

Page 38: Building private-clouds-qconsf

Scale Changes Everything

Page 39: Building private-clouds-qconsf

So, you are sold, you are ready to build your own robotics IT factory, what’s next?

Shall we build a compute cloud?

Page 40: Building private-clouds-qconsf

NO

Page 41: Building private-clouds-qconsf

We will build web applications that brokers access to compute resources.

NO

Page 42: Building private-clouds-qconsf
Page 43: Building private-clouds-qconsf

Automation

Page 44: Building private-clouds-qconsf

AutomationAbstraction

Page 45: Building private-clouds-qconsf

AutomationAbstractionReliability

Page 46: Building private-clouds-qconsf

AutomationAbstractionReliabilityInnovation

Page 47: Building private-clouds-qconsf

AutomationAbstractionReliabilityInnovationDisruption

Page 48: Building private-clouds-qconsf

To hypervise or not to hypervise, that is the question?

Page 49: Building private-clouds-qconsf

To hypervise or not to hypervise, that is the question?

So many choices

Page 50: Building private-clouds-qconsf

“It works at my desk”

Page 51: Building private-clouds-qconsf
Page 52: Building private-clouds-qconsf

quacks_like_a?(Cloud)

Page 53: Building private-clouds-qconsf

Reliability...

Page 54: Building private-clouds-qconsf

6 Laws Of ReliabilityIsolation

Concurrency

Failure Detection

Fault Identification

Live Upgrade

Stable Storage

Page 55: Building private-clouds-qconsf

6 Laws Of ReliabilityIsolation

Concurrency

Failure Detection

Fault Identification

Live Upgrade

Stable Storage

Joe Armstrong

Page 56: Building private-clouds-qconsf

if p( fail | one unit) = 10-3 then

p( fail | n units) = 10-3xn

Isolation

Page 57: Building private-clouds-qconsf

if p( fail | one unit) = 10-3 then

p( fail | n units) = 10-3xn

Isolation

So 10 nines should be easy, we just need 4 units, amirite?

Page 58: Building private-clouds-qconsf

n > 1

Concurrent

Page 59: Building private-clouds-qconsf

Problem Solved?

Page 60: Building private-clouds-qconsf

Cloudin’ it up

Page 61: Building private-clouds-qconsf

Cloudin’ it up

Sorta...

Page 62: Building private-clouds-qconsf

Simple Services: Single Responsibility

Page 63: Building private-clouds-qconsf
Page 64: Building private-clouds-qconsf

Some people, when confronted with a problem, think “I know, I'll use a message bus.”

Page 65: Building private-clouds-qconsf

Some people, when confronted with a problem, think “I know, I'll use a message bus.”

Now they have queue problems.

Page 66: Building private-clouds-qconsf

The plot thickens... Users? Images?

Kernels?

Metering?

Performance?

Auditing? Upgrades?

Deployment?Security?

Authentication?

Server Size?

Page 67: Building private-clouds-qconsf

Complexity Much?Users? Images?

Kernels?

Metering?

Performance?

Auditing? Upgrades?

Deployment?Security?

Authentication?

Server Size?

Page 68: Building private-clouds-qconsf
Page 69: Building private-clouds-qconsf

But wait, the cloud IS an application?

Page 70: Building private-clouds-qconsf

How do we build and deploy that?

Page 71: Building private-clouds-qconsf

automate the automation

Page 72: Building private-clouds-qconsf

automate the automation

If it’s not meta-circular, you are doin’ it wrong.

Page 73: Building private-clouds-qconsf

Configuration Management

Page 74: Building private-clouds-qconsf

Configuration Management

solve this problem

Page 75: Building private-clouds-qconsf

Developers, Developers, Developers...

Page 76: Building private-clouds-qconsf

Developers, Developers, Developers...

It’s the applications stupid...

Page 77: Building private-clouds-qconsf

How do you deliver value?

Page 78: Building private-clouds-qconsf

Continuous Delivery/Deployment

Page 79: Building private-clouds-qconsf

Black’s Theorem:the wrong abstraction is worse than no abstraction.

Page 80: Building private-clouds-qconsf

Live Upgrade

Page 81: Building private-clouds-qconsf

Live Upgrade

systems that never stop

Page 82: Building private-clouds-qconsf

Speaking of frameworks...

Page 83: Building private-clouds-qconsf

Communities of Practice

Page 84: Building private-clouds-qconsf

Communities of Practice

Page 85: Building private-clouds-qconsf

6 Laws Of Reliability

Page 86: Building private-clouds-qconsf

6 Laws Of ReliabilityIsolation

Concurrency

Failure Detection

Fault Identification

Live Upgrade

Stable Storage

Page 87: Building private-clouds-qconsf

6 Laws Of ReliabilityIsolation

Concurrency

Failure Detection

Fault Identification

Live Upgrade

Stable Storage

unmentionables

Page 88: Building private-clouds-qconsf

6 Laws Of ReliabilityIsolation

Concurrency

Failure Detection

Fault Identification

Live Upgrade

Stable Storage

unmentionables

WWJAD

Page 89: Building private-clouds-qconsf

If a cloud falls in a forest and no one is there to hear it, do we still have 100% uptime?

Page 90: Building private-clouds-qconsf

UndeliberateDiscovery

Page 91: Building private-clouds-qconsf

oh.

UndeliberateDiscovery

Page 92: Building private-clouds-qconsf

oh.

Oh!

UndeliberateDiscovery

Page 93: Building private-clouds-qconsf

oh.

Oh!

WTF?!??

UndeliberateDiscovery

Page 94: Building private-clouds-qconsf

oh.

Oh!

WTF?!??

OMG?!??

UndeliberateDiscovery

Page 95: Building private-clouds-qconsf

oh.

Oh!

WTF?!??

OMG?!??

UndeliberateDiscovery

*crying*

Page 96: Building private-clouds-qconsf

Untested Vs. Unmonitored

Page 97: Building private-clouds-qconsf

Untested Vs. Unmonitored

a well behaved cloud should inform you of it's health

Page 98: Building private-clouds-qconsf

Cloud Hobbyists

Page 99: Building private-clouds-qconsf

TCO and ROI crossing the chasm

Page 100: Building private-clouds-qconsf

cause cloudin’ ain’t easy

Page 101: Building private-clouds-qconsf

cause cloudin’ ain’t easy

scale

Page 102: Building private-clouds-qconsf

cause cloudin’ ain’t easy

web ops

scale

Page 103: Building private-clouds-qconsf

cause cloudin’ ain’t easy

web ops

networkingscale

Page 104: Building private-clouds-qconsf

cause cloudin’ ain’t easy

web ops

networking

storage

scale

Page 105: Building private-clouds-qconsf

cause cloudin’ ain’t easy

web ops

networking

storage

scale

power

Page 106: Building private-clouds-qconsf

cause cloudin’ ain’t easy

web ops

networking

storage

scale

coolingpower

Page 107: Building private-clouds-qconsf

cause cloudin’ ain’t easy

web ops

networking

storage

scale

coolingpower people

Page 108: Building private-clouds-qconsf

cause cloudin’ ain’t easy

web ops

networking

storage

scale

coolingpower

support

people

Page 109: Building private-clouds-qconsf

cause cloudin’ ain’t easy

web ops

networking

storage

scale

coolingpower

trainingsupport

people

Page 110: Building private-clouds-qconsf

SO YOU THINK YOU CAN

CLOUD

Page 111: Building private-clouds-qconsf

SO YOU THINK YOU CAN

CLOUD now holding auditions across the world, looking for the top clouders...

Page 113: Building private-clouds-qconsf

•IRC and mailing lists

•http://cloudscaling.com/blog

•http://perspectives.mvdirona.com/

•http://www.kitchensoap.com/

•http://www.planetdevops.net/

•http://www.jedi.be/blog/

•http://highscalability.com/

•Velocity, Surge, LISA