Kubernetes 아키텍처 배우기: 다른 방식으로

발행: (2026년 3월 16일 AM 01:31 GMT+9)
3 분 소요
원문: Dev.to

Source: Dev.to

Welcome to my vlog! I am continuing my DevOps journey, and this is my first vlog. The only prerequisite before moving forward is a basic knowledge of Docker. Don’t worry if you are not familiar with Kubernetes architecture yet—you’ll understand everything as we go.

오늘 우리는 Kubernetes (K8s)의 아키텍처에 대해 배울 것입니다.

Data Plane (Worker Nodes)

Kubelet

  • Responsibility: Acts as the captain of the worker node, ensuring that pods are running and healthy.
  • Auto‑healing: If a pod stops running, the kubelet informs the control plane (the brain) to take necessary action, such as restarting or recreating the pod.

Kube‑Proxy

  • Responsibility: Handles networking for the pods.
  • Mechanism: Uses iptables (Linux network rules) on the host to manage IP address allocation and basic load balancing, e.g., splitting traffic between multiple replicas of a pod.

Container Runtime

  • Responsibility: Provides the execution environment that actually runs the containers.
  • Flexibility: Unlike Docker, which has a fixed runtime stack, Kubernetes supports multiple runtimes via the Container Runtime Interface (CRI). Examples include containerd, CRI‑O, and the older Docker integration via Dockershim.

Control Plane (Master)

API Server

  • Responsibility: Entry point for all administrative tasks; it exposes the Kubernetes API to users, CLI tools, and other components.
  • Core Rule: Every request to the cluster goes through the API server first.

Scheduler

  • Responsibility: Decides on which worker node a pod should be placed based on resource availability and other constraints.

etcd

  • Responsibility: A distributed key‑value store that serves as the backing store for all cluster data.
  • Importance: Holds the entire state of the cluster; without it you cannot restore or manage the cluster.

Controller Manager

  • Responsibility: Maintains the desired state of the cluster. It continuously compares the current state (what is running) with the desired state defined in your YAML manifests.
  • Action: If there is a mismatch (e.g., a pod crashes), the controller manager identifies the failure and triggers the appropriate corrective action.

Cloud Controller Manager (CCM)

  • Role: Bridges Kubernetes with underlying cloud providers such as AWS (EKS), Azure (AKS), and Google Cloud (GKE).
  • Responsibility: Translates generic Kubernetes requests into specific cloud‑provider API calls.
    Example: Requesting a LoadBalancer service in Kubernetes results in the CCM creating an AWS ELB, Azure Load Balancer, etc.
  • Note: If you are running Kubernetes on‑premises (on your own servers), this component is not required.
That's it! I hope you understand each component of Kubernetes. Thank you.
0 조회
Back to Blog

관련 글

더 보기 »

대규모 Terraform + 고급 개념

markdown !Aisalkyn Aidarovahttps://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.c...