• ABOUT
  • PORTFOLIO
  • POSTS
  • GUESTBOOK

ยฉ 2025-2026 BlueCool12 All rights reserved.

2026.03.22Kubernetes

๐ŸงŠ Kubernetes Pod ๋™์ž‘ ์›๋ฆฌ ์ •๋ฆฌ

1. Pod๋ž€?

Pod๋Š” ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๊ฐ€ ์ƒ์„ฑํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ๊ฐ€์žฅ ์ž‘์€ ๋ฐฐํฌ ๋‹จ์œ„์ด๋‹ค. ํ•˜๋‚˜์˜ Pod ์•ˆ์— ์žˆ๋Š” ์ปจํ…Œ์ด๋„ˆ๋“ค์€ ๋‹ค์Œ์„ ๊ณต์œ ํ•œ๋‹ค.

  • ๋„คํŠธ์›Œํฌ ๋„ค์ž„์ŠคํŽ˜์ด์Šค: ๊ฐ™์€ IP๋ฅผ ๊ฐ–๊ณ  `localhost`๋กœ ์„œ๋กœ ํ†ต์‹ ํ•œ๋‹ค. ๊ฐ™์€ ํฌํŠธ๋ฅผ ๋‘ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๋™์‹œ์— ์ ์œ ํ•  ์ˆ˜๋Š” ์—†๋‹ค.
  • ์Šคํ† ๋ฆฌ์ง€ ๋ณผ๋ฅจ: Pod์— ์ •์˜๋œ ๋ณผ๋ฅจ์„ ๋ชจ๋“  ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๋งˆ์šดํŠธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์ƒ๋ช… ์ฃผ๊ธฐ์™€ ์Šค์ผ€์ค„๋ง ๋‹จ์œ„: ํ•ญ์ƒ ๊ฐ™์€ ๋…ธ๋“œ์— ํ•จ๊ป˜ ์Šค์ผ€์ค„๋ง๋˜๊ณ , ์‹œ์ž‘๊ณผ ์ข…๋ฃŒ ๋˜ํ•œ ํ•จ๊ป˜ ์ด๋ค„์ง„๋‹ค.

Pod์—๋Š” ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ํ•˜๋‚˜๋งŒ ์žˆ์„ ์ˆ˜๋„, ์—ฌ๋Ÿฌ ๊ฐœ๊ฐ€ ์žˆ์„ ์ˆ˜๋„ ์žˆ๋‹ค. ๋ณดํ†ต์€ 1 Pod = 1 ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๊ธฐ๋ณธ์ด๊ณ , ์—ฌ๋Ÿฌ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํ•˜๋‚˜์˜ Pod์— ๋‘๋Š” ๊ฒƒ์€ sidecar, init container ๊ฐ™์€ ํŠน์ • ํŒจํ„ด์—์„œ๋งŒ ์‚ฌ์šฉํ•œ๋‹ค.


2. Pod YAML ๊ตฌ์กฐ

์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์˜ ๋ชจ๋“  ๋ฆฌ์†Œ์Šค๋Š” YAML(๋˜๋Š” JSON) ๋งค๋‹ˆํŽ˜์ŠคํŠธ๋กœ ์„ ์–ธํ•œ๋‹ค. Pod๋„ ๋‹ค์Œ ๋„ค ๊ฐœ์˜ ์ตœ์ƒ์œ„ ํ•„๋“œ๋กœ ์ด๋ฃจ์–ด์ง„๋‹ค.

  • apiVersion: ๋ฆฌ์†Œ์Šค๊ฐ€ ์†ํ•œ API ๊ทธ๋ฃน๊ณผ ๋ฒ„์ „์œผ๋กœ, Pod๋Š” ์ฝ”์–ด API ๊ทธ๋ฃน์— ์†ํ•ด `v1`์„ ์ง€์ •ํ•œ๋‹ค.
  • kind: ๋ฆฌ์†Œ์Šค์˜ ์ข…๋ฅ˜๋กœ Pod์˜ ๊ฒฝ์šฐ `Pod`๋ฅผ ์ง€์ •ํ•œ๋‹ค.
  • metadata: ๋ฆฌ์†Œ์Šค๋ฅผ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•œ ์ •๋ณด๋กœ, ๊ฐ™์€ namespace ์•ˆ์—์„œ `name`์€ ์œ ์ผํ•ด์•ผ ํ•œ๋‹ค.
  • spec: ์ด Pod๊ฐ€ ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ•ด์•ผ ํ•˜๋Š”์ง€์— ๋Œ€ํ•œ ์„ ์–ธ์  ๋ช…์„ธ๋ฅผ ๊ธฐ์ˆ ํ•œ๋‹ค.

