ENABLINGYOURDEVELOPERS
PATHTOPRODUCTION
A KUBERNETES JOURNEY
MAURICIO SALATINO @SALABOY
DEVOXX UK 2023
• The not-so-easy Kubernetes Journey
• The rise of Platforms on top of Kubernetes
• We are just starting to enable Developers
AGENDA
• https://www.salaboy.com
• https://diagrid.io
@SALABOY
MAURICIO SALATINO
PLATFORMSONK8S
CODE: SALATINO40
WHEREDOESTHE
JOURNEYSTARTS?
🎬
KUBERNETES
#1 LEARNING
🤔
YAMLs
Containers
#2 MORE THAN ONE
#3 OWNERSHIP
Production
Staging/QA
Dev Envs
#4 TOOLING
🤯
#5 MULTI-TENANCY
🤔
🤔
🤔
🤔
🤔
🤔 🤔
#6 COSTS
🤔💸💰
THEPLATFORM
ENGINEERINGBUZZ
🤔
PLATFORM TEAM
👷🔧
🪓👷
Devs
Infra SREs
Data
Scientists
{
}
LET’S BUILD A
PLATFORM
My
Platform
Platform
APIs
Self Service
Golden
Paths
TAG APP DELIVERY WHITE PAPER
https://tag-app-delivery.cncf.io/whitepapers/platforms/
Platform
Tools
EXAMPLE PLATFORM
Platform
APIs
🤓 Hey Platform,
Can I have a new
Dev Env? Prettry
Please
Platform
Tools
EXAMPLE PLATFORM
Platform
APIs
🤓 Sure, give me a
second! ⚙
EXAMPLE PLATFORM
Platform
🤓❤
Here you go!
Env Tools
Your App
CROSSPLANE +
VCLUSTER
DEMO#1
🙏🙏🙏
WHATABOUT
DEVELOPERS?
🤓💻
• The importance of experimentation
• De
f
ining the platform boundaries (platform capabilities)
WHATDODEVELOPERNEED?
KNATIVE
RUN MY CONTAINER
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: helloworld-cobol
spec:
template:
spec:
containers:
- image: cobol-app
env:
- name: TARGET
value: “cobol-app Sample v1"
ADVANCED TRAFFIC
MANAGEMENT
Application V1
Application V2
🤓💻 Application V3
ADVANCED TRAFFIC
MANAGEMENT
Application V1
Application V2
🤓💻 Application V3
80%
20%
TAG
SCALE DOWN TO
ZERO
Application V1
🤓💻
DEMO#2
🙏🙏🙏
PATTERNS AND BEST
PRACTICES ENCODED
Application A
Storing
and
Reading
Data
Application B
Application C
Statestore
PATTERNS AND BEST
PRACTICES ENCODED
Application A
Exchanging
Messages/
Events
Application B
Application C
PubSub
Dapr
NO DEPENDENCIES
(JUST HTTP/GRPC)
Application A
PubSub
Statestore
Localhost HTTP/GRPC
POD
Dapr
NO DEPENDENCIES
(JUST HTTP/GRPC)
Application A
PubSub
Statestore
Localhost HTTP/GRPC
POD
PLATFORM
CAPABILITIES
Application A
Exchanging
Messages/
Events
Application B
Application C
Storing and
Reading Data
Observability
Resiliency
Dynamic
Scaling
Isolation
Release
Strategies
Feature Flags
Work
f
lows
Traf
f
ic
Management
{
DEMO#3
🙏🙏🙏
• Kubernetes is not so easy, we need a platform engineering
approach to it
• Tools like `vcluster` and Crossplane can help to provision and
con
f
igure cost ef
f
icient tools to enable our developers
• Tools like Dapr and Knative can provide platform capabilties to
make our developers more ef
f
icient
SUMUP
THANKS!
@SALABOY / HTTPS://WWW.SALABOY.COM
PLATFORMSONK8S
CODE: SALATINO40

Devoxx UK - Platforms on top of K8s