During this talk, Bilgin will take you on a journey exploring distributed application needs and how they evolved with Kubernetes, Istio, Knative, Dapr, and other projects. By the end of the session, you will know what is coming after microservices
5. @bibryam
5
Modern distributed applications
● 100s of components and 1000s of instances
● Polyglot, independent, and automatable components
● Hybrid workloads on hybrid environments
● Open source, open standards, and interoperable
● Build on the Kubernetes ecosystem
6. What are the needs of
distributed applications?
6
22. @bibryam
22
Configuration management
● ConfigMaps used in Pods as:
○ environment variables
○ volumes
● Secrets:
○ Minimal Node spread
○ Only stored in memory in a tmpfs
○ Encrypted in the backend store (etcd)
○ Access can be restricted with RBAC
31. @bibryam
31
How to extend Kubernetes?
Sidecar Operator
Out-of-process composition
mechanism for orthogonal
capabilities.
Define domain-specific knowledge in
executable Kubernetes
primitives.
Data plane Control plane
37. @bibryam
37
Service Mesh & API Gateway capabilities
Advanced networking
● Service discovery and failover
● Dynamic traffic routing
● Retry, timeout, circuit breaking
● Security, rate limiting, encryption
● Observability and tracing
38. @bibryam
38
What is Knative?
Serving
Common infrastructure
for request-driven
interactions that can
"scale to zero".
Eventing
Common infrastructure
for consuming and
producing events
declaratively.
Kubernetes-based platform to deploy, and manage
serverless workloads.
50. @bibryam
50
Recent developments
Lifecycle
● Better sidecars kubernetes/753
● More operators, better operators
operatorhub.io
Networking
● Data Plane Development Kit (DPDK)
● Envoy: More L7 protocols, Wasm
Bindings
● Bindings move out of the application
● More resource bindings for Dapr, Knative
State
● More work is needed!
● There are no pluggable, polyglot
stateful abstractions for federation,
CDC, caching, idempotency, etc.