Oscon Talk; 2014

69
Innovation & Next Generation Application Architectures ... with Open Source! Jesse Noller Principal Engineer, Rackspace developer.rackspace.com Brandon Philips CTO, CoreOS coreos.com

description

OSCon 2014

Transcript of Oscon Talk; 2014

Page 1: Oscon Talk; 2014

Innovation & Next Generation Application Architectures ... with Open Source!Jesse Noller Principal Engineer, Rackspacedeveloper.rackspace.com

Brandon PhilipsCTO, CoreOScoreos.com

Page 2: Oscon Talk; 2014

Jesse Noller @jessenoller

Principal Engineer, Rackspace

Page 3: Oscon Talk; 2014

Brandon Philips @brandonphilips

CTO, CoreOS

Page 4: Oscon Talk; 2014

Infrastructure is sort of … dumb, or at least annoyingly so.

Page 5: Oscon Talk; 2014

Individuals or Collections Single Purpose Single Application

Page 6: Oscon Talk; 2014

… Re-configure? Pave over, usually.

Page 7: Oscon Talk; 2014

But why do we do this?

Page 8: Oscon Talk; 2014

It’s a bit of a infrastructure flea market.

Page 9: Oscon Talk; 2014

Smarter Infrastructure.

Page 10: Oscon Talk; 2014

Open Hardware Open Source API

OnMetal

Page 11: Oscon Talk; 2014
Page 12: Oscon Talk; 2014

It’s getting smarter.

Page 13: Oscon Talk; 2014

… But! It’s hard to learn, and hard to build.

Page 14: Oscon Talk; 2014

We believe in a better future.

Page 15: Oscon Talk; 2014

Stop thinking about infrastructure.

Page 16: Oscon Talk; 2014

Invert your thinking

Page 17: Oscon Talk; 2014

Applications come first.

Page 18: Oscon Talk; 2014

name: web replicas: 5, labels: [ env=production ], uses: [ postgresql ], images: [ web:v2014-07-23, redis:2.8.13, ], requirements: { memory: 2GB, networkIO: 5MB/s }

Page 19: Oscon Talk; 2014

Self-optimizing. Self-healing. Self-organizing

Page 20: Oscon Talk; 2014

name: web replicas: 5, labels: [ env=production ], uses: [ postgresql ], images: [ web:v2014-07-23, redis:2.8.13, ], requirements: { memory: 2GB, networkIO: 5MB/s }

Page 21: Oscon Talk; 2014

Build, test, pivot faster.

Page 22: Oscon Talk; 2014

name: web replicas: 5, labels: [ experiment=cache ], uses: [ postgresql ], images: [ web:v2014-07-23, redis:2.8.13, ], requirements: { memory: 2GB, networkIO: 5MB/s }

Page 23: Oscon Talk; 2014

The “stack” is a distraction.

Page 24: Oscon Talk; 2014

Can we abstract containers?

Page 25: Oscon Talk; 2014

We’re not as far off as you think

Page 26: Oscon Talk; 2014

Google/Twitter/etc has this already & has been describing it for years

Page 27: Oscon Talk; 2014

Containers (cgroups, namespaces)

Page 28: Oscon Talk; 2014

Cluster configuration (Google Chubby)

Page 29: Oscon Talk; 2014

Scheduling (Omega, Aurora)

Page 30: Oscon Talk; 2014

Load balancing

Page 31: Oscon Talk; 2014

Internal and external monitoring

Page 32: Oscon Talk; 2014

Access Control throughout the system (unknown)

Page 33: Oscon Talk; 2014

So, we’re (sort) of getting there…

Page 34: Oscon Talk; 2014

We’re just on the brink.

Page 35: Oscon Talk; 2014

It’s not about how much memory is in your computer.

Page 36: Oscon Talk; 2014

We need companies and partners to go and create this future.

Page 37: Oscon Talk; 2014

We’re stuck in a box where we want to think about servers.

Page 38: Oscon Talk; 2014

kernel systemd

ssh docker

python java

nginx mysql

openssl

app

dis

tro

dist

