Architecture

[Architecture] Cloud Native Architecture

Aslan0 2025. 9. 30. 22:39
반응형

클라우드 네이티브 아키텍처의 특징 

  • 확장 가능한 아키텍처
    • 시스템의 수평적 확장에 유연 (Scale up & out)
    • 확장된 서버에 시스템 부하를 분산, 가용성을 보장
    • 시스템이나, 서비스 애플리케이션 단위의 패키지(컨테이너 기반)
    • 모니터링
  • 탄력적 아키텍처
    • 서비스 생성-> 통합 -> 배포, 비즈니스 환경 변화에 따른 대응시간 단축
    • 분할 된 서비스 구조
    • Stateless 통신 프로토콜
    • 서비스의 추가와 삭제 자동으로 감지
    • 변경된 서비스 요청에 따라 사용자 요청 처리(동적 처리)
  • 장애 격리(Fault isolation)
    • 특정 서비스에 오류 발생시 다른 서비스에 영향을 주지 않음

 

핵심 요소

  • 마이크로 서비스
  • 컨테이너화
  • CI/CD
  • DevOps

CI/CD

  • 지속적인 통합 - CI(Continuous Integration)
    • 통합 서버, 리소스 관리(SVM), 빌드 도구, 테스트 도구
    • ex) Jenkins, Team CI, Travic CI
  • 지속적 배포 - CD
    • Continuous Delivery
    • Continuous Deployment
    • Pipe Line
  • 카나리 배포와 블루그린 배포
    • 카나리
      • 전체 사용자중 95%는 이전 버전 서비스를 사용하고 5%는 새 버전을 접속할 수 있도록 허가해주는 방법
    • 블루그린
      • 사용자하고 거의 동일한 새로운 버전을 점진적으로 만들어서 옮기는 방법

 

DevOps

  • 소프트웨어 개발(Development)과 IT 운영(Operations)을 결합하여, 개발과 운영 팀 간의 소통과 협업을 강화하고, 지속적인 통합(CI)과 지속적인 배포(CD)를 자동화하는 문화이자 방법론

DevOps

 

Container 가상화

  • 컨테이너 가상화는 운영 체제(OS) 수준에서 가상화하여 애플리케이션과 그 종속성을 하나의 독립적인 패키지(컨테이너)로 묶는 기술이다. 이 기술은 하이퍼바이저 방식의 가상화보다 훨씬 가벼워 빠르고 효율적이며, 필요한 모든 요소를 포함한 컨테이너는 어떤 환경에서도 일관되게 실행될 수 있다. 대표적인 컨테이너 기술로는 Docker가 있으며, Kubernetes와 같은 오케스트레이션 도구와 함께 사용되어 애플리케이션 배포 및 관리를 간소화 한다.

컨테이너 가상화

 

반응형