πŸƒ Cloud Native Application

@GrinΒ· January 13, 2025 Β· 1 min read

ν΄λΌμš°λ“œ ν™˜κ²½μ—μ„œ μ΅œμ ν™”λ˜μ–΄ λ™μž‘ν•˜λ„λ‘ μ„€κ³„λœ μ• ν”Œλ¦¬μΌ€μ΄μ…˜

  • μ»¨ν…Œμ΄λ„ˆ, λ§ˆμ΄ν¬λ‘œμ„œλΉ„μŠ€, CI/CD, DevOps, 동적 μ˜€μΌ€μŠ€νŠΈλ ˆμ΄μ…˜(Kubernetes) 등을 ν™œμš©ν•˜μ—¬ μœ μ—°μ„±κ³Ό ν™•μž₯성을 κ·ΉλŒ€ν™”ν•˜λŠ” 것이 νŠΉμ§•

νŠΉμ§•

1. 지속적인 톡합, CI (Continuous Integration)

  • 톡합 μ„œλ²„, μ†ŒμŠ€κ΄€λ¦¬ (SCM), λΉŒλ“œ 도ꡬ, ν…ŒμŠ€νŠΈ 도ꡬ
  • ex ) Jenkins, Team CI, Travis Ci

2. 지속적 배포, CD

  • Continuous Delivery

    • νŒ¨ν‚€μ§€ν™” 된 κ²°κ³Όλ¬Ό μ‹€ν–‰ ν™˜κ²½μ— μˆ˜λ™ 반영
  • Continuous Deplyment

    • μžλ™ 배포
  • Pipe line

3. μΉ΄λ‚˜λ¦¬ 배포와 블루그린 배포

  • μΉ΄λ‚˜λ¦¬ 배포(Canary Deployment)

    • μƒˆ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μ†Œμˆ˜μ—κ²Œ λ°°ν¬ν•œ ν›„ μ•ˆμ •μ„±μ΄ ν™•λ³΄λ˜λ©΄ μ μ§„μ μœΌλ‘œ λͺ¨λ“  μ‚¬μš©μžμ—κ²Œ 배포
  • 블루-κ·Έλ¦° 배포(Blue-Green Deployment)

    • 두 개의 ν™˜κ²½(Blue: κΈ°μ‘΄ 버전, Green: μƒˆλ‘œμš΄ 버전)을 λ™μ‹œμ— μš΄μ˜ν•˜μ—¬ μƒˆλ‘œμš΄ 버전이 μ€€λΉ„λ˜λ©΄ ν•œλ²ˆμ— λͺ¨λ“  νŠΈλž˜ν”½μ„ μ΄λ™μ‹œν‚€λŠ” 방식
    • rollback κ°€λŠ₯

4. DevOps

  • μ†Œν”„νŠΈμ›¨μ–΄ 개발(Development)κ³Ό 운영(Operations)을 ν†΅ν•©ν•˜λŠ” λ¬Έν™” 및 방법둠
  • μžλ™ν™”, ν˜‘μ—…, 지속적 톡합/배포(CI/CD)λ₯Ό 톡해 λΉ λ₯΄κ³  μ•ˆμ •μ μΈ μ†Œν”„νŠΈμ›¨μ–΄ 개발 및 μš΄μ˜μ„ λͺ©ν‘œ

5. Container 가상화

  • 운영체제(OS) μˆ˜μ€€μ—μ„œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ κ²©λ¦¬ν•˜κ³  μ‹€ν–‰ν•˜λŠ” 가상화 기술
  • ν•˜μ΄νΌλ°”μ΄μ € 기반 VM(Virtual Machine) 보닀 더 가볍고 λΉ λ₯΄λ©°, ν™•μž₯성이 뛰어남
@Grin
λ°±μ—”λ“œ 개발 λΈ”λ‘œκ·Έ