π λͺ©μ°¨
μΏ λ²λ€ν°μ€λ 컨ν μ΄λνλ μ ν리μΌμ΄μ μ λ°°ν¬, νμ₯ λ° κ΄λ¦¬λ₯Ό μλννλ μ€ν μμ€ νλ«νΌμ λλ€. 볡μ‘ν λΆμ° μμ€ν μ ν¨μ¨μ μΌλ‘ μ΄μν μ μλλ‘ μ€κ³λμ΄, νλ IT μΈνλΌμ ν΅μ¬ κΈ°μ λ‘ μ리 μ‘μμ΅λλ€. μ΄ λ¬Έμμμλ μΏ λ²λ€ν°μ€μ κΈ°λ³Έ κ°λ λΆν° μ€μ§μ μΈ νμ© λ°©λ²κΉμ§ μ΄ν΄ν μ μλλ‘ κ΅¬μ±νμμ΅λλ€.
μΏ λ²λ€ν°μ€λ 무μμΈκ°?
μΏ λ²λ€ν°μ€(Kubernetes)λ 컨ν μ΄λνλ μ ν리μΌμ΄μ μ λ°°ν¬μ κ΄λ¦¬λ₯Ό μλννλ νλ«νΌμ λλ€.
2014λ ꡬκΈμμ μ€ν μμ€λ‘ 곡κ°λ νλ‘μ νΈλ‘, ν΄λΌμ°λ λ€μ΄ν°λΈ μ ν리μΌμ΄μ κ°λ°μ μ΅μ νλμμ΅λλ€.
컨ν μ΄λλ₯Ό ν΄λ¬μ€ν° λ¨μλ‘ λ¬Άμ΄ ν¨μ¨μ μΌλ‘ μ΄μνκ³ , 볡μ‘ν μ ν리μΌμ΄μ μν¬λ‘λλ₯Ό μ²λ¦¬ν©λλ€.
μΏ λ²λ€ν°μ€λ λ€μν νκ²½μμ μ€ν κ°λ₯νλ©°, μ£Όμ ν΄λΌμ°λ νλ«νΌκ³Όλ ν΅ν©λ©λλ€.
μ§μμ μΈ λ°°ν¬(CI/CD)λ₯Ό μ§μνμ¬ μννΈμ¨μ΄ κ°λ° μλλ₯Ό κ°μνν©λλ€.
컨ν μ΄λ μ€μΌμ€νΈλ μ΄μ λꡬλ‘μ DevOpsμ ν΄λΌμ°λ λ€μ΄ν°λΈ νκ²½μ νμ κΈ°μ μ λλ€.
λ€μν κΈ°λ₯κ³Ό μ μ°μ±μ μ 곡νμ¬ νλμ μΈ IT μΈνλΌ κ΅¬μΆμ κΈ°μ¬ν©λλ€.
ν΄λ¬μ€ν° κ΄λ¦¬λ₯Ό ν΅ν΄ νμ₯μ±κ³Ό μμ μ±μ μ 곡ν©λλ€.
μΏ λ²λ€ν°μ€μ ν΅μ¬ κ΅¬μ± μμ
μΏ λ²λ€ν°μ€λ μ£Όμ κ΅¬μ± μμλ‘ API μλ², 컨νΈλ‘€λ¬ λ§€λμ , etcd, λ Έλ, λ° Kubeletμ ν¬ν¨ν©λλ€.
API μλ²λ ν΄λ¬μ€ν° κ΄λ¦¬μ μ§μ μ μΌλ‘, λͺ¨λ μμ²μ μ²λ¦¬ν©λλ€.
컨νΈλ‘€λ¬ λ§€λμ λ ν΄λ¬μ€ν° μνλ₯Ό μ μ§νκΈ° μν΄ λ€μν μμ μ μλνν©λλ€.
etcdλ ν΄λ¬μ€ν°μ μν λ°μ΄ν°λ₯Ό μ μ₯νλ λΆμ° ν€-κ° μ μ₯μμ λλ€.
λ Έλλ 컨ν μ΄λλ₯Ό μ€ννλ 물리μ λλ κ°μ λ¨Έμ μ λλ€.
Kubeletμ κ° λ Έλμμ μ€νλλ©°, 컨ν μ΄λ μ€ν μνλ₯Ό λͺ¨λν°λ§ν©λλ€.
μλΉμ€ νλ‘μλ ν΄λ¬μ€ν° λ€νΈμν¬ ν΅μ μ μ²λ¦¬ν©λλ€.
μΏ λ²λ€ν°μ€ λμ보λλ μ¬μ©μ μΉνμ μΈ μΈν°νμ΄μ€λ₯Ό μ 곡ν©λλ€.
μΏ λ²λ€ν°μ€μ μν€ν μ²
μΏ λ²λ€ν°μ€λ λ§μ€ν° λ Έλμ μ컀 λ Έλλ‘ κ΅¬μ±λ λΆμ°ν μμ€ν μ λλ€.
λ§μ€ν° λ Έλλ ν΄λ¬μ€ν°μ μ λ°μ μΈ κ΄λ¦¬λ₯Ό λ΄λΉν©λλ€.
API μλ²μ μ€μΌμ€λ¬κ° λ§μ€ν° λ Έλμμ λμν©λλ€.
μ컀 λ Έλλ 컨ν μ΄λλ₯Ό μ€μ λ‘ μ€ννλ©°, μμ μ μνν©λλ€.
λͺ¨λ λ Έλλ λ€νΈμν¬μ ν΅μ νλ©°, νλ ₯μ μΌλ‘ λμν©λλ€.
λͺ¨λνλ μ€κ³λ‘, λ€μν νκ²½μμ νμ₯μ΄ κ°λ₯ν©λλ€.
컨ν μ΄λ κ°μ ν΅μ μ λ€νΈμν¬ νλ¬κ·ΈμΈμ ν΅ν΄ μ΄λ£¨μ΄μ§λλ€.
μμ μ±κ³Ό μ±λ₯μ μν΄ μμμ ν¨μ¨μ μΌλ‘ κ΄λ¦¬ν©λλ€.
μΏ λ²λ€ν°μ€μ κΈ°λ³Έ κ°λ
Podλ μΏ λ²λ€ν°μ€μμ κ°μ₯ μμ λ°°ν¬ λ¨μμ λλ€.
μλΉμ€(Service)λ Podμ λ€νΈμν¬ μ κ·Όμ μ μ΄ν©λλ€.
λνλ‘μ΄λ¨ΌνΈ(Deployment)λ μ ν리μΌμ΄μ μ μ μΈμ λ°°ν¬λ₯Ό μ§μν©λλ€.
λ€μμ€νμ΄μ€λ ν΄λ¬μ€ν°λ₯Ό λ Όλ¦¬μ μΌλ‘ ꡬλΆνλ λ° μ¬μ©λ©λλ€.
λ³Όλ₯¨μ Podμ λ°μ΄ν°λ₯Ό μ μ₯νκΈ° μν λμ€ν¬ 곡κ°μ μ 곡ν©λλ€.
λ μ΄λΈκ³Ό μ λ ν°λ μμ νν°λ§ λ° κ·Έλ£Ήνλ₯Ό μ§μν©λλ€.
컨ν μ΄λλ κ°λ²Όμ΄ μ ν리μΌμ΄μ μ€ν νκ²½μ λλ€.
λ§€λνμ€νΈ νμΌμ μ ν리μΌμ΄μ λ°°ν¬λ₯Ό μ μνλ YAML λλ JSON νμΌμ λλ€.
μ ν리μΌμ΄μ λ°°ν¬
μΏ λ²λ€ν°μ€λ₯Ό ν΅ν΄ μ μΈμ λ°©μμΌλ‘ μ ν리μΌμ΄μ μ λ°°ν¬ν μ μμ΅λλ€.
λνλ‘μ΄λ¨ΌνΈλ₯Ό μ¬μ©νμ¬ μνλ μνλ₯Ό μ μν©λλ€.
λ‘€λ§ μ λ°μ΄νΈλ μ€λ¨ μλ λ°°ν¬λ₯Ό κ°λ₯νκ² ν©λλ€.
kubectl λͺ λ Ήμ΄λ₯Ό μ¬μ©νμ¬ λ°°ν¬λ₯Ό μ€νν©λλ€.
Helm μ°¨νΈλ₯Ό νμ©νμ¬ λ³΅μ‘ν λ°°ν¬λ₯Ό κ°μνν μ μμ΅λλ€.
λͺ¨λν°λ§ λꡬλ₯Ό ν΅ν΄ λ°°ν¬ μνλ₯Ό νμΈν μ μμ΅λλ€.
μλ¬ λ°μ μ μλ 볡ꡬλ₯Ό μ§μν©λλ€.
νΈλν½ λΆμ°μΌλ‘ μμ μ μΈ μλΉμ€ μ κ³΅μ΄ κ°λ₯ν©λλ€.
νμ₯μ±κ³Ό μλν
μΏ λ²λ€ν°μ€λ μν νμ₯(Horizontal Scaling)μ μ§μν©λλ€.
μλ νμ₯κΈ°(HPA)λ νΈλν½μ λ°λΌ Pod μλ₯Ό λμ μΌλ‘ μ‘°μ ν©λλ€.
ν΄λ¬μ€ν° μ€ν μ€μΌμΌλ¬λ λ Έλ μλ₯Ό μλμΌλ‘ κ΄λ¦¬ν©λλ€.
CI/CD νμ΄νλΌμΈκ³Ό ν΅ν©νμ¬ μλνλ₯Ό κ°νν©λλ€.
μμ ν λΉμ ν¨μ¨μ μΌλ‘ μ΅μ νν©λλ€.
λͺ¨λν°λ§ λκ΅¬λ‘ μ€μκ° μμ μ¬μ©λμ μΆμ ν©λλ€.
μν¬λ‘λμ μꡬμ λ°λΌ 리μμ€λ₯Ό μ¬λ°°μΉν©λλ€.
μλνλ μμ μ€μΌμ€λ§μΌλ‘ ν¨μ¨μ±μ λμ λλ€.
μΏ λ²λ€ν°μ€μ νμ© μ¬λ‘
μΏ λ²λ€ν°μ€λ ν΄λΌμ°λ λ€μ΄ν°λΈ μ ν리μΌμ΄μ κ°λ°μ νμμ μ λλ€.
λ§μ΄ν¬λ‘μλΉμ€ μν€ν μ² κ΅¬νμ μ ν©ν©λλ€.
λ°μ΄ν° λΆμ νλ«νΌμμ νμ₯ κ°λ₯ν μν¬λ‘λ κ΄λ¦¬κ° κ°λ₯ν©λλ€.
CI/CD νμ΄νλΌμΈμ μλνμ ν΅ν©μ΄ κ°λ₯ν©λλ€.
νμ΄λΈλ¦¬λ ν΄λΌμ°λ νκ²½μμμ μ μ°μ±μ μ 곡ν©λλ€.
κ²μ μλ² κ΄λ¦¬ λ° μ€μΌμΌλ§μ νμ©λ©λλ€.
AI/ML μν¬λ‘λμ ν¨μ¨μ κ΄λ¦¬κ° κ°λ₯ν©λλ€.
μ μ μκ±°λ νλ«νΌμ νμ₯μ± μ§μμ μ¬μ©λ©λλ€.
β μμ£Ό 묻λ μ§λ¬Έ FAQ
Q: μΏ λ²λ€ν°μ€λ μ΄λ€ νκ²½μμ μ¬μ©ν μ μλμ?
A: μΏ λ²λ€ν°μ€λ μ¨νλ λ―Έμ€, νΌλΈλ¦ ν΄λΌμ°λ, νμ΄λΈλ¦¬λ νκ²½ λ± λ€μν νκ²½μμ μ¬μ©ν μ μμ΅λλ€.
Q: Podμ 컨ν μ΄λμ μ°¨μ΄λ 무μμΈκ°μ?
A: Podλ 컨ν μ΄λμ κ·Έλ£Ήμ΄λ©°, μΏ λ²λ€ν°μ€μμ κ°μ₯ μμ λ°°ν¬ λ¨μμ λλ€.
Q: μΏ λ²λ€ν°μ€μ Dockerμ κ΄κ³λ 무μμΈκ°μ?
A: Dockerλ 컨ν μ΄λ κΈ°μ μ΄κ³ , μΏ λ²λ€ν°μ€λ 컨ν μ΄λλ₯Ό κ΄λ¦¬νκ³ μ€μΌμ€νΈλ μ΄μ νλ νλ«νΌμ λλ€.
Q: μΏ λ²λ€ν°μ€μ μ£Όμ μ₯μ μ 무μμΈκ°μ?
A: νμ₯μ±, μμ μ±, μλνλ λ°°ν¬ λ° κ΄λ¦¬ κΈ°λ₯μ μ 곡ν©λλ€.
Q: μΏ λ²λ€ν°μ€μ 리μμ€ μꡬμ¬νμ μ΄λ»κ² λλμ?
A: ν΄λ¬μ€ν° ν¬κΈ°μ μ¬μ© μ¬λ‘μ λ°λΌ λ¬λΌμ§μ§λ§, κΈ°λ³Έμ μΌλ‘ CPUμ λ©λͺ¨λ¦¬κ° μΆ©λΆν νμν©λλ€.
Q: μΏ λ²λ€ν°μ€λ 무λ£μΈκ°μ?
A: μΏ λ²λ€ν°μ€λ μ€ν μμ€ μννΈμ¨μ΄λ‘ 무λ£λ‘ μ¬μ©ν μ μμ§λ§, μ΄μμλ μΈνλΌ λΉμ©μ΄ νμν©λλ€.
Q: μΏ λ²λ€ν°μ€λ μΌλ§λ μμ μ μΈκ°μ?
A: μΏ λ²λ€ν°μ€λ λμ μμ μ±μ μ 곡νλ©°, λκ·λͺ¨ νκ²½μμλ μ λ’°μ± μκ² λμν©λλ€.
Q: μΏ λ²λ€ν°μ€ νμ΅μ μμνλ €λ©΄ 무μμ μμμΌ νλμ?
A: Linux κΈ°λ³Έ λͺ λ Ήμ΄, 컨ν μ΄λ κ°λ , λ€νΈμν¬μ κ΄λ ¨λ κΈ°μ΄ μ§μμ΄ λμμ΄ λ©λλ€.