From c1b76e1235a1a0f1bd5e4f1e501db80bd0adb56e Mon Sep 17 00:00:00 2001 From: Monty Taylor Date: Thu, 2 Jun 2016 05:03:32 +0300 Subject: Add cloud native fallacy talk --- src/talks/fallacy.hbs | 228 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 228 insertions(+) create mode 100644 src/talks/fallacy.hbs (limited to 'src/talks/fallacy.hbs') diff --git a/src/talks/fallacy.hbs b/src/talks/fallacy.hbs new file mode 100644 index 0000000..bf8936d --- /dev/null +++ b/src/talks/fallacy.hbs @@ -0,0 +1,228 @@ + + + + + + + The Cloud Native Fallacy: You are not Google, or How to Stop Worrying and Learn to Love your Servers + + + + +
+

Who am I?

+ +

Distinguished Engineer

+

IBM Cloud

+
+ +
+

Who am I?

+ +

Technical Committee

+

Foundation Board of Directors

+

Developer Infrastructure Core Team

+
+ +
+ Slim Pickens Rides Bomb +
+ +
+

Is Cloud Native good?

+

yes

+
+ +
+

Is not-Cloud Native bad?

+

no

+
+ +
+

Do you need to write Cloud Native apps to use cloud?

+

no

+
+ +
+

Are you a bad person if don't write Cloud Native apps?

+

no

+
+ +
+

What is Cloud Native?

+
+ +
+

Cloud-native applications are meant to function "in a world of cloud + computing that is ubiquitous and flexible." Applications can be + developed on a cloud platform, then deployed to different clouds where + supporting software stacks will help them run at scale.

+

Information Week - Jul 30, 2015

+
+ +
+

The Cloud Native Computing Foundation will harmonize emerging + technologies and foster innovation in container packaged, dynamically + scheduled, and microservices based application development and + operations.

+
+ +
+

Cloud Native Is ...

+ +
+ +
+ Pivotal Cloud Native Architecture +
+ +
+

12 Factor Application

+

I. Codebase - One codebase tracked in revision control, many deploys

+

II. Dependencies - Explicitly declare and isolate dependencies

+

III. Config - Store config in the environment

+

IV. Backing services - Treat backing services as attached resources

+

V. Build, release, run - Strictly separate build and run stages

+

VI. Processes - Execute the app as one or more stateless processes

+

VII. Port binding - Export services via port binding

+

VIII. Concurrency - Scale out via the process model

+

IX. Disposability - Maximize robustness with fast startup and graceful shutdown

+

X. Dev/prod parity - Keep development and production as similar as possible

+

XI. Logs - Treat logs as event streams

+

XII. Admin processes - Run admin/management tasks as one-off processes

+ +
+ +
+

This is awesome

+
+ +
+

Except for III

+

I use config files

+
+ +
+

VI. Stateless

+

If /dev/null is fast in web scale I will use it. Is it web scale?

+

Use a service to store your data - like a database

+

Is that database service web scale?

+
+ +
+

Go google and watch "MongoDB is Web Scale"

+
+ +
+

A Foolish Consistency is the Hobgoblin of Little Minds

+
+ +
+

Cloud Native / 12 Factor is **A** great approach

+

You still have to think.

+
+ +
+

As an application developer,
+ I want to deploy and run an application on the internet + so that my customers all over the world can consume it.

+
+ +
+

As an operator,
+ I want to deploy the application across multiple clouds + so that my service survives issues in any one of them.

+
+ +
+

THIS WORKS

+

I'm doing it myself as we speak

+ +

10-20k VMs per-day

+

10 Cloud Regions in 7 clouds

+

Only using OpenStack APIs

+
+ +
+

OpenStack Infra

+
+ +
+

Tooling, Automation and CI for OpenStack Project

+
+ +
+

Our VMs are everywhere

+ +
+ +
+

We also have servers

+

Infra Cloud - Hardware donated by HPE

+
+ +
+

Architecture

+

image

+
+ +
+

Gerrit

+ +
+ +
+

nodepool

+ +
+ +
+

Run what you want

+

12-factor application on Kubernetes with Kuryr

+

Traditional Java web application behind NAT with a Floating IP

+

Kerberos Server on the Internet with Fixed IP and Reverse DNS

+

Baremetal for hardware enabled transcoding via Ironic

+
+ +
+ Pivotal Cloud Native Architecture +
+ +
+

DevOps recognizes the need for Dev and Ops to collaborate

+
+ +
+

Rigid devotion to any guidelines without judgement is deadly

+
+ + + -- cgit v1.2.3