.yaml ์˜ˆ์‹œ

apiVersion: v1
kind: Pod
metadata:
name: nginx-pod
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.25
ports:
- containerPort: 80

์ฃผ์š” ํ•„๋“œ์˜ ์˜๋ฏธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  • metadata.name: namespace ๋‚ด์—์„œ Pod๋ฅผ ์‹๋ณ„ํ•˜๋Š” ์ด๋ฆ„์œผ๋กœ, DNS-1123 subdomain ๊ทœ์น™์„ ๋”ฐ๋ผ์•ผ ํ•œ๋‹ค. (์†Œ๋ฌธ์ž / ์ˆซ์ž / `-`, ์‹œ์ž‘๊ณผ ๋์€ ์˜์ˆซ์ž)
  • metadata.labels: ์ž„์˜์˜ key-value ์Œ์œผ๋กœ, ๋‹ค๋ฅธ ๋ฆฌ์†Œ์Šค๊ฐ€ ์ด Pod๋ฅผ ์ฐพ์„ ๋•Œ ๋งค์นญ ํ‚ค๋กœ ์‚ฌ์šฉ๋œ๋‹ค.
  • spec.containers: Pod๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์ปจํ…Œ์ด๋„ˆ ๋ชฉ๋ก์œผ๋กœ, ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ํ•˜๋‚˜์—ฌ๋„ -๋กœ ์‹œ์ž‘ํ•œ๋‹ค.
  • spec.containers[].image: ์‚ฌ์šฉํ•  ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€๋กœ, ์šด์˜ ํ™˜๊ฒฝ์—์„œ๋Š” ๋ช…์‹œ์  ํƒœ๊ทธ๋ฅผ ๊ถŒ์žฅํ•œ๋‹ค.
  • spec.containers[].ports: ์ปจํ…Œ์ด๋„ˆ๊ฐ€ listen ์ค‘์ธ ํฌํŠธ๋ฅผ ์„ ์–ธํ•œ๋‹ค. ์ด ํ•„๋“œ ์ž์ฒด๊ฐ€ ์™ธ๋ถ€์— ํฌํŠธ๋ฅผ ์—ฌ๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋ฉฐ, ๋‚˜์ค‘์— Service ๋ฆฌ์†Œ์Šค๋ฅผ ํ†ตํ•ด ์™ธ๋ถ€์— ๋…ธ์ถœํ•  ์ˆ˜ ์žˆ๋‹ค.


3. Pod ๊ธฐ๋ณธ ๋ช…๋ น์–ด (kubectl)

์ž‘์„ฑํ•œ ๋งค๋‹ˆํŽ˜์ŠคํŠธ๋ฅผ ํด๋Ÿฌ์Šคํ„ฐ์— ๋ฐ˜์˜ํ•˜๊ณ  ์ƒํƒœ๋ฅผ ํ™•์ธํ•ด๋ณด์ž.

kubectl apply -f - ๋งค๋‹ˆํŽ˜์ŠคํŠธ ์ ์šฉ

