☁️

Introduction to Kubernetes Overview

Aug 20, 2024

Kubernetes Lecture Notes

Introduction to Kubernetes

  • Kubernetes is an open-source container orchestration platform.
  • It automates deployment, scaling, and management of containerized applications.
  • Originated from Google's internal system, Borg.
  • Open-sourced by Google in 2014 as Kubernetes.

Why is it called k8s?

  • "k8s" is an abbreviation where "8" represents the 8 letters between "k" and "s" in "Kubernetes".
  • Similar abbreviations: i18n (internationalization), l10n (localization).

Kubernetes Cluster

  • Cluster consists of machines (nodes) running containerized applications.
  • Core components:
    • Control Plane
      • Manages cluster state.
      • Typically runs on multiple nodes across data centers.
    • Worker Nodes
      • Run containerized application workloads.

Control Plane Components

  • API Server: Primary interface, exposes RESTful API.
  • etcd: Distributed key-value store for persistent state.
  • Scheduler: Schedules pods onto worker nodes based on resources.
  • Controller Manager: Runs controllers managing the cluster state (e.g., replication, deployment controllers).

Worker Nodes Components

  • kubelet: Daemon on each node, communicates with control plane to manage pods.
  • Container Runtime: Pulls images, starts/stops containers, manages resources.
  • kube-proxy: Network proxy for routing traffic, providing load balancing.

Why Use Kubernetes?

Benefits

  • Scalability & Availability: Features include self-healing, rollbacks, horizontal scaling.
  • Portability: Consistent management across on-premise, public cloud, or hybrid environments.

Drawbacks

  • Complexity: Difficult to set up and manage, especially for newcomers.
  • Cost: Requires significant resources, may be overkill for small organizations.

Managed Kubernetes Services

  • Solution for Complexity & Cost: Use managed services from cloud providers.
  • Popular services: Amazon EKS, Google Cloud GKE, Azure AKS.
  • Benefits: Offloads control plane management, ideal for mid-sized organizations.

Conclusion

  • Recommendation for Small Organizations: YAGNI (You Ain’t Gonna Need It).
  • Further Learning: Books and newsletters available for deeper understanding of system design.

Additional Resources

  • Subscribe to further learnings.
  • Thank you message and invitation for next session.