P to V to C:
The Value of Bringing “Everything” to Containers
Cornelia Davis
@cdavisafc
Mukesh Gadiya
@mcgadiya
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Safe Harbor Statement
The following is intended to outline the general direction of Pivotal's offerings. It is intended for information purposes
only and may not be incorporated into any contract. Any information regarding pre-release of Pivotal offerings, future
updates or other planned modifications is subject to ongoing evaluation by Pivotal and is subject to change. This
information is provided without warranty or any kind, express or implied, and is not a commitment to deliver any
material, code, or functionality, and should not be relied upon in making purchasing decisions regarding Pivotal's
offerings. These purchasing decisions should only be based on features currently available. The development,
release, and timing of any features or functionality described for Pivotal's offerings in this presentation remain at the
sole discretion of Pivotal. Pivotal has no obligation to update forward looking information in this presentation.
2
“I want to move all
workloads from V(irtual) to
C(ontainers) so that we no
longer have to worry about
things like patching
operating systems.” Major US Telco Provider
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Agenda
What is Container(ization)?
Benefits of Containerization
The Different Faces of Containerization
What is the Right Abstraction for my Workload?
PKS Secret Sauce
4
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
What is a Container?
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 6
“container” doesn’t mean anything super
precise. Basically there are a few new Linux
kernel features (“namespaces” and
“cgroups”) that let you isolate processes
from each other and set controls on their
resource usage. When you use these
features, you call it a “container”
Julia Evans
All containers
must share same
host OS & kernel
Virtualization Hierarchy
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
What is Containerization?
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Start with building a container image
# our base image
FROM python:3-onbuild
# specify the port number the container
should expose
EXPOSE 5000
# run the application
CMD ["python", "./app.py"]
9
Specify language runtime, dependencies
Specify runtime app configuration
How to start your application
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Host the image on container registry
10
DTR
GitLab
Quay
Harbor
Docker hub
GCR
ECR
ACR
On-prem
Public
Cloud
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Extracts image onto filesystem
11
‘Copy On Write’ sharing
strategy for efficient disk usage
for storing images on filesystem
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Creates isolated resources & runs container
12
uses cgroups, (for resource accounting)
namespaces (for secure isolation) and host
filesystem (for storing image layers) to run
applications
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Benefits of Containerization
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Benefits for DevOps
14
Consistency Agility
•Source code, lang runtime, app
dependencies in container image
standardizes app deploy model
•Container image as a single
deployment model enables
★Build once, run anywhere
★Less env snowflakes
★Better separation of concerns
between development and
operations
•Lightweight containers enable
★ Faster provisioning
★ Faster app deployments
★ Support microservices arch
★ Handling traffic spikes
efficiently
•Container images enable
streamlined CI/CD workflows
Efficiency
• Higher app density per host
•Efficient disk usage
•Standardizing on container images
enables efficient OS patching
process
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
The Different Faces of
Containerization
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 16
“I want to move all
workloads from V(irtual) to
C(ontainers) so that we no
longer have to worry about
things like patching
operating systems.” Major US Telco Provider
“I want to move all
workloads from V(irtual) to
C(ontainers) so that we no
longer have to worry about
things like patching
operating systems.” Major US Telco Provider
like
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
patching operating
systems
like
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 19
HOST
Host OS
(Kernel)
OS Image
Runtime Layer
Application Layer
App container
We can
Repair
the OS kernel
(imagine Meltdown
remediated in 16 hours)
Embeds
the
Operating System
https://content.pivotal.io/blog/how-to-apply-the-meltdown-fix-to-all-your-systems-in-less-than-a-day
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Teams Delivering Outcomes
20
Database
Web
Server
Messaging
Your Application Code
Virtualized
Infrastructure
PLATFORM
Platform Team
Application Team
Iteratively building and
delivering digital offerings
to the consumer
Enabling the app teams all
while maintaining
Security
Compliance
Resilience
Cost Efficiency
20
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 21
HOST
Host OS
(Kernel)
OS Image
Runtime Layer
Application Layer
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 22
HOST
Host OS
(Kernel)
OS Image
Runtime Layer
Application Layer
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 23
HOST
Host OS
(Kernel)
OS Image
Runtime Layer
Application Layer
OS Image
Runtime Layer
Application Layer
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 24
HOST
Host OS
(Kernel)
OS Image
Runtime Layer
Application Layer
OS Image
Runtime Layer
Application Layer
App-team
Provided
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 25
HOST
Host OS
(Kernel)
OS Image
Runtime Layer
Application Layer
OS Image
Runtime Layer
Application Layer
App-team
Provided
HOST
Host OS
(Kernel)
OS Image
Runtime Layer
Application Layer
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 26
HOST
Host OS
(Kernel)
OS Image
Runtime Layer
Application Layer
OS Image
HOST
Host OS
(Kernel)
OS Image
Runtime Layer
Application Layer
Runtime Layer
OS Image
Runtime Layer
HOST
Host OS
(Kernel)
Application Layer
OS Image
Runtime Layer
Application Layer Application Layer
Platform-
team
Provided
App-team
Provided
Trusted Container
Pipeline
We can
Repair
everything up to the
app itself
We can
Repair
the OS kernel
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
patching operating
systems
like
malware
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 28
HOST
Host OS
(Kernel)
OS Image
Runtime Layer
Application Layer
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 29
HOST
Host OS
(Kernel)
OS Image
Runtime Layer
Application Layer
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 30
HOST
Host OS
(Kernel)
OS Image
Runtime Layer
Application Layer
OS Image
Runtime Layer
Application Layer
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
OS Image
Runtime Layer
Application Layer
HOST
Host OS
(Kernel)
31
OS Image
Runtime Layer
Application Layer
HOST
Host OS
(Kernel)
You can
Repave
the entire
environment
VERY Often!!!
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
like
prediction-based
capacity management
malware
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 33
HOST
Host OS
(Kernel)
HOST
Host OS
(Kernel)
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 34
HOST
Host OS
(Kernel)
HOST
Host OS
(Kernel)
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 35
HOST
Host OS
(Kernel)
HOST
Host OS
(Kernel)
HOST
Host OS
(Kernel)
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 36
Predictions
On-demand
Capacity
Management
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Teams Managing Their Products
37
Database
Web
Server
Messaging
Your Application Code
Virtualized
Infrastructure
PLATFORM
Platform Team
Application Team
Monitor application usage
and scale capacity up and
down as needed
Monitor platform usage
and scale capacity up and
down as needed
37
Quotas
are an important
part of the contract
between platform
and app teams
And this scaling may be
automated
at both layers
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
like
prediction-based
capacity management
load balancer
configuration
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Workflow:
• Provision Machine
• Install Operating
System & Middleware
• Install App
• Configure Firewall
• …
• Done!!!
Imperative Systems Management
39
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Workflow:
• Provision Machine
• Install Operating
System & Middleware
• Install App
• Configure Firewall
• …
• Done!!!
Imperative Systems Management
40
© Copyright 2015 Pivotal. All rights reserved. !41
Failed Application Instances Replaced (Diego)
Router
Blobstore
Cloud
Controller
etcd
Cell Cell Cell
Pivotal Cloud Foundry
Elastic Runtime
Access
App
DB
Converger & Auctioneer
Desired State
Actual State
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
like
load balancer
configuration
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
All of this
containerization…but needn’t all be the
same way
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 44
The
(Raw)
Container
Abstraction
docker build
kubectl apply
Dockerfile
docker push
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 46
The
Application
Abstraction
Here is my code
Run it in the cloud for me
I do not care how
- Onsi Fakhouri
Deploying a Microservice into PAS
cf push
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 49
The
Function
Abstraction
Knative
Described by Google as a “collection of components that [extend
Kubernetes and] provide the missing building blocks that developers
need to create modern, source-centric, container-based cloud-native
applications.”
Basically, it’s a simpler way for developers to deploy and run
serverless apps and functions atop Kubernetes and Istio.
Betting our FaaS future on Knative
Community-driven
ecosystem of
EventSources,
Buses,
Invokers, 

