2. About the Presenter
• Founder and Principal Consultant at CloudYuga
• Docker Captain
• Author of “Introduction to Kubernetes” course on Edx
• Author of Docker Cookbook
• Co-author of “Introduction to Cloud Infrastructure Technologies” course on Edx
• Self Paced online courses at school.cloudyuga.guru
• Containers Fundamentals - Docker, runC & rkt, online self paced course (2017)
• Containers (Docker) for Dev and QA , online self paced course (2017)
3. CNCF
• A Linux Foundation Project
• Aims to acceleration adoption of containers,
microservices and cloud native application
• CNCF hosts procjects like Containerd, Kubernetes but
they work under their pre-existing governance structure.
• New projects can be added
4. Container Runtime
Containerd
• Container runtime
• Available as daemon on Linux and Windows
• Uses runC to run containers
• Manages complete life-cycle of containers
• image transfer and storage
• container execution and supervision
• low level storage
• network attachment
• Exposes gRPC APIs over local Unix socket
6. Container Runtime
rkt
• Container runtime
• Available on Linux
• Supports swappable execution engines
• Can run Docker and OCI images
• Currently it based on appc specification.
Development is progress to fully support OCI
images and runtimes.
7. Remote Procedure Call
• High performance
• Open source Universal RPC
• With gRPC, we define a service
• specifies methods that can be called remotely
• uses Protocol Buffers as Interface Definition Language (IDL)
• Protocol Buffers are a language and platform neutral
mechanism to serialise structured data
• Bi-directional streaming with integrated auth
https://grpc.io
9. Orchestration
Kubernetes
Kubernetes is an open-source system for automating deployment, scaling,
and management of containerized applications.
• Kubernetes features
• Automatic binpacking
• Self-healing
• Horizontal scaling
• Service discovery and load balancing
• Automated rollouts and rollbacks
• Secrets and configuration management
• Storage orchestration
• Batch execution
10. DNS & Service Discovery
CoreDNS
• Provides DNS and Service Discovery
• DNS functions are implemented as middlewares like
• Kubernetes Service Discovery
• Re-writing queries
• loadbalance
• …
• CoreDNS chains middlewares, based on requirement
• Can replace kube-dns in Kubernetes
11. Service Mesh
Linkerd
• Layer 5 Proxy
• Work with HTTP, HTTP/2, gRPC (not raw TCP)
• Provides
• Service Discovery ( Kubernetes, Marathon, Swarm)
• Intelligent Load Balancing
• Retries (Improve success rate)
• Circuit Breakers (Improve resilience)
• Metrics and Tracing