Kubernetes
Kubernetes
Jeremiah Azilaku
🌟 Why Kubernetes? 🌟
• As applications scale, Docker alone presents limitations that
can hinder seamless deployment and management of
containers.
2. ⏳ High Availability: Docker alone doesn’t offer built-in high availability for containers,
leading to potential downtime when you least expect it!
4. 🔄 Service Discovery & Load Balancing: Built-in service discovery and load
balancing make routing traffic to the right container efficient. Talk about smart
solutions!
🏗️ Kubernetes Architecture Overview:
• 👨💻 Master Node (Control Plane): The brain of the Kubernetes cluster that
manages workloads and maintains cluster state.
• 📡 API Server: The front-end for the cluster; it processes requests and stores configurations
in etcd.
• 🗓️ Scheduler: Assigns workloads (pods) to worker nodes based on resource availability.
• 🔧 Controller Manager: Ensures the desired state of the cluster (e.g., pod replication, node
health).
• 📦 etcd: A distributed key-value store that keeps all cluster data safe.
•📦 Deployments: Define the desired state of your application (e.g., how many pods
should run). Kubernetes ensures this state is always met, managing updates seamlessly.
•🔌 Service: Acts as a stable endpoint for a set of pods, providing a consistent way to
access containers even as pods are replaced.
•🚪 Ingress: Manages external access to services within the cluster, typically HTTP or
HTTPS. It can provide load balancing, SSL termination, and name-based virtual hosting—
making access a breeze!
📦 Popular Kubernetes Distributions
1. ✨ OpenShift: A Red Hat distribution that adds developer and operational tools on top of
Kubernetes.
3. ⚙️ GKE (Google Kubernetes Engine): A managed Kubernetes service from Google Cloud that
automates cluster management.
5. 🖥️ AKS (Azure Kubernetes Service): Microsoft’s managed Kubernetes service that integrates
well with Azure services.