The Cloud Foundry Mullet - Functions at the Front, Containers at the Back

A presentation at All Day DevOps in October 2018 in by Paul Czarkowski

Slide 1

Slide 1

The Platform Mullet Functions at the front Containers at the back Paul Czarkowski @pczarkowski October 17, 2018

Slide 2

Slide 2

October 17, 2018

Slide 3

Slide 3

■ ■ ■ ■

Slide 4

Slide 4

Slide 5

Slide 5

Slide 6

Slide 6

Slide 7

Slide 7

Slide 8

Slide 8

Slide 9

Slide 9

Slide 10

Slide 10

Users API Artifacts Database Storage Compute Network Access

Slide 11

Slide 11

Users API Storage Admin DBA Systems Admin Network Engineer Security QA

Slide 12

Slide 12

Slide 13

Slide 13

Slide 14

Slide 14

What Abstraction is the Right One for You ? More Control More Toil Traditional Ticket Based Human Toil Less Control Less Toil Build App Artifact Build App Container(s) App → to the Platform ????? Config Management Deployment Manifest CF API ??? API Infrastructure As Code IaaS API PXE boot ? Hardware IaaS Platform Meat Cloud ! Container Runtime Infrastructure Container Hosts Platform Infrastructure As A Service (IaaS) K8s API CaaS Container Container Platform Orchestrator Container As A Service (CaaS) Application PaaS Function PaaS Application Platform Platform Application Platform Platform Platform As A Service (PaaS) Function As A Service (FaaS) [SERVERLESS] 14

Slide 15

Slide 15

What Abstraction is the Right One for You ? More Control More Toil Traditional Ticket Based Human Toil Less Control Less Toil Build App Artifact Build App Container(s) App → to the Platform ????? Config Management Deployment Manifest CF API ??? API Infrastructure As Code IaaS API PXE boot ? Hardware IaaS Platform Meat Cloud ! Container Runtime Infrastructure Container Hosts Platform Infrastructure As A Service (IaaS) K8s API CaaS Container Container Platform Orchestrator Container As A Service (CaaS) Application PaaS Function PaaS Application Platform Platform Application Platform Platform Platform As A Service (PaaS) Function As A Service (FaaS) [SERVERLESS] 15

Slide 16

Slide 16

What Abstraction is the Right One for You ? More Control More Toil Traditional Ticket Based Human Toil Less Control Less Toil Build App Artifact Build App Container(s) App → to the Platform ????? Config Management Deployment Manifest CF API ??? API Infrastructure As Code IaaS API PXE boot ? Hardware IaaS Platform Meat Cloud ! Container Runtime Infrastructure Container Hosts Platform Infrastructure As A Service (IaaS) K8s API CaaS Container Container Platform Orchestrator Container As A Service (CaaS) Application PaaS Function PaaS Application Platform Platform Application Platform Platform Platform As A Service (PaaS) Function As A Service (FaaS) [SERVERLESS] 16

Slide 17

Slide 17

What Abstraction is the Right One for You ? More Control More Toil Traditional Ticket Based Human Toil Less Control Less Toil Build App Artifact Build App Container(s) App → to the Platform ????? Config Management Deployment Manifest CF API ??? API Infrastructure As Code IaaS API PXE boot ? Hardware IaaS Platform Meat Cloud ! Container Runtime Infrastructure Container Hosts Platform Infrastructure As A Service (IaaS) K8s API CaaS Container Container Platform Orchestrator Container As A Service (CaaS) Application PaaS Function PaaS Application Platform Platform Application Platform Platform Platform As A Service (PaaS) Function As A Service (FaaS) [SERVERLESS] 17

Slide 18

Slide 18

What Abstraction is the Right One for You ? More Control More Toil Traditional Ticket Based Human Toil Less Control Less Toil Build App Artifact Build App Container(s) App → to the Platform ????? Config Management Deployment Manifest CF API ??? API Infrastructure As Code IaaS API PXE boot ? Hardware IaaS Platform Meat Cloud ! Container Runtime Infrastructure Container Hosts Platform Infrastructure As A Service (IaaS) K8s API CaaS Container Container Platform Orchestrator Container As A Service (CaaS) Application PaaS Function PaaS Application Platform Platform Application Platform Platform Platform As A Service (PaaS) Function As A Service (FaaS) [SERVERLESS] 18

Slide 19

Slide 19

What Abstraction is the Right One for You ? More Control More Toil Traditional Ticket Based Human Toil Less Control Less Toil Build App Artifact Build App Container(s) App → to the Platform ????? Config Management Deployment Manifest CF API ??? API Infrastructure As Code IaaS API PXE boot ? Hardware IaaS Platform Meat Cloud ! Container Runtime Infrastructure Container Hosts Platform Infrastructure As A Service (IaaS) K8s API CaaS Container Container Platform Orchestrator Container As A Service (CaaS) Application PaaS Function PaaS Application Platform Platform Application Platform Platform Platform As A Service (PaaS) Function As A Service (FaaS) [SERVERLESS] 19

