the promise of a cloud native platform (code freeze conf)

39
@bridgetkromhout The Promise of a Cloud Native Platform Bridget Kromhout

Upload: bridgetkromhout

Post on 15-Apr-2017

444 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

The Promise of a Cloud Native Platform

Bridget Kromhout

Page 2: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Bridget Kromhout

lives: Minneapolis,

Minnesota

works: Pivotal

podcasts: Arrested DevOps

organizes: devopsdays

Page 3: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

navigating platform choices

Page 4: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Previously, on Platform Tales…

Docker in Production: Reality, Not Hype

Page 5: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Deconstructing a monolithic

Python/Django app into…

(as was the style at the time)

Go microservices

Page 6: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Peak load: tens of thousands of requests per second Traffic variance: swings 10-20x throughout the week

Page 7: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Page 8: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Containerized builds

runs tests

creates versioned deployable artifacts

standardizes development environment

Page 9: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Page 10: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

also true for infrastructure as code.

Page 11: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Page 12: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Page 13: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Just because you can…

…doesn’t mean you should.

Page 14: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Image credit: Simon Wardley

Page 15: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

so what’s a cloud native platform?

Page 16: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

if you can deploy and operate code in any capacity, you have a platform

opinions optional

Page 17: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Page 18: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Page 19: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

1979 (Version 7)1982 (BSD)

20042000

chroot FreeBSD jails Solaris Zones LXC

2008

A Brief History of Containers

Page 20: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Page 21: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Page 22: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

“To always be

shipping, you need a

shipyard”

Bret Mogilefsky of 18F, on cloud.gov

Page 23: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Page 24: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Page 25: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

why > whatPrinciples > Practices >Tools

Page 26: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

reasonable constraints

Page 27: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Page 28: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Page 29: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Large-scale cluster management at Google with Borg - Verma et al. 2015

“Almost every task run under Borg contains a

built-in HTTP server that publishes information

about the health of the task and thousands of performance metrics”

Page 30: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Constraints are the contract that allows a platform to keep promises.

Page 31: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

promises

Page 32: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Everyone has a platform.

What promises can your platform keep?

Page 33: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Minimum Viable Platform

1. Routing and load balancing 2. Backing services broker 3. Infrastructure orchestration 4. Health management, monitoring, and recovery 5. Reusable runtime environment repository 6. Log aggregation

Casey West - The cloud-native future

Page 34: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

structured contracts determine the promises a platform can keep

Page 35: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

“Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure.”

Mel Conway

Page 36: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

12-factor apps need

12-factor ops

Page 37: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

use tools and simple patterns to make

doing the right thing

the easy thing

Page 38: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

simple patterns automated by tooling:

the cloud native advantage

Page 39: The Promise of a Cloud Native Platform (Code Freeze conf)

Pi @bridgetkromhout

Thank you!