ro d

istr

o di

stro

dis

tro

dist

ro d

istr

o

Page 39: Oscon Talk; 2014

kernel systemd

ssh docker

python java

nginx mysql

openssl

app d

istr

o di

stro

dis

tro

dist

ro d

istr

o di

stro

dis

tro

Page 40: Oscon Talk; 2014

… But today has its demands and it must be fed.

Page 41: Oscon Talk; 2014

Applications need to be repackaged for isolation in containers

Page 42: Oscon Talk; 2014

python openssl-A app1

dis

tro

dist

ro d

istr

o di

stro

dis

tro

dist

ro d

istr

ojava openssl-B app2

java openssl-B app3

kernel systemd ssh docker

Page 43: Oscon Talk; 2014

ubuntu jvm app1

redhat python 2.6 app2

debian nginx app3

kernel systemd ssh docker

dis

tro

dist

ro d

istr

o di

stro

dis

tro

dist

ro d

istr

o

Page 44: Oscon Talk; 2014

app1 container

app2 container

app3 container

CoreOS d

istr

o di

stro

dis

tro

dist

ro d

istr

o di

stro

dis

tro

Page 45: Oscon Talk; 2014

Applications need to be configured with clustering in mind

Page 46: Oscon Talk; 2014

Applications need to be automatically built from source… … and available as containers

Page 47: Oscon Talk; 2014

name: web replicas: 5, labels: [ env=production ], uses: [ postgresql ], images: [ web:v2014-07-23, redis:2.8.13, ], requirements: { memory: 2GB, networkIO: 5MB/s }

Page 48: Oscon Talk; 2014

name: web replicas: 5, labels: [ env=production ], uses: [ postgresql ], images: [ web:v2014-07-23, redis:2.8.13, ], requirements: { memory: 2GB, networkIO: 5MB/s }

Page 49: Oscon Talk; 2014

name: web replicas: 5, labels: [ env=production ], uses: [ postgresql ], images: [ web:v2014-07-23, redis:2.8.13, ], requirements: { memory: 2GB, networkIO: 5MB/s }

Page 50: Oscon Talk; 2014

Rethink & focus on what is most important: Users, Developers, Applications

Page 51: Oscon Talk; 2014

Define [success]

Page 52: Oscon Talk; 2014

!

No debates on what configuration management tool is the best today.

Page 53: Oscon Talk; 2014

“DevOps is dead.” !- Abraham Lincoln

Page 54: Oscon Talk; 2014

Pipeline of code to containers to production

Page 55: Oscon Talk; 2014

Servers are shared & applications run side-by-side

Page 56: Oscon Talk; 2014

Configuration is global and atomically updated

Page 57: Oscon Talk; 2014

When everyone can do this.

Page 58: Oscon Talk; 2014

Faster Idea Test Success Cycles

Page 59: Oscon Talk; 2014

Hint: It’s not Platform as a Service.

Page 60: Oscon Talk; 2014

No More bizarre and byzantine decisions.

Page 61: Oscon Talk; 2014

It’s not for everyone yet.

Page 62: Oscon Talk; 2014

How do we migrate to this?

Page 63: Oscon Talk; 2014

What does the industry look like?

Page 64: Oscon Talk; 2014

You focus on your ideas. Global application fabric.

Page 65: Oscon Talk; 2014

Events this Week

Page 66: Oscon Talk; 2014

Today 12:45 pm - 1:10 pm The new developer+ program @ the Rackspace Booth

Page 67: Oscon Talk; 2014

Today 3:45 pm - 4:15 pm Intro to CoreOS Talk @ the Rackspace Booth

Page 68: Oscon Talk; 2014

Tomorrow 6:00-8:30 PM CoreOS + Docker OSCON Meetup Brought to you by New Relic & Rackspace - http://goo.gl/ZmebT3

Page 69: Oscon Talk; 2014

Innovation & Next Generation Application Architectures ... with Open Source!Jesse Noller Principal Engineer, Rackspacedeveloper.rackspace.com

Brandon PhilipsCTO, CoreOScoreos.com