π Multi-container Pods in Kubernetes
1. λ°°κ²½
- νλ μ ν리μΌμ΄μ
μ λͺ¨λ리μ(Monolithic) ꡬ쑰 λμ , κΈ°λ₯λ³λ‘ μͺΌκ°μ§ λ§μ΄ν¬λ‘μλΉμ€(Microservices) ννλ‘ λ§μ΄ κ°λ°λ¨.
- μ΄λ κ² νλ©΄:
- μλΉμ€λ³ λ
립 λ°°ν¬/μ
λ°μ΄νΈ κ°λ₯
- μλΉμ€λ³ νμ₯/μΆμ(Scale up & down) κ°λ₯
- μ½λ 볡μ‘λ κ°μ, μ¬μ¬μ©μ± μ¦κ°
2. λ¬Έμ μν©
- μ΄λ€ κ²½μ°μλ μλ‘ λ€λ₯Έ λ κΈ°λ₯μ΄ νμ κ°μ΄ λμν΄μΌ ν¨.
- μ: μΉμλ²(Web Server) + λ©μΈ μ±(Main App)
- μΉμλ² νλλ λ°λμ μ± νλμ 1:1λ‘ λ¬Άμ¬μ μ€νλμ΄μΌ ν¨.
- μ΄λ΄ λ κ΅³μ΄ μ½λλ₯Ό ν©μ³μ νλμ 컨ν
μ΄λλ‘ λ§λ€λ©΄ λΆνμνκ² μ½λκ° λΉλν΄μ§.
3. Multi-container Pod κ°λ
- νλμ νλ(Pod) μμ μ¬λ¬ κ°μ 컨ν
μ΄λλ₯Ό μ μν μ μμ.
- νΉμ§:
- Lifecycle 곡μ β μμ±Β·μ€μΌμΌλ§Β·μμ κ° νμ κ°μ΄ μ΄λ£¨μ΄μ§.
- λ€νΈμν¬ κ³΅μ β κ°μ νλ μμμλ
localhost λ‘ μλ‘ ν΅μ κ°λ₯.
- μ€ν λ¦¬μ§ λ³Όλ₯¨ 곡μ β νλμ λ§μ΄νΈλ λ³Όλ₯¨μ μ¬λ¬ 컨ν
μ΄λκ° ν¨κ» μ¬μ©.
π λ°λΌμ, λ³λμ Service μ μλ PV 곡μ μμ΄λ κΈ΄λ°νκ² νλ ₯νλ μ ν리μΌμ΄μ
μ μμ½κ² κ΅¬μ± κ°λ₯.
4. νλ μ μ μμ
apiVersion: v1
kind: Pod
metadata:
name: multi-container-pod
spec:
containers:
- name: web-app
image: nginx
- name: main-app
image: main-app:latest
spec.containers λ λ°°μ΄(Array) μ΄λ―λ‘ μ¬λ¬ κ°μ 컨ν
μ΄λ μ μ κ°λ₯.
- μ μμλ:
- 컨ν
μ΄λ 1:
web-app (Nginx μΉμλ²)
- 컨ν
μ΄λ 2:
main-app (λ©μΈ μ ν리μΌμ΄μ
)