Slide 20

Slide 20

https://twitter.com/onsijoe/status/598235841635360768

Slide 21

Slide 21

Slide 22

Slide 22

Serverless Haiku “Here is a Function Run it every time you receive an event.”

Slide 23

Slide 23

Slide 24

Slide 24

Platform Projects / Products

Slide 25

Slide 25

Platform Projects / Products BOSH

Slide 26

Slide 26

Slide 27

Slide 27

Pick the Right Runtime for Each Workload Containers Batches Event-Driven Functions Container Orchestrator (CaaS) Microservices Application Platform (PaaS) Data Services Monolithic Applications Serverless Functions (FaaS) IaaS 27

Slide 28

Slide 28

Slide 29

Slide 29

Tolerate Invest Identify top 10s list TECHNICAL QUALITY BETTER TIME Methodology WORSE TECHNICAL QUALITY - Technical Debt Level BUSINESS VALUE - Revenue / Cost Impact Eliminate WORSE Migrate BUSINESS VALUE

  • Gartner’s TIME methodology for Application Portfolio Rationalization BETTER

Slide 30

Slide 30

Slide 31

Slide 31

CONTAINERIZE ALL The Things!!

Slide 32

Slide 32

Baremetal, VMWare, mainframe apps, fragile processes

Slide 33

Slide 33

Software outside a company’s core competency Baremetal, VMWare, mainframe apps, fragile processes

Slide 34

Slide 34

Software outside a company’s core competency Baremetal, VMWare, mainframe apps, fragile processes

Slide 35

Slide 35

Software outside a company’s core competency 12-factor applications; cloud native options for Java, .NET, Nodejs, other buildpacks “Traditional” DevOps, terraform, config management, etc, DBaaS etc. non orchestrated Docker. Baremetal, VMWare, mainframe apps, fragile processes

Slide 36

Slide 36

Software outside a company’s core competency 12-factor applications; cloud native options for Java, .NET, Nodejs, other buildpacks “Traditional” DevOps, terraform, config management, etc, DBaaS etc. non orchestrated Docker. Baremetal, VMWare, mainframe apps, fragile processes

Slide 37

Slide 37

Software outside a company’s core competency 12-factor applications; cloud native options for Java, .NET, Nodejs, other buildpacks “Traditional” DevOps, terraform, config management, etc, DBaaS etc. non orchestrated Docker. Baremetal, VMWare, mainframe apps, fragile processes

Slide 38

Slide 38

Software outside a company’s core competency 12-factor applications; cloud native options for Java, .NET, Nodejs, other buildpacks “Traditional” DevOps, terraform, config management, etc, DBaaS etc. non orchestrated Docker. Baremetal, VMWare, mainframe apps, fragile processes

Slide 39

Slide 39

Software outside a company’s core competency 12-factor applications; cloud native options for Java, .NET, Nodejs, other buildpacks Stateful applications, ISVs, elastic search, datapipelines, spark, etc., “Traditional” DevOps, terraform, config management, etc, DBaaS etc. non orchestrated Docker. Baremetal, VMWare, mainframe apps, fragile processes

Slide 40

Slide 40

Software outside a company’s core competency Stateless, event-driven applications 12-factor applications; cloud native options for Java, .NET, Nodejs, other buildpacks Stateful applications, ISVs, elastic search, datapipelines, spark, etc., “Traditional” DevOps, terraform, config management, etc, DBaaS etc. non orchestrated Docker. Baremetal, VMWare, mainframe apps, fragile processes

Slide 41

Slide 41

Gitlab Concourse Spinnaker

Slide 42

Slide 42

Slide 43

Slide 43

https://cloudplatformonline.com/2018-state-of-devops.html

Slide 44

Slide 44

https://youtu.be/qvdt8uRf8RY

Slide 45

Slide 45

https://cloudplatformonline.com/2018-state-of-devops.html

Slide 46

Slide 46

Slide 47

Slide 47

https://youtu.be/McV0Q5GY-fM

Slide 48

Slide 48

Take business requirements and turn them into features Application Team App1 Messaging Build common services for App Teams Platform Team App Platform ML ? App2 Creds/Certs App3 Middleware ELK Container Services DBaaS Container Hosts | Kubernetes ? Infrastructure Team Abstract infrastructure complexity with easy consumption IaaS Infra Services Virtual Infrastructure Physical Infrastructure ?

Slide 49

Slide 49

https://youtu.be/McV0Q5GY-fM

Slide 50

Slide 50

http://engineering.pivotal.io/post/transformation-roi/

Slide 51

Slide 51

$ $ % $

Slide 52

Slide 52

Slide 53

Slide 53

October 17, 2018

Slide 54

Slide 54

Meet me in the Slack channel for Q&A bit.ly/addo-slack #2018addo-cultrans October 17, 2018