BuildTemplates,
etc.
Kubernetes
VALUE LINE
BuildTemplates
Channels
CLI/UI
Invokers
VALUE LINE
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
What is the Right Abstraction?
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
A Taxonomy
55
Tech Type
• Microservices, Spring Boot
• JEE - WebSphere, Weblogic
• .NET
• Data
• Partner provided Software e.g
CloudBees Jenkins
• Legacy/UnCommon runtimes
Workload Lifecycle
• High value, many releases per
quarter
• Low value, few releases per
year
• Retirement status
• Tied to Partner lifecycle
• Already containerized
Team Skills
• Pure Dev, No Infra
• Platform savvy
• Kubernetes savvy
There are some easy ones…
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
A Taxonomy
56
Workload Lifecycle
• High value, many releases per
quarter
• Low value, few releases per
year
• Retirement status
• Tied to Partner lifecycle
• Already containerized
Team Skills
• Pure Dev, No Infra,
• Platform savvy
• Kubernetes savvy
Tech Type
• Microservices, Spring Boot
• JEE - WebSphere, Weblogic
• .NET
• Data
• Partner provided Software e.g
CloudBees Jenkins
• Legacy/UnCommon runtimes
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
A Taxonomy
57
Workload Lifecycle
• High value, many releases per
quarter
• Low value, few releases per
year
• Retirement status
• Tied to Partner lifecycle
• Already containerized
Team Skills
• Pure Dev, No Infra
• Platform savvy
• Kubernetes savvy
Tech Type
• Microservices, Spring Boot
• JEE - WebSphere, Weblogic
• .NET
• Data
• Partner provided Software e.g
CloudBees Jenkins
• Legacy/UnCommon runtimes
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
A Taxonomy
58
Workload Lifecycle
• High value, many releases per
quarter
• Low value, few releases per
year
• Retirement status
• Tied to Partner lifecycle
• Already containerized
Team Skills
• Pure Dev, No Infra
• Platform savvy
• Kubernetes savvy
Tech Type
• Microservices, Spring Boot
• JEE - WebSphere, Weblogic
• .NET
• Data
• Partner provided Software e.g
CloudBees Jenkins
• Legacy/UnCommon runtimes Dev team responsible day 2
image operations
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
A Taxonomy
59
Workload Lifecycle
• High value, many releases per
quarter
• Low value, few releases per
year
• Retirement status
• Tied to Partner lifecycle
• Already containerized
Team Skills
• Pure Dev, No Infra
• Platform savvy
• Kubernetes savvy
Tech Type
• Microservices, Spring Boot
• JEE - WebSphere, Weblogic
• .NET
• Data
• Partner provided Software e.g
CloudBees Jenkins
• Legacy/UnCommon runtimes
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
A Taxonomy
60
Workload Lifecycle
• High value, many releases per
quarter
• Low value, few releases per
year
• Retirement status
• Tied to Partner lifecycle
• Already containerized
Team Skills
• Pure Dev, No Infra
• Platform savvy
• Kubernetes savvy
Tech Type
• Microservices, Spring Boot
• JEE - WebSphere, Weblogic
• .NET
• Data
• Partner provided Software e.g
CloudBees Jenkins
• Legacy/UnCommon runtimes
• Web events
Pivotal
Function
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
A Tale of Multiple Abstractions
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
62
IaaS
CaaS
PaaS
FaaS
Bare Metal
What is the Right Abstraction?
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
63
IaaS
vSphere, AWS,
GCP, Azure
Bare Metal
•Customize OS
•Status quo
☺
•BUT it runs on my machine!
•App lifecycle (boot, scale)
changes are slow
•Turns into monoliths which
become harder to maintain
and upgrade
😠
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
64
IaaS
CaaS
PKS, K8s
Bare Metal
•Consistency
• Agility
• Efficiency
☺
•Container images lifecycle
management - e.g. create,
update, registry, patching
which can lead to image
snowflakes
• Less dev productivity -
bring in own routing,
observability, secrets mgmt,
service brokering etc
😠
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
65
IaaS
CaaS
PaaS
PAS
Bare Metal
•No need to learn OS,
docker & no patching
• Very high dev
productivity - power
of cf push
• No snowflakes
☺
•Mostly stateless & conform
to best practices
• Minimal support for
persistent data
•TCP/HTTP only
😠
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
66
IaaS
CaaS
PaaS
FaaS
PFS
Host OS
•Resource efficient
• High dev
productivity
• Decoupled
deployments
☺
•Mostly suitable for event
driven use cases
•Observability nightmare
across functions
• HTTP(S) only
• Significant redevelopment
😠
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
67
IaaS
CaaS
PaaS
FaaS
Event driven use cases e.g. Webhook
handlers
• Stateless, 12 factor apps
• Microservices
• Kernel customization is necessary
• If you can only scale vertically
Bare Metal
Almost never!
• Need Persistent local storage
• Vendor provided software
• Uncommon runtimes ( e.g. Cobol)
• Non HTTP/TCP protocols
• Multiple TCP/IP Ports
What is the Right Abstraction?
None of these?
Then PaaS is the best place to start
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
68
IaaS
CaaS
PaaS
FaaS
Strategic goal: Push as many workloads as
technically feasible to the top of the platform hierarchy
Higher flexibility and
less enforcement of
standards
Lower development
complexity and higher
operational efficiency
Bare Metal
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Enterprise Kubernetes
Kubernetes is a Runtime for Containerized Workloads
K8s ClusterTooling for
Managing
Workloads:
➤ kubectl
➤ Kubernetes
Dashboard
App
Teams
Kubernetes Master
But we need more than a runtime
K8s Cluster
App
Teams
Tooling for
Managing
Workloads:
➤ kubectl
➤ Kubernetes
Dashboard
Compute
Storage
Networking
Routing
ImageReg
ExternalSvc
...
Tooling for
Managing
Kubernetes:
➤ Installation
➤ Upgrades
➤ Patch mgmt
➤ Resilience
➤ Monitoring/
Logging
➤ Backup/
Recovery
➤ …
Platform
Team
Kubernetes Master
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
PKS Secret Sauce
K8s Cluster
App
Teams
Tooling for
Managing
Workloads:
➤ kubectl
➤ Kubernetes
Dashboard
Compute
Storage
Networking
Routing
ImageReg
ExternalSvc
...
Tooling for
Managing
Kubernetes:
➤ Installation
➤ Upgrades
➤ Patch mgmt
➤ Resilience
➤ Monitoring/
Logging
➤ Backup/
Recovery
➤ …
Platform
Team
Kubernetes Master
@cdavisafc
K8s Cluster
App
Teams
Tooling for
Managing
Workloads:
➤ kubectl
➤ Kubernetes
Dashboard
Platform
Team
Kubernetes Master Tooling for
Managing
Kubernetes:
➤ Installation
➤ Upgrades
➤ Patch mgmt
➤ Resilience
➤ Monitoring/
Logging
➤ Backup/
Recovery
➤ …
Compute
Storage
Networking
Routing
ImageReg
ExternalSvc
...
PKS does for your Kubernetes
what
Kubernetes does for your apps
@cdavisafc
K8s Cluster
App
Teams
Tooling for
Managing
Workloads:
➤ kubectl
➤ Kubernetes
Dashboard
Platform
Team
Kubernetes Master Tooling for
Managing
Kubernetes:
➤ Installation
➤ Upgrades
➤ Patch mgmt
➤ Resilience
➤ Monitoring/
Logging
➤ Backup/
Recovery
➤ …
Compute
Storage
Networking
Routing
ImageReg
ExternalSvc
...
Multi-tenancy
Multi-tenant clusters
# Leverage Kubernetes namespaces
Limitations with Kubernetes alone
# Noisy neighbors (workloads can affect other
tenants)
# Share the same network
# Share DNS
# Shared Configuration
# ...
We add
# Network microsegmentation with NSX-T
○ Eliminating “Share the same network”
Multi (Single-tenant) clusters
It is having an API for creation and management
that enables this!!!
# Every tenant get’s their own cluster
Addresses limitations
# Single tenant worker VMs (depend on the
hypervisor to ensure host is properly shared)
# Every cluster has own network segment
# Every cluster has own DNS
# Every cluster has own configuration
# ...
No other “on
prem” solution
has this!!!
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Summary
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Containerization Brings Value
80
Enables Platforms to do Even More
OS Patching
Repaving (i.e. against malware)
Auto scaling
Dynamic routing
…
Many Faces of Containerization
Use the right tool for the job!
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 81
vSphere Openstack AWS
Google