kubectl apply -f pod.yaml
  • apply๋Š” ์„ ์–ธ์  ๋ช…๋ น์–ด๋‹ค. ๋งค๋‹ˆํŽ˜์ŠคํŠธ์˜ ์ •์˜๋œ ์ƒํƒœ์™€ ํด๋Ÿฌ์Šคํ„ฐ์˜ ํ˜„์žฌ ์ƒํƒœ๋ฅผ ๋น„๊ตํ•ด ์ฐจ์ด์ ๋งŒ ๋ฐ˜์˜ํ•œ๋‹ค.
  • ๋ฉฑ๋“ฑํ•˜๋‹ค. ์ฆ‰, ๊ฐ™์€ ํŒŒ์ผ์„ ์—ฌ๋Ÿฌ ๋ฒˆ apply ํ•ด๋„ ๊ฒฐ๊ณผ๋Š” ๊ฐ™๋‹ค. ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ๋ฆฌ์†Œ์Šค๋ผ๋ฉด ๋ณ€๊ฒฝ๋œ ๋ถ€๋ถ„๋งŒ ๊ฐฑ์‹ ๋œ๋‹ค.
  • ๋น„์Šทํ•œ ๋ช…๋ น์–ด๋กœ kubectl create -f๊ฐ€ ์žˆ์ง€๋งŒ, create๋Š” ๋ฆฌ์†Œ์Šค๊ฐ€ ์ด๋ฏธ ์กด์žฌํ•˜๋ฉด ์—๋Ÿฌ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.


kubectl get pods - ๋ฆฌ์†Œ์Šค ์กฐํšŒ

kubectl get pods                   # ํ˜„์žฌ namespace์˜ ๋ชจ๋“  Pod
kubectl get pods nginx-pod # ํŠน์ • Pod ํ•˜๋‚˜
kubectl get pods -o wide # IP, ๋…ธ๋“œ ์ •๋ณด๊นŒ์ง€ ํฌํ•จ
kubectl get pods -A # ๋ชจ๋“  namespace ์กฐํšŒ
kubectl get pods nginx-pod -o yaml # spec๊ณผ status ์ „์ฒด

๊ธฐ๋ณธ ์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

NAME         READY   STATUS    RESTARTS   AGE
nginx-pod 1/1 Running 0 3m
  • READY: (Ready ์ƒํƒœ์ธ ์ปจํ…Œ์ด๋„ˆ ์ˆ˜) / (์ „์ฒด ์ปจํ…Œ์ด๋„ˆ ์ˆ˜). readiness probe๊ฐ€ ์„ฑ๊ณตํ•œ ์ปจํ…Œ์ด๋„ˆ๋งŒ Ready ์ƒํƒœ๊ฐ€ ๋œ๋‹ค.
  • STATUS: Pod์˜ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ’์œผ๋กœ, Pending, Running, Succeeded, Failed, Unknown ์ค‘ ํ•˜๋‚˜์˜ ๊ฐ’์„ ๊ฐ€์ง„๋‹ค.
  • RESTARTS: kubelet์ด ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์žฌ์‹œ์ž‘ํ•œ ํšŸ์ˆ˜๋กœ, ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๋น„์ •์ƒ ์ข…๋ฃŒ๋  ๋•Œ๋งˆ๋‹ค ์ฆ๊ฐ€ํ•œ๋‹ค.


Pod IP ํ™•์ธ

Pod์—๋Š” ํด๋Ÿฌ์Šคํ„ฐ ๋‚ด๋ถ€์—์„œ ๋ผ์šฐํŒ… ๊ฐ€๋Šฅํ•œ ๊ณ ์œ ํ•œ IP๊ฐ€ ํ• ๋‹น๋œ๋‹ค. (๊ตฌ์ฒด์ ์ธ IP ๋Œ€์—ญ์€ CNI ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ค์ •์— ๋”ฐ๋ผ ๊ฒฐ์ •๋œ๋‹ค.)

kubectl get pods nginx-pod -o wide 
# NAME READY STATUS ... IP NODE
# nginx-pod 1/1 Running ... 10.244.1.5 worker-1

์ด IP๋Š” ํœ˜๋ฐœ์„ฑ์œผ๋กœ, Pod๊ฐ€ ์žฌ์‹œ์ž‘๋˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๋…ธ๋“œ๋กœ ์˜ฎ๊ฒจ๊ฐ€๋ฉด ๋ฐ”๋€Œ๊ฒŒ ๋œ๋‹ค. ๋”ฐ๋ผ์„œ Pod IP๋ฅผ ๋‹ค๋ฅธ ๊ณณ์—์„œ ์ง์ ‘ ์ฐธ์กฐํ•ด์„  ์•ˆ ๋˜๋ฉฐ, ์•ˆ์ •๋œ ์—”๋“œํฌ์ธํŠธ๊ฐ€ ํ•„์š”ํ•˜๋‹ค๋ฉด Service ๊ฐ™์€ ์ถ”์ƒํ™”๋œ ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.


