μ ν리μΌμ΄μ μ 볡μ‘μ±μ΄ μ¦κ°νκ³ μ ν리μΌμ΄μ κ°λ° κ°μνμ λν μκ΅¬κ° λμ΄λ μΈνλΌ, IT ν, νλ‘μΈμ€μ λν μκ΅¬κ° μ¦κ°νλ€. 컨ν μ΄λλ μ¬λ¬ νκ²½μμ λ¬Έμ λ₯Ό μννκ³ λ°λ³΅μ μΈ μμ μ κ°μννλλ‘ μ§μνλ€.
컨ν μ΄λλ?
컨ν μ΄λλ μ€νμ νμν λͺ¨λ νμΌμ ν¬ν¨ν μ 체 μ€ν(Runtime) νκ²½μμ μ ν리μΌμ΄μ μ ν¨ν€μ§νκ³ κ²©λ¦¬ν μ μλ κΈ°μ μ΄λ€. μ 체 κΈ°λ₯μ μ μ§νλ©΄μ 컨ν μ΄λνλ μ ν리μΌμ΄μ μ νκ²½(κ°λ°, ν μ€νΈ, νλ‘λμ νκ²½ λ±) κ°μ μ½κ² μ΄λν μ μλ€. 컨ν μ΄λλ IT 보μμ μ€μν λΆλΆμ΄κΈ°λ νλ€.
- 컨ν μ΄λ νμ΄νλΌμΈμ 보μμ ꡬμΆνκ³ μΈνλΌλ₯Ό 보νΈνμ¬ μ»¨ν μ΄λμ μμ μ±, νμ₯μ±, μ λ’°μ±μ 보μ₯ν μ μλ€.
- μΌκ΄λ νλκ³Ό κΈ°λ₯μΌλ‘ νΌλΈλ¦, νλΌμ΄λΉ, νμ΄λΈλ¦¬λ ν΄λΌμ°λ νκ²½κ³Ό λ°μ΄ν°μΌν° κ°μ 컨ν μ΄λνλ μ ν리μΌμ΄μ μ μμ½κ² μ΄λν μ μλ€.
컨ν μ΄λμ μ₯μ
- 컨ν
μ΄λλ₯Ό νμ©νλ©΄ λ΄λΉ μμμ λΆλ¦¬νμ¬ κ°λ° νκ³Ό μ΄μ ν κ°μ μΆ©λμ μ€μΌ μ μλ€.
→ κ°λ°μλ μ ν리μΌμ΄μ μ μ§μ€ν μ μκ³ , μ΄μ νμ μΈνλΌμ μ£Όλ ₯ν μ μλ€. - 컨ν
μ΄λλ μ€νμμ€ κΈ°μ μ κΈ°λ°μΌλ‘ νκΈ° λλ¬Έμ μ΅μ κΈ°μ μ νμ©νμ¬ λ€μνκ³ μλ‘κ³ κ°λ ₯ν κΈ°μ μ νμ μ½κ² μ±νν μ μλ€.
→ 컨ν μ΄λ κΈ°μ (Podman, Skopeo, Buildah, CRI-O, μΏ λ²λ€ν°μ€, Docker λ±)μ μ ν리μΌμ΄μ κ°λ°κ³Ό λ°°ν¬λ₯Ό κ°μννκ³ κ°μννκ³ μ€μΌμ€νΈλ μ΄μ νλ λ° λμμ΄ λλ€. - 컨ν μ΄λλ λμΌν μ΄μ 체μ 컀λμ 곡μ νκ³ μ ν리μΌμ΄μ νλ‘μΈμ€λ₯Ό μμ€ν μ λλ¨Έμ§ μμμΌλ‘λΆν° 격리νλ―λ‘ κ°λ°, ν μ€νΈ, νλ‘λμ ꡬμ±μμ μ 체λ₯Ό μ΄λνκ³ , μ΄κ³ , μ¬μ©ν μ μλ€.
- κ²½λνλκ³ μ΄μ κ°λ₯νκΈ° λλ¬Έμ λμ± μ μνκ² μ ν리μΌμ΄μ μ κ°λ°νκ³ λΉμ¦λμ€ μκ΅¬κ° λ°μν λ μ΄λ₯Ό μΆ©μ‘±ν μ μλ€.
컨ν μ΄λ μ€μΌμ€νΈλ μ΄μ
컨ν μ΄λλ₯Ό ν΅ν΄ κ°λ° νμ μ ν리μΌμ΄μ μ μ§μ€νκ³ μ΄μ νμ μΈνλΌμ μ§μ€ν μ μκ² λλλ°, 컨ν μ΄λ μ€μΌμ€νΈλ μ΄μ μ μ μ¬μ μΌλ‘ μ΄λ¬ν λ°°ν¬λ₯Ό κ΄λ¦¬ν μ μλ λ°©λ²μ΄λ€.
μΏ λ²λ€ν°μ€
μΏ λ²λ€ν°μ€λ Linux 컨ν μ΄λ μμ μ μλννλ μ€νμμ€ νλ«νΌμ΄λ€. μΏ λ²λ€ν°μ€μμλ 컨ν μ΄λνλ μ ν리μΌμ΄μ μ λ°°ν¬νκ³ νμ₯νλ λ° μλ νλ‘μΈμ€κ° νμνμ§ μμΌλ©°, μΏ λ²λ€ν°μ€λ₯Ό ν΅ν΄ 물리 μλ² λλ κ°μ λ¨Έμ μ ν΄λ¬μ€ν°μμ 컨ν μ΄λλ₯Ό μμ½νκ³ μ€νν μ μλ νλ«νΌμ μ 곡νλ©°, μΏ λ²λ€ν°μ€ μν€ν μ²λ μνΈ μ°κ³λ κ΅¬μ± μμλ‘ ν΄λ¬μ€ν°λ₯Ό λλμ΄ ν΄λ¬μ€ν°λ₯Ό μ μλ μνλ‘ μ μ§νλ€.
- Red Hat OpenShift 4 : μν°νλΌμ΄μ¦ λ λ μΏ λ²λ€ν°μ€ νλ«νΌμΌλ‘, κ°λ°μλ μ ν μλΉμ€ νκ²½μ ꡬμΆνμ¬ λͺ¨λ μΈνλΌμμ μλνλ ν μ€ν μ€νΌλ μ΄μ μ ꡬνν μ μλ€.
컨ν μ΄λ νμ©μ μ₯μ
컨ν μ΄λλ κ·λͺ¨μ κ΄κ³μμ΄ λ€μν μν¬λ‘λμ νμ© μ¬λ‘μ λ°°ν¬ν μ μλ€. 컨ν μ΄λλ ν΄λΌμ°λ λ€μ΄ν°λΈ κ°λ° λ°©μμ νμν κΈ°λ° κΈ°μ μ μ 곡νλ―λ‘, μ΄λ₯Ό ν΅ν΄ κ°λ°μλ DevOps, CI/CD(μ§μμ μΈ ν΅ν©/λ°°ν¬)λ₯Ό μμν μ μμΌλ©° μλ²λ¦¬μ€(Serverless)λ‘ μ νν μ μλ€.
- ν΄λΌμ°λ λ€μ΄ν°λΈ κ°λ° λ°©μ : ν΄λΌμ°λ μ»΄ν¨ν κΈ°λ²κ³Ό κΈ°μ μ κΈ°λ°μΌλ‘ μ ν리μΌμ΄μ μ ꡬμΆ, μ€ν, κ°μ νλ λ°©λ²
- DevOps : μ μν κ³ νμ§ μλΉμ€ μ 곡μ ν΅ν΄ λΉμ¦λμ€ κ°μΉλ₯Ό λμ΄κ³ λμ λ₯λ ₯μ κ°μ ν λͺ©μ μΌλ‘ κΈ°μ λ¬Έν, μλν, νλ«νΌ μ€κ³μ μ κ·Όνλ λ°©μ. λ κ±°μ μ ν리μΌμ΄μ κ³Ό μ΅μ ν΄λΌμ°λ λ€μ΄ν°λΈ μ ν리μΌμ΄μ λ° μΈνλΌλ₯Ό μ°κ²°νλ κ²
- Ci/CD : μ ν리μΌμ΄μ κ°λ° λ¨κ³λ₯Ό μλννμ¬ μ ν리μΌμ΄μ μ λμ± μ§§μ μ£ΌκΈ°λ‘ κ³ κ°μκ² μ 곡νλ λ°©λ².
- μλ²λ¦¬μ€ : κ°λ°μκ° μλ²λ₯Ό κ΄λ¦¬ν νμ μμ΄ μ ν리μΌμ΄μ μ λΉλνκ³ μ€νν μ μλλ‘ νλ ν΄λΌμ°λ λ€μ΄ν°λΈ κ°λ° λͺ¨λΈ. μλ²κ° μ‘΄μ¬νκΈ΄ νμ§λ§, μ ν리μΌμ΄μ κ°λ°μμμ λ¬λ¦¬ μΆμνλμ΄ μλ€. ν΄λΌμ°λ μ 곡μ μ²΄κ° μλ² μΈνλΌμ λν νλ‘λΉμ λ, μ μ§ κ΄λ¦¬, μ€μΌμΌλ§ λ±μ μΌμμ μΈ μμ μ μ²λ¦¬νλ©° κ°λ°μλ λ°°ν¬λ₯Ό μν΄ μ½λλ₯Ό 컨ν μ΄λμ ν¨ν€μ§νκΈ°λ§ νλ©΄ λλ€.
컨ν μ΄λ κΈ°λ° μ ν리μΌμ΄μ μ κ³ λλ‘ λΆμ°λ ν΄λΌμ°λ μν€ν μ² μ λ°μμ μλν μ μλ€. μ ν리μΌμ΄μ λ°νμ λ―Έλ€μ¨μ΄λ κ°λ°, λ°°ν¬, ν΅ν©, μλνλ₯Ό μν ν΅ν© νκ²½μ μ§μνλ ν΄μ μ 곡νλ€.
컨ν μ΄λ vs Docker
Dockerλ μ ν΅μ μΈ Linux 컨ν μ΄λμ λ€λ₯΄λ€. Docker κΈ°μ μ LXC κΈ°μ μ κΈ°λ°μΌλ‘ κ°λ°λμμ§λ§ μ΄νμλ μ΄λ¬ν μ’ μ κ΄κ³λ₯Ό λ²μ΄λ¬λ€(λλΆλΆμ μ¬λμ΄ "μ ν΅μ μΈ Linux 컨ν μ΄λ"μ μ°κ²° μ§μ΄ μκ°νμ§λ§ μλλ€.) LXCλ κ²½λμ κ°μν λ°©λ²μΌλ‘ μ μ©νμ§λ§ λ°μ΄λ κ°λ°μ λλ μ¬μ©μ νκ²½μ μ 곡νμ§λ λͺ»νλ€. Docker κΈ°μ μ 컨ν μ΄λλ₯Ό μ€ννλ κΈ°λ₯ μ΄μμ λ€μν κΈ°λ₯μ μ 곡νλ€. νΉν 컨ν μ΄λ μμ±κ³Ό ꡬμΆ, 컨ν μ΄λ μ΄λ―Έμ§ μ μ‘, μ΄λ―Έμ§ λ²μ κ΄λ¦¬ λ±μ νλ‘μΈμ€λ₯Ό μ©μ΄νκ² ν΄μ€λ€.
μ ν΅μ μΈ Linux 컨ν μ΄λλ μ¬λ¬ νλ‘μΈμ€λ₯Ό κ΄λ¦¬ν μ μλ init μμ€ν μ μ¬μ©νλ€. μ¦, μ 체 μ ν리μΌμ΄μ μ νλλ‘ μ€νν μ μλ€. Docker κΈ°μ μ μ ν리μΌμ΄μ μ κ°λ³ νλ‘μΈμ€λ‘ μΈλΆννλλ‘ κΆμ₯νκ³ μ΄λ₯Ό μν ν΄μ μ 곡νλ€. μ΄λ¬ν μΈλΆνλ μ κ·Ό λ°©μμλ λ€μν μ₯μ μ΄ μλ€.
- LXC : Linux 컀λ ν¬ν¨ κΈ°λ₯μ μν μ¬μ©μ κ³΅κ° μΈν°νμ΄μ€λ‘, κ°λ ₯ν APIμ κ°λ¨ν λꡬλ₯Ό ν΅ν΄ Linux μ¬μ©μλ μμ€ν λλ μμ©νλ‘κ·Έλ¨ μ»¨ν μ΄λλ₯΄ μ½κ² λ§λ€κ³ κ΄λ¦¬ν μ μλ€.