Cloud
Azure & 

Azure Stack
Shared Services
Shared Security
Shared Networking
Logging & Metrics / Services Brokers / API Management
Credhub / UAA / Single Sign On
VMWare NSX
Embedded Operating System (Windows / Linux)
Application Code & Frameworks
Buildpacks / Spring Boot / Spring Cloud / Steeltoe
PAS


Pivotal Application 

Service
Pivotal Services

Marketplace


Pivotal and
Partner Products
Concourse
PKS


Pivotal Container 

Service
PFS

Pivotal Function Service
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Safe Harbor Statement
The following is intended to outline the general direction of Pivotal's offerings. It is intended for information purposes
only and may not be incorporated into any contract. Any information regarding pre-release of Pivotal offerings, future
updates or other planned modifications is subject to ongoing evaluation by Pivotal and is subject to change. This
information is provided without warranty or any kind, express or implied, and is not a commitment to deliver any
material, code, or functionality, and should not be relied upon in making purchasing decisions regarding Pivotal's
offerings. These purchasing decisions should only be based on features currently available. The development,
release, and timing of any features or functionality described for Pivotal's offerings in this presentation remain at the
sole discretion of Pivotal. Pivotal has no obligation to update forward looking information in this presentation.
82
> Stay Connected.
Cornelia Davis • cdavis@pivotal.io • @cdavisafc
Mukesh Gadiya • mgadiya@pivotal.io • @mcgadiya
This whole track!!
#springon@s1