kubectl delete - ๋ฆฌ์†Œ์Šค ์‚ญ์ œ

kubectl delete pod nginx-pod # ์ด๋ฆ„์œผ๋กœ ์‚ญ์ œ
kubectl delete -f pod.yaml # ๋งค๋‹ˆํŽ˜์ŠคํŠธ๋กœ ์‚ญ์ œ

apply๋กœ ์ƒ์„ฑํ•œ ๋ฆฌ์†Œ์Šค๋Š” ๊ฐ™์€ ๋งค๋‹ˆํŽ˜์ŠคํŠธ๋กœ delete -f ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ด ์•ˆ์ „ํ•˜๋‹ค. ๋งค๋‹ˆํŽ˜์ŠคํŠธ์— ์ •์˜๋œ ๋ชจ๋“  ๋ฆฌ์†Œ์Šค๊ฐ€ ํ•œ ๋ฒˆ์— ์ •๋ฆฌ๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

์‚ญ์ œ ์‹œ ์ฆ‰์‹œ ์ข…๋ฃŒ๊ฐ€ ์•„๋‹Œ, graceful termination ์ ˆ์ฐจ๋ฅผ ๊ฑฐ์นœ๋‹ค.

  1. kubelet์ด ์ปจํ…Œ์ด๋„ˆ์˜ PID 1 ํ”„๋กœ์„ธ์Šค์— SIGTERM์„ ๋ณด๋‚ธ๋‹ค.
  2. terminationGracePeriodSeconds (๊ธฐ๋ณธ๊ฐ’ 30์ดˆ) ๋™์•ˆ ๊ธฐ๋‹ค๋ฆฐ๋‹ค. ์ด ์‹œ๊ฐ„ ์•ˆ์— ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ •์ƒ ์ข…๋ฃŒ๋ผ์•ผ ํ•œ๋‹ค.
  3. ์‹œ๊ฐ„์ด ์ง€๋‚˜๋„ ์ข…๋ฃŒ๋˜์ง€ ์•Š์œผ๋ฉด SIGKILL๋กœ ๊ฐ•์ œ ์ข…๋ฃŒํ•œ๋‹ค.

์ด ๋ฉ”์ปค๋‹ˆ์ฆ˜ ๋•๋ถ„์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์ง„ํ–‰ ์ค‘์ธ ์š”์ฒญ์„ ๋งˆ๋ฌด๋ฆฌํ•˜๊ณ  ๋ฆฌ์†Œ์Šค๋ฅผ ์ •๋ฆฌํ•  ์‹œ๊ฐ„์„ ํ™•๋ณดํ•  ์ˆ˜ ์žˆ๋‹ค.

--grace-period=0 --force ์˜ต์…˜์œผ๋กœ ์ฆ‰์‹œ ์ข…๋ฃŒ ํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ, ๋ฐ์ดํ„ฐ ์œ ์‹ค ์œ„ํ—˜์ด ์žˆ์–ด ์šด์˜ ํ™˜๊ฒฝ์—์„œ๋Š” ๊ถŒ์žฅ๋˜์ง€ ์•Š๋Š”๋‹ค.


4. Pod ๊ด€๋ฆฌ

์‹คํ–‰ ์ค‘์ธ Pod์˜ ์ƒํƒœ์™€ ์ด๋ฒคํŠธ, ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•˜๊ฑฐ๋‚˜ ๋‚ด๋ถ€์— ์ง์ ‘ ๋“ค์–ด๊ฐ€์•ผ ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ช…๋ น์–ด๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

kubectl describe pod - ์ƒ์„ธ ์ •๋ณด์™€ ์ด๋ฒคํŠธ

kubectl describe pod nginx-pod

