섹션 9 - 섹션 9 - 수동 배포에서 관리형 서비스로 ~ 안정적인 도메인을 위해 로드 밸런서 사용하기

수동 배포 vs. 관리형 서비스

  • 수동 배포

    • 직접 관리할 수 있지만 그만큼 보안 등에 에대한 책임감도 필요

    • 또한 컨테이너를 생성, 관리, 업데이트하고 서버를 모니터링하고 관리해야 함

    • ex) AWS EC2

  • 관리형 서비스

    • 생성, 업데이트, 모니터링, 스케일링 모든 것이 단순해짐

    • 단순히 배포할 거라면 이 서비스를 활용하는 것이 편함

    • 도커를 사용하는 것이 아니라, 이 클라우드의 서비스를 사용하는 것 (컨테이너 배포 및 실행이 더 이상 도커 명령으로 실행되지 않는다는 의미)

    • ex) AWS ECS

AWS ECS

  • Amazon Elastic Container Service (프리티어 X)

  • Udemy 강의 내용에서 많이 업데이트됨

  • Task definition

    • 애플리케이션의 블루프린트

    • AWS에 컨테이너를 시작하는 방법을 알릴 수 있음

    • 'docker run'을 실행하는 방법이 아니라, 이를 실행하는 서버를 구성하는 방법

    • Task를 EC2와 비슷하다고 생각하면 됨, AWS에 컨테이너를 실행하는 방법과 컨테이너를 위한 환경을 알려주고 있음

    • FARGATE: 컨테이너를 시작하는 특정 방법으로 서버리스라고 부르는 모드에서 구동

    • AWS ECS는 EC2 인스턴스를 생성하지 않고 대신 컨테이너와 그 실행 설정을 저장함 (필요할 때만 서버를 구동)

    • 컨테이너의 작업 요청이 있을 때마다 컨테이너를 시작하고 요청을 처리한 후에 중지함 (비용 효율적)

      1. Create new revision 으로 같은 설정의 새로운 Task 생성

    • 새 Task에서 서비스를 사용하면 AWS ECS가 업데이트된 이미지를 자동으로 가져옴

      1. Update Service -> Force new Deployment

  • Service

    • 장기 실행되는 상태 비저장 애플리케이션

    • 모든 태스크가 서비스에 의해 실행된다

  • Cluster

    • 우리 서비스가 실행되는 전체 네트워크

Last updated