책너두 (도메인 주도 설계로 시작하는 마이크로서비스 개발) 45일차 (~383p)

요약

  • 10장. 애플리케이션 통합과 배포
    • 통합 및 배포 파이프라인 정의 (나머지 부분)
      • 지속적 배포
        • 쿠버네티스란?
        • 쿠버네티스 배포
    • GCP 배포 환경 구성
      • GCP 환경 설정

메모

10.1.2 지속적 배포

  • 지속적 배포: 애플리케이션을 클라우드 환경에 배포하는 과정
  • 일반적인 온프레미스 환경에서는 빌드를 통해 생성된 .war 파일을 웹 애플리케이션 서버(WAS)에 배포하는 것이 일반적임.
    • 하지만 클라우드 환경에서는 IaaS 서비스 모델을 사용하면 비슷한 방식으로 배포할 수 있지만, 컨테이너 기술이나 쿠버네티스를 사용하면 배포 과정이 크게 달라짐.
    • 클라우드 벤더에서 제공하는 PaaS 서비스를 이용하면, 쉽게 적용할 수 있음.

쿠버네티스란?

  • 쿠버네티스컨테이너 오케스트레이션 시스템으로, 2014년에 구글이 오픈소스로 공개했음.
    • 이는 대규모 컨테이너 시스템의 운영 경험과 다양한 사례들을 토대로 만들어진 시스템으로, 애플리케이션의 확장성과 장애 복구에 효과적이며, 기본적으로 무중단 배포를 지원하여 지속적인 배포가 가능함.
  • 쿠버네티스의 주요 구성 요소에는 오브젝트컨트롤러가 있음.
    • 파드(Pod)
      • 쿠버네티스에서 관리하는 배포 가능한 가장 작은 단위로, 하나 이상의 컨테이너를 담을 수 있음.
    • 서비스(Service)
      • 파드에서 실행 중인 애플리케이션을 네트워크 서비스로 노출하는 경우에 사용됨.
      • 서비스는 파드에 외부 요청을 전달하는 역할을 함.
    • 디플로이먼트(Deployment)레플리카셋(ReplicaSet)
      • 파드를 관리하는 컨트롤러.
      • 디플로이먼트는 직접적으로 파드를 관리하지 않고, 레플리카셋을 통해 관리하며, 레플리카셋은 지정된 파드 개수에 대한 가용성을 보장함.

쿠버네티스 배포

  • p379 참고

10.2 GCP 배포 환경 구성

  • 다양한 클라우드 서비스 제공자들 중에서는 AWS, Azure, GCP 등이 관리형 쿠버네티스 환경을 제공함.
    • 이번 챕터에서는 GCP (Google Cloud Platform)를 이용함.

10.2.1 GCP 환경 설정

  • p381 참고

댓글

Designed by JB FACTORY