get -o yaml์ด ๋งค๋‹ˆํŽ˜์ŠคํŠธ๋ฅผ ๊ทธ๋Œ€๋กœ ๋ณด์—ฌ์ค€๋‹ค๋ฉด, describe๋Š” ์‚ฌ๋žŒ์ด ์ฝ๊ธฐ ์‰ฌ์šด ํ˜•ํƒœ๋กœ ์ •๋ฆฌํ•˜๊ณ  ๋งˆ์ง€๋ง‰์— Events ์„น์…˜์„ ๋ถ™์ธ๋‹ค. ์ด๋ฏธ์ง€ ํ’€ ์‹คํŒจ, ์Šค์ผ€์ค„๋ง ์‹คํŒจ ๋“ฑ์˜ ๋กœ๊ทธ๊ฐ€ Events์— ๊ธฐ๋ก๋˜์–ด ๋””๋ฒ„๊น…์— ์œ ์šฉํ•˜๋‹ค.


kubectl logs - ์ปจํ…Œ์ด๋„ˆ ๋กœ๊ทธ ํ™•์ธ

kubectl logs nginx-pod

logs๋Š” ์ปจํ…Œ์ด๋„ˆ์˜ stdout๊ณผ stderr๋ฅผ ๋ณด์—ฌ์ค€๋‹ค. ๋”ฐ๋ผ์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํŒŒ์ผ์— ์ง์ ‘ ๋กœ๊ทธ๋ฅผ ์“ฐ๋ฉด kubectl logs๋กœ๋Š” ํ™•์ธํ•  ์ˆ˜ ์—†๋‹ค.

k8s ํ™˜๊ฒฝ์—์„œ๋Š” stdout/stderr๋กœ ์ถœ๋ ฅํ•˜๋Š” ๊ฒƒ์ด ํ‘œ์ค€์ด๋ฉฐ, ๊ทธ ์ถœ๋ ฅ์„ ์ปจํ…Œ์ด๋„ˆ ๋Ÿฐํƒ€์ž„์ด ๋…ธ๋“œ์˜ ํŒŒ์ผ๋กœ ์ˆ˜์ง‘ํ•œ๋‹ค.

์ถ”๊ฐ€๋กœ -p(previous) ์˜ต์…˜์„ ๋ถ™์ด๋ฉด ์ง์ „์— ์ข…๋ฃŒ๋œ ์ธ์Šคํ„ด์Šค์˜ ๋กœ๊ทธ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.


kubectl exec - ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€ ์ง„์ž…

kubectl exec -it nginx-pod -- /bin/bash

docker exec์™€ ๋น„์Šทํ•˜๊ฒŒ ๋™์ž‘ํ•œ๋‹ค. -i๋Š” stdin ์—ฐ๊ฒฐ, -t๋Š” TTY ํ• ๋‹น์œผ๋กœ, ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ์…ธ๋กœ ๋“ค์–ด๊ฐ€๋ ค๋ฉด ๋ณดํ†ต -it ์˜ต์…˜์„ ํ•จ๊ป˜ ์“ด๋‹ค.

์ฃผ์˜ํ•  ์ ์€ ์ปจํ…Œ์ด๋„ˆ์— ์…ธ ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ์–ด์•ผ ํ•˜๋ฉฐ, ์šด์˜ ํ™˜๊ฒฝ์—์„œ exec๋กœ ์ƒํƒœ๋ฅผ ์ง์ ‘ ๊ฑด๋“œ๋ฆฌ๋Š” ๊ฒƒ์€ ๊ถŒ์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค.


5. Pod์˜ ๋™์ž‘ ์›๋ฆฌ

์ง€๊ธˆ๊นŒ์ง€ Pod๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๋‹ค๋ฃจ๋Š” ๋ฐฉ๋ฒ•์„ ์‚ดํŽด๋ดค๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ, ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๊ฐ€ ์™œ ์ปจํ…Œ์ด๋„ˆ ์œ„์— Pod๋ผ๋Š” ํ•œ ๋‹จ๊ณ„์˜ ์ถ”์ƒํ™”๋ฅผ ๋‘๋Š”์ง€, ๊ทธ๋ฆฌ๊ณ  ๊ทธ ์ถ”์ƒํ™”๊ฐ€ ์–ด๋–ป๊ฒŒ ์‹ค์ œ๋กœ ๊ตฌํ˜„๋˜๋Š”์ง€๋ฅผ ์ •๋ฆฌํ•ด๋ณด์ž.

์™œ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์•„๋‹Œ Pod์ธ๊ฐ€?

