Mahmoud Al-HabashOpen to new projects
  • WorkWork
  • ServicesServices
  • LabLab
  • WritingWriting
  • ContactContact
Amman--:--عربي
Writing/DevOps & cloud

Kubernetes Fundamentals: Container Orchestration at Scale

Understand Kubernetes core concepts — Pods, Deployments, Services, and Ingress — to run production workloads at any scale.

22 February 20261 min readDevOps & cloudاقرأ بالعربية

On this page

  1. Architecture Overview
  2. Pod — Smallest Deployable Unit
  3. Deployment — Manages Replicas and Rolling Updates
  4. Service — Stable Networking Endpoint
  5. Key Commands

Kubernetes (K8s) is the industry-standard container orchestration platform. Originally designed by Google and maintained by the CNCF, it automates deployment, scaling, and management of containerized applications. Over 96% of organizations surveyed by the CNCF in 2024 use or evaluate Kubernetes.

Architecture Overview

A Kubernetes cluster has a Control Plane (API server, scheduler, controller manager, etcd) and Worker Nodes (kubelet, kube-proxy, container runtime).

Pod — Smallest Deployable Unit

yaml
apiVersion: v1
kind: Pod
metadata:
  name: myapp
spec:
  containers:
    - name: app
      image: myapp:1.0
      ports:
        - containerPort: 80
      resources:
        requests:
          memory: "128Mi"
          cpu: "250m"
        limits:
          memory: "256Mi"
          cpu: "500m"

Deployment — Manages Replicas and Rolling Updates

yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: myapp
spec:
  replicas: 3
  selector:
    matchLabels:
      app: myapp
  template:
    metadata:
      labels:
        app: myapp
    spec:
      containers:
        - name: app
          image: myapp:1.0
          ports:
            - containerPort: 80
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 0

Service — Stable Networking Endpoint

yaml
apiVersion: v1
kind: Service
metadata:
  name: myapp-service
spec:
  selector:
    app: myapp
  ports:
    - port: 80
      targetPort: 80
  type: ClusterIP

Key Commands

bash
kubectl apply -f deployment.yaml
kubectl get pods -w
kubectl logs -f deployment/myapp
kubectl scale deployment myapp --replicas=5
kubectl rollout undo deployment/myapp

Kubernetes gives you self-healing, auto-scaling, and zero-downtime deployments out of the box.

All articles

Keep reading

  • Docker for Developers: From Zero to Containerized Applications28 February 20261 min read
  • CI/CD Pipelines with GitHub Actions: Automate Everything22 February 20261 min read
  • Clean Code Principles: Write Code That Humans Can Read22 February 20261 min read