P to V to C: The Value of Bringing “Everything” to Containers

  • 1.
    P to Vto C: The Value of Bringing “Everything” to Containers Cornelia Davis @cdavisafc Mukesh Gadiya @mcgadiya
  • 2.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Safe Harbor Statement The following is intended to outline the general direction of Pivotal's offerings. It is intended for information purposes only and may not be incorporated into any contract. Any information regarding pre-release of Pivotal offerings, future updates or other planned modifications is subject to ongoing evaluation by Pivotal and is subject to change. This information is provided without warranty or any kind, express or implied, and is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions regarding Pivotal's offerings. These purchasing decisions should only be based on features currently available. The development, release, and timing of any features or functionality described for Pivotal's offerings in this presentation remain at the sole discretion of Pivotal. Pivotal has no obligation to update forward looking information in this presentation. 2
  • 3.
    “I want tomove all workloads from V(irtual) to C(ontainers) so that we no longer have to worry about things like patching operating systems.” Major US Telco Provider
  • 4.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Agenda What is Container(ization)? Benefits of Containerization The Different Faces of Containerization What is the Right Abstraction for my Workload? PKS Secret Sauce 4
  • 5.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ What is a Container?
  • 6.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 6 “container” doesn’t mean anything super precise. Basically there are a few new Linux kernel features (“namespaces” and “cgroups”) that let you isolate processes from each other and set controls on their resource usage. When you use these features, you call it a “container” Julia Evans
  • 7.
    All containers must sharesame host OS & kernel Virtualization Hierarchy
  • 8.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ What is Containerization?
  • 9.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Start with building a container image # our base image FROM python:3-onbuild # specify the port number the container should expose EXPOSE 5000 # run the application CMD ["python", "./app.py"] 9 Specify language runtime, dependencies Specify runtime app configuration How to start your application
  • 10.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Host the image on container registry 10 DTR GitLab Quay Harbor Docker hub GCR ECR ACR On-prem Public Cloud
  • 11.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Extracts image onto filesystem 11 ‘Copy On Write’ sharing strategy for efficient disk usage for storing images on filesystem
  • 12.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Creates isolated resources & runs container 12 uses cgroups, (for resource accounting) namespaces (for secure isolation) and host filesystem (for storing image layers) to run applications
  • 13.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Benefits of Containerization
  • 14.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Benefits for DevOps 14 Consistency Agility •Source code, lang runtime, app dependencies in container image standardizes app deploy model •Container image as a single deployment model enables ★Build once, run anywhere ★Less env snowflakes ★Better separation of concerns between development and operations •Lightweight containers enable ★ Faster provisioning ★ Faster app deployments ★ Support microservices arch ★ Handling traffic spikes efficiently •Container images enable streamlined CI/CD workflows Efficiency • Higher app density per host •Efficient disk usage •Standardizing on container images enables efficient OS patching process
  • 15.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ The Different Faces of Containerization
  • 16.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 16 “I want to move all workloads from V(irtual) to C(ontainers) so that we no longer have to worry about things like patching operating systems.” Major US Telco Provider
  • 17.
    “I want tomove all workloads from V(irtual) to C(ontainers) so that we no longer have to worry about things like patching operating systems.” Major US Telco Provider like
  • 18.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ patching operating systems like
  • 19.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 19 HOST Host OS (Kernel) OS Image Runtime Layer Application Layer App container We can Repair the OS kernel (imagine Meltdown remediated in 16 hours) Embeds the Operating System https://content.pivotal.io/blog/how-to-apply-the-meltdown-fix-to-all-your-systems-in-less-than-a-day
  • 20.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Teams Delivering Outcomes 20 Database Web Server Messaging Your Application Code Virtualized Infrastructure PLATFORM Platform Team Application Team Iteratively building and delivering digital offerings to the consumer Enabling the app teams all while maintaining Security Compliance Resilience Cost Efficiency 20
  • 21.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 21 HOST Host OS (Kernel) OS Image Runtime Layer Application Layer
  • 22.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 22 HOST Host OS (Kernel) OS Image Runtime Layer Application Layer
  • 23.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 23 HOST Host OS (Kernel) OS Image Runtime Layer Application Layer OS Image Runtime Layer Application Layer
  • 24.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 24 HOST Host OS (Kernel) OS Image Runtime Layer Application Layer OS Image Runtime Layer Application Layer App-team Provided
  • 25.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 25 HOST Host OS (Kernel) OS Image Runtime Layer Application Layer OS Image Runtime Layer Application Layer App-team Provided HOST Host OS (Kernel) OS Image Runtime Layer Application Layer
  • 26.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 26 HOST Host OS (Kernel) OS Image Runtime Layer Application Layer OS Image HOST Host OS (Kernel) OS Image Runtime Layer Application Layer Runtime Layer OS Image Runtime Layer HOST Host OS (Kernel) Application Layer OS Image Runtime Layer Application Layer Application Layer Platform- team Provided App-team Provided Trusted Container Pipeline We can Repair everything up to the app itself We can Repair the OS kernel
  • 27.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ patching operating systems like malware
  • 28.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 28 HOST Host OS (Kernel) OS Image Runtime Layer Application Layer
  • 29.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 29 HOST Host OS (Kernel) OS Image Runtime Layer Application Layer
  • 30.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 30 HOST Host OS (Kernel) OS Image Runtime Layer Application Layer OS Image Runtime Layer Application Layer
  • 31.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ OS Image Runtime Layer Application Layer HOST Host OS (Kernel) 31 OS Image Runtime Layer Application Layer HOST Host OS (Kernel) You can Repave the entire environment VERY Often!!!
  • 32.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ like prediction-based capacity management malware
  • 33.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 33 HOST Host OS (Kernel) HOST Host OS (Kernel)
  • 34.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 34 HOST Host OS (Kernel) HOST Host OS (Kernel)
  • 35.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 35 HOST Host OS (Kernel) HOST Host OS (Kernel) HOST Host OS (Kernel)
  • 36.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 36 Predictions On-demand Capacity Management
  • 37.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Teams Managing Their Products 37 Database Web Server Messaging Your Application Code Virtualized Infrastructure PLATFORM Platform Team Application Team Monitor application usage and scale capacity up and down as needed Monitor platform usage and scale capacity up and down as needed 37 Quotas are an important part of the contract between platform and app teams And this scaling may be automated at both layers
  • 38.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ like prediction-based capacity management load balancer configuration
  • 39.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Workflow: • Provision Machine • Install Operating System & Middleware • Install App • Configure Firewall • … • Done!!! Imperative Systems Management 39
  • 40.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Workflow: • Provision Machine • Install Operating System & Middleware • Install App • Configure Firewall • … • Done!!! Imperative Systems Management 40
  • 41.
    © Copyright 2015Pivotal. All rights reserved. !41 Failed Application Instances Replaced (Diego) Router Blobstore Cloud Controller etcd Cell Cell Cell Pivotal Cloud Foundry Elastic Runtime Access App DB Converger & Auctioneer Desired State Actual State
  • 42.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ like load balancer configuration
  • 43.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ All of this containerization…but needn’t all be the same way
  • 44.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 44 The (Raw) Container Abstraction
  • 45.
  • 46.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 46 The Application Abstraction
  • 47.
    Here is mycode Run it in the cloud for me I do not care how - Onsi Fakhouri
  • 48.
    Deploying a Microserviceinto PAS cf push
  • 49.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 49 The Function Abstraction
  • 50.
    Knative Described by Googleas a “collection of components that [extend Kubernetes and] provide the missing building blocks that developers need to create modern, source-centric, container-based cloud-native applications.” Basically, it’s a simpler way for developers to deploy and run serverless apps and functions atop Kubernetes and Istio.
  • 53.
    Betting our FaaSfuture on Knative Community-driven ecosystem of EventSources, Buses, Invokers, 
 BuildTemplates, etc. Kubernetes VALUE LINE BuildTemplates Channels CLI/UI Invokers VALUE LINE
  • 54.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ What is the Right Abstraction?
  • 55.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ A Taxonomy 55 Tech Type • Microservices, Spring Boot • JEE - WebSphere, Weblogic • .NET • Data • Partner provided Software e.g CloudBees Jenkins • Legacy/UnCommon runtimes Workload Lifecycle • High value, many releases per quarter • Low value, few releases per year • Retirement status • Tied to Partner lifecycle • Already containerized Team Skills • Pure Dev, No Infra • Platform savvy • Kubernetes savvy There are some easy ones…
  • 56.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ A Taxonomy 56 Workload Lifecycle • High value, many releases per quarter • Low value, few releases per year • Retirement status • Tied to Partner lifecycle • Already containerized Team Skills • Pure Dev, No Infra, • Platform savvy • Kubernetes savvy Tech Type • Microservices, Spring Boot • JEE - WebSphere, Weblogic • .NET • Data • Partner provided Software e.g CloudBees Jenkins • Legacy/UnCommon runtimes
  • 57.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ A Taxonomy 57 Workload Lifecycle • High value, many releases per quarter • Low value, few releases per year • Retirement status • Tied to Partner lifecycle • Already containerized Team Skills • Pure Dev, No Infra • Platform savvy • Kubernetes savvy Tech Type • Microservices, Spring Boot • JEE - WebSphere, Weblogic • .NET • Data • Partner provided Software e.g CloudBees Jenkins • Legacy/UnCommon runtimes
  • 58.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ A Taxonomy 58 Workload Lifecycle • High value, many releases per quarter • Low value, few releases per year • Retirement status • Tied to Partner lifecycle • Already containerized Team Skills • Pure Dev, No Infra • Platform savvy • Kubernetes savvy Tech Type • Microservices, Spring Boot • JEE - WebSphere, Weblogic • .NET • Data • Partner provided Software e.g CloudBees Jenkins • Legacy/UnCommon runtimes Dev team responsible day 2 image operations
  • 59.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ A Taxonomy 59 Workload Lifecycle • High value, many releases per quarter • Low value, few releases per year • Retirement status • Tied to Partner lifecycle • Already containerized Team Skills • Pure Dev, No Infra • Platform savvy • Kubernetes savvy Tech Type • Microservices, Spring Boot • JEE - WebSphere, Weblogic • .NET • Data • Partner provided Software e.g CloudBees Jenkins • Legacy/UnCommon runtimes
  • 60.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ A Taxonomy 60 Workload Lifecycle • High value, many releases per quarter • Low value, few releases per year • Retirement status • Tied to Partner lifecycle • Already containerized Team Skills • Pure Dev, No Infra • Platform savvy • Kubernetes savvy Tech Type • Microservices, Spring Boot • JEE - WebSphere, Weblogic • .NET • Data • Partner provided Software e.g CloudBees Jenkins • Legacy/UnCommon runtimes • Web events Pivotal Function
  • 61.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ A Tale of Multiple Abstractions
  • 62.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 62 IaaS CaaS PaaS FaaS Bare Metal What is the Right Abstraction?
  • 63.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 63 IaaS vSphere, AWS, GCP, Azure Bare Metal •Customize OS •Status quo ☺ •BUT it runs on my machine! •App lifecycle (boot, scale) changes are slow •Turns into monoliths which become harder to maintain and upgrade 😠
  • 64.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 64 IaaS CaaS PKS, K8s Bare Metal •Consistency • Agility • Efficiency ☺ •Container images lifecycle management - e.g. create, update, registry, patching which can lead to image snowflakes • Less dev productivity - bring in own routing, observability, secrets mgmt, service brokering etc 😠
  • 65.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 65 IaaS CaaS PaaS PAS Bare Metal •No need to learn OS, docker & no patching • Very high dev productivity - power of cf push • No snowflakes ☺ •Mostly stateless & conform to best practices • Minimal support for persistent data •TCP/HTTP only 😠
  • 66.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 66 IaaS CaaS PaaS FaaS PFS Host OS •Resource efficient • High dev productivity • Decoupled deployments ☺ •Mostly suitable for event driven use cases •Observability nightmare across functions • HTTP(S) only • Significant redevelopment 😠
  • 67.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 67 IaaS CaaS PaaS FaaS Event driven use cases e.g. Webhook handlers • Stateless, 12 factor apps • Microservices • Kernel customization is necessary • If you can only scale vertically Bare Metal Almost never! • Need Persistent local storage • Vendor provided software • Uncommon runtimes ( e.g. Cobol) • Non HTTP/TCP protocols • Multiple TCP/IP Ports What is the Right Abstraction? None of these? Then PaaS is the best place to start
  • 68.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 68 IaaS CaaS PaaS FaaS Strategic goal: Push as many workloads as technically feasible to the top of the platform hierarchy Higher flexibility and less enforcement of standards Lower development complexity and higher operational efficiency Bare Metal
  • 69.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Enterprise Kubernetes
  • 70.
    Kubernetes is aRuntime for Containerized Workloads K8s ClusterTooling for Managing Workloads: ➤ kubectl ➤ Kubernetes Dashboard App Teams Kubernetes Master
  • 71.
    But we needmore than a runtime K8s Cluster App Teams Tooling for Managing Workloads: ➤ kubectl ➤ Kubernetes Dashboard Compute Storage Networking Routing ImageReg ExternalSvc ... Tooling for Managing Kubernetes: ➤ Installation ➤ Upgrades ➤ Patch mgmt ➤ Resilience ➤ Monitoring/ Logging ➤ Backup/ Recovery ➤ … Platform Team Kubernetes Master
  • 72.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ PKS Secret Sauce
  • 73.
    K8s Cluster App Teams Tooling for Managing Workloads: ➤kubectl ➤ Kubernetes Dashboard Compute Storage Networking Routing ImageReg ExternalSvc ... Tooling for Managing Kubernetes: ➤ Installation ➤ Upgrades ➤ Patch mgmt ➤ Resilience ➤ Monitoring/ Logging ➤ Backup/ Recovery ➤ … Platform Team Kubernetes Master
  • 74.
    @cdavisafc K8s Cluster App Teams Tooling for Managing Workloads: ➤kubectl ➤ Kubernetes Dashboard Platform Team Kubernetes Master Tooling for Managing Kubernetes: ➤ Installation ➤ Upgrades ➤ Patch mgmt ➤ Resilience ➤ Monitoring/ Logging ➤ Backup/ Recovery ➤ … Compute Storage Networking Routing ImageReg ExternalSvc ...
  • 75.
    PKS does foryour Kubernetes what Kubernetes does for your apps
  • 76.
    @cdavisafc K8s Cluster App Teams Tooling for Managing Workloads: ➤kubectl ➤ Kubernetes Dashboard Platform Team Kubernetes Master Tooling for Managing Kubernetes: ➤ Installation ➤ Upgrades ➤ Patch mgmt ➤ Resilience ➤ Monitoring/ Logging ➤ Backup/ Recovery ➤ … Compute Storage Networking Routing ImageReg ExternalSvc ...
  • 77.
    Multi-tenancy Multi-tenant clusters # LeverageKubernetes namespaces Limitations with Kubernetes alone # Noisy neighbors (workloads can affect other tenants) # Share the same network # Share DNS # Shared Configuration # ... We add # Network microsegmentation with NSX-T ○ Eliminating “Share the same network” Multi (Single-tenant) clusters It is having an API for creation and management that enables this!!! # Every tenant get’s their own cluster Addresses limitations # Single tenant worker VMs (depend on the hypervisor to ensure host is properly shared) # Every cluster has own network segment # Every cluster has own DNS # Every cluster has own configuration # ... No other “on prem” solution has this!!!
  • 79.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Summary
  • 80.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Containerization Brings Value 80 Enables Platforms to do Even More OS Patching Repaving (i.e. against malware) Auto scaling Dynamic routing … Many Faces of Containerization Use the right tool for the job!
  • 81.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 81 vSphere Openstack AWS Google
 Cloud Azure & 
 Azure Stack Shared Services Shared Security Shared Networking Logging & Metrics / Services Brokers / API Management Credhub / UAA / Single Sign On VMWare NSX Embedded Operating System (Windows / Linux) Application Code & Frameworks Buildpacks / Spring Boot / Spring Cloud / Steeltoe PAS 
 Pivotal Application 
 Service Pivotal Services
 Marketplace 
 Pivotal and Partner Products Concourse PKS 
 Pivotal Container 
 Service PFS
 Pivotal Function Service
  • 82.
    Unless otherwise indicated,these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Safe Harbor Statement The following is intended to outline the general direction of Pivotal's offerings. It is intended for information purposes only and may not be incorporated into any contract. Any information regarding pre-release of Pivotal offerings, future updates or other planned modifications is subject to ongoing evaluation by Pivotal and is subject to change. This information is provided without warranty or any kind, express or implied, and is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions regarding Pivotal's offerings. These purchasing decisions should only be based on features currently available. The development, release, and timing of any features or functionality described for Pivotal's offerings in this presentation remain at the sole discretion of Pivotal. Pivotal has no obligation to update forward looking information in this presentation. 82
  • 83.
    > Stay Connected. CorneliaDavis • cdavis@pivotal.io • @cdavisafc Mukesh Gadiya • mgadiya@pivotal.io • @mcgadiya This whole track!! #springon@s1