๋„์ปค ๊ฐ™์€ ์ปจํ…Œ์ด๋„ˆ ๋Ÿฐํƒ€์ž„์ด ๋‹ค๋ฃจ๋Š” ๋‹จ์œ„๋Š” ๊ฐœ๋ณ„ ์ปจํ…Œ์ด๋„ˆ์ด๋‹ค. ๋ฐ˜๋ฉด ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋Š” ํ•œ ๋‹จ๊ณ„ ์œ„์˜ ๋‹จ์œ„์ธ Pod๋ฅผ ๋‘”๋‹ค.

์ด์œ ๋Š” ํ•จ๊ป˜ ๋™์ž‘ํ•ด์•ผ ํ•˜๋Š” ์ปจํ…Œ์ด๋„ˆ๋“ค์„ ๊ฐ™์€ ๋ฆฌ๋ˆ…์Šค ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋กœ ๋ฌถ์–ด, ํ•˜๋‚˜์˜ ๋‹จ์œ„๋กœ ์Šค์ผ€์ค„๋งํ•˜๊ธฐ ์œ„ํ•ด์„œ์ด๋‹ค.

๊ฐ™์€ Pod์— ์†ํ•œ ์ปจํ…Œ์ด๋„ˆ๋“ค์€ ๋‹ค์Œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๊ณต์œ ํ•œ๋‹ค.

  • Network: ๊ฐ™์€ IP, ๊ฐ™์€ IP ํฌํŠธ ๊ณต๊ฐ„์„ ๊ณต์œ ํ•˜๋ฉฐ, `localhost`๋กœ ์„œ๋กœ ํ†ต์‹ ํ•œ๋‹ค.
  • IPC: ํ”„๋กœ์„ธ์Šค ๊ฐ„ ํ†ต์‹  ์ž์›์„ ๊ณต์œ ํ•œ๋‹ค.
  • UTS: ๊ฐ™์€ ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์„ ๊ฐ€์ง„๋‹ค.

๋ฐ˜๋ฉด Mount ๋„ค์ž„์ŠคํŽ˜์ด์Šค(ํŒŒ์ผ์‹œ์Šคํ…œ)๋Š” ๊ณต์œ ํ•˜์ง€ ์•Š๋Š”๋‹ค. ์ปจํ…Œ์ด๋„ˆ ๊ฐ„ ํŒŒ์ผ ๊ณต์œ ๋Š” ๋ณ„๋„์˜ ๋ณผ๋ฅจ์„ ํ†ตํ•ด ์ด๋ฃจ์–ด์ง€๋ฉฐ, PID ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋„ ๊ธฐ๋ณธ๊ฐ’์€ ๋น„๊ณต์œ ์ด๋‹ค.

ํ•„์š” ์‹œ spec.shareProcessNamespace: true๋กœ ๋ช…์‹œํ•ด์•ผ ํ•œ๋‹ค.

์ด ๊ณต์œ  ๋ชจ๋ธ ์œ„์—์„œ sidecar ํŒจํ„ด์ด ๊ฐ€๋Šฅํ•ด์ง„๋‹ค. ๋ฉ”์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ปจํ…Œ์ด๋„ˆ ์˜†์— ๋กœ๊น…, ํ”„๋ก์‹œ, ์„œ๋น„์Šค ๋ฉ”์‹œ ๊ฐ™์€ ๋ณด์กฐ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํ•จ๊ป˜ ๋‘๊ณ , ๊ฐ™์€ IP์™€ ๊ฐ™์€ ๋ณผ๋ฅจ์„ ๊ณต์œ ํ•œ ์ฑ„ ํ˜‘์—…ํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฐฉ์‹์ด๋‹ค. ์ด๋ ‡๊ฒŒ ํ•œ Pod๋Š” ๊ฒฐ๊ตญ ํ•˜๋‚˜์˜ ์™„๊ฒฐ๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‹จ์œ„๊ฐ€ ๋œ๋‹ค.

๋˜ํ•œ ๊ฐ™์€ Pod์˜ ๋ชจ๋“  ์ปจํ…Œ์ด๋„ˆ๋Š” ๊ฐ™์€ ์›Œ์ปค ๋…ธ๋“œ์—์„œ ํ•จ๊ป˜ ์‹คํ–‰๋˜๋Š” ๊ฒƒ์ด ๋ณด์žฅ๋œ๋‹ค. ์ด๋Š” ๋‹จ์ˆœํ•œ ์ถ”์ƒํ™”๊ฐ€ ์•„๋‹ˆ๋ผ ๊ฐ•ํ•œ ์ œ์•ฝ ์กฐ๊ฑด์ด๋‹ค. (๋„ค์ž„์ŠคํŽ˜์ด์Šค ๊ณต์œ ๋Š” ๋‹จ์ผ ๋…ธ๋“œ ์œ„์—์„œ๋งŒ ์„ฑ๋ฆฝํ•˜๊ธฐ ๋•Œ๋ฌธ)


Pause ์ปจํ…Œ์ด๋„ˆ - ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๊ณต์œ ์˜ ์‹ค์ฒด

๊ทธ๋ ‡๋‹ค๋ฉด ์ด ๋„ค์ž„์ŠคํŽ˜์ด์Šค ๊ณต์œ ๋Š” ์‹ค์ œ๋กœ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„๋ ๊นŒ? ๋‹ต์€ Pause ์ปจํ…Œ์ด๋„ˆ์— ์žˆ๋‹ค.

Pause ์ปจํ…Œ์ด๋„ˆ๋Š” ๊ฐ Pod๋งˆ๋‹ค ์ž๋™์œผ๋กœ ํ•จ๊ป˜ ์ƒ์„ฑ๋˜๋Š” ์ธํ”„๋ผ ์ปจํ…Œ์ด๋„ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์ž‘์„ฑํ•œ ๋งค๋‹ˆํŽ˜์ŠคํŠธ์—๋Š” ๋“ฑ์žฅํ•˜์ง€ ์•Š์ง€๋งŒ, kubelet์ด Pod์„ ๋„์šธ ๋•Œ ๊ฐ€์žฅ ๋จผ์ € ์ƒ์„ฑํ•œ๋‹ค. ์—ญํ• ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  1. ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“ ๋‹ค.
    NetworkยทIPCยทUTS ๊ฐ™์€ ๊ณต์œ  ๋Œ€์ƒ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ์ ์œ ํ•œ ์ฑ„ idle ์ƒํƒœ๋กœ ๋จธ๋ฌธ๋‹ค.
  2. ๋‹ค๋ฅธ ์ปจํ…Œ์ด๋„ˆ๋“ค์ด ํ•ฉ๋ฅ˜ํ•œ๋‹ค.
    Pod ๋‚ด๋ถ€์˜ ์ผ๋ฐ˜ ์ปจํ…Œ์ด๋„ˆ๋“ค์€ ์ž๊ธฐ ์ž์‹ ์˜ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ์ƒˆ๋กœ ๋งŒ๋“œ๋Š” ๋Œ€์‹  Pause ์ปจํ…Œ์ด๋„ˆ์˜ ๋„ค์ž„์ŠคํŽ˜์ด์Šค์— join ํ•œ๋‹ค.
  3. ๋ฉ”์ธ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์ฃฝ์–ด๋„ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋Š” ์‚ด์•„๋‚จ๋Š”๋‹ค.
    ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์žฌ์‹œ์ž‘๋ผ๋„ Pod IP๊ฐ€ ๊ทธ๋Œ€๋กœ ์œ ์ง€๋˜๋Š” ์ด์œ ๊ฐ€ ์—ฌ๊ธฐ์— ์žˆ๋‹ค. ๋„ค์ž„์ŠคํŽ˜์ด์Šค์˜ ์‹ค์ œ ์†Œ์œ ์ž๋Š” Pause ์ปจํ…Œ์ด๋„ˆ์ด์ง€ ๋ฉ”์ธ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์•„๋‹ˆ๋‹ค.

์›Œ์ปค ๋…ธ๋“œ๋ฅผ ํ†ตํ•ด ์ง์ ‘ ํ™•์ธ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

ps aux | grep pause
Previous post
๐Ÿง‘โ€๐Ÿ’ป ๋ธ”๋กœ๊ทธ ๊ฐœ๋ฐœ ํšŒ๊ณ 
Next post
๐ŸŠ 2026๋…„ 1๋ถ„๊ธฐ ํšŒ๊ณ 
Decorative logo