Amazon ECS 기반 웹 앱 배포

시작 안내서

모듈 1: Amazon ECS 이해

이 모듈에서는 Amazon Elastic Container Service(ECS) 및 서비스 구성 요소에 대해 알아봅니다

소개

이 모듈에서는 Amazon ECS의 개념을 소개하는 데 중점을 둡니다. ECS의 구성 요소(클러스터, 작업 정의, 서비스), 오케스트레이션이 무엇인지 알아보고 컨테이너 실행에 사용할 컴퓨팅 유형을 선택하는 방법을 다룹니다. ECS에 이미 익숙하다면 모듈 2로 건너뛸 수 있습니다.

학습 내용

  • Amazon ECS란 무엇입니까?
  • ECS의 구성 요소란 무엇입니까?
  • 컨테이너 실행에 Amazon EC2 인스턴스 또는 Amazon Fargate 사용 사이의 차이점

 소요 시간

5분

 모듈 사전 요구 사항

  • 관리자 수준의 액세스 권한이 있는 AWS 계정**
  • 권장 브라우저: 최신 버전의 Chrome 또는 Firefox

[**]생성된 지 24시간이 지나지 않은 계정은 이 자습서를 완료하는 데 필요한 서비스에 액세스할 권한이 아직 없을 수 있습니다.

구현

Amazon ECS란 무엇입니까?

Amazon Elastic Container Service(또는 줄여서 ECS)는 컨테이너화된 애플리케이션의 손쉬운 배포, 관리 및 조정에 도움이 되는 완전관리형 컨테이너 오케스트레이션 서비스입니다. 나머지 AWS 플랫폼과 긴밀하게 통합되므로 Amazon ECS Anywhere를 통해 이제 클라우드와 고객의 인프라에서 컨테이너 워크로드를 안전하고 손쉽게 실행할 수 있습니다. 오케스트레이터는 컨테이너 배포, 컨테이너 상태 확인, 상태가 좋지 않은 노드 교체, 새 배포 처리를 통해 컨테이너의 수명 주기를 관리합니다.

ECS의 구성 요소란 무엇입니까?

ECS 클러스터는 클러스터에 배포된 모든 컨테이너를 그룹화하는 논리적 구조입니다. 클러스터에 드는 비용은 없으며 컨테이너를 실행하는 데 사용하는 컴퓨팅 및 기타 인프라에만 요금이 적용됩니다. 컨테이너를 시작하려면 컨테이너 이미지 위치, CPU 및 메모리 용량, 로그 구성 등과 같은 속성을 포함하는 작업 정의를 제공해야 합니다. 이는 컨테이너를 시작하지 않으며 컨테이너를 실행하는 데 필요한 모든 구성 요소만을 제공합니다. 컨테이너를 시작하려면 서비스를 정의해야 합니다. 서비스에서 원하는 컨테이너 개수(또는 컨테이너를 모든 인스턴스에서 실행해야 하는 경우, 모든 호스트에서 실행해야 하는 데몬)를 정의하면 ECS가 컨테이너의 오케스트레이션을 처리합니다. 서비스를 인터넷에 공개하려면 서비스에 요청을 전달하기 위해 Application Load Balancer를 설정해야 합니다. 최근 ECS는 여러 가용 영역(AZ)에 배포하도록 구성할 수 있으며 사용 가능한 가용 영역 수에 맞게 자동으로 밸런스를 유지하고 트래픽이 라우팅되도록 각 배포의 세부 정보로 로드 밸런서를 업데이트합니다. 

아래는 인프라가 모양을 나타낸 다이어그램입니다.

gsg-build-ecs-1

컴퓨팅 용량 계획 및 옵션

ECS는 EC2 호스트(가상 머신)에서 실행하거나 컨테이너용 서버리스 컴퓨팅 엔진인 Amazon Fargate를 사용하여 서비스를 실행하도록 예약할 수 있습니다. 컨테이너 실행 시 용량 계획을 고려해야 합니다. 예를 들어, 클러스터에 2개의 호스트가 사용 가능하고 각 512MB의 메모리를 지원하는 경우, 해당 클러스터는 총 1024MB의 메모리를 사용할 수 있다고 표시되지만 단일 호스트에 충분한 메모리가 없기 때문에 512MB 이상의 메모리가 필요한 새 컨테이너를 시작할 수 없습니다. 이는 용량 공급자가 클러스터를 자동으로 크기 조정하여 완화할 수 있습니다. 

또는 각 컨테이너에 대한 CPU 및 메모리 요구 사항을 지정할 수 있는 Fargate를 사용하여 필요한 컴퓨팅을 시작함으로써 컨테이너를 실행할 수 있습니다. Fargate 및 EC2 호스트의 주요 차이점은 Fargate 사용 시 호스트의 운영 체제를 설정, 관리 및 유지 관리할 필요가 없다는 점입니다. 또는 정확히 필요한 용량으로 시작하므로 용량 계획을 수행할 필요도 없습니다.

결론

이 모듈에서는 Amazon ECS가 무엇인지, 사용된 구성 요소 및 컨테이너를 실행할 수 있는 용량을 제공하기 위해 Amazon EC2 또는 Amazon Fargate 사용과 관련된 차이점에 대해 다루었습니다. 다음 모듈에서는 첫 ECS 클러스터를 생성합니다.

다음: 인프라 생성

내용이 마음에 드셨는지요.

피드백을 제공해 주셔서 감사합니다.
이 페이지가 도움이 되어 기쁩니다. 지속적인 개선에 도움이 되는 추가 세부 정보를 공유해 주시겠습니까?
닫기
피드백을 제공해 주셔서 감사합니다.
이 페이지가 도움이 되지 못해 죄송합니다. 지속적인 개선에 도움이 되는 추가 세부 정보를 공유해 주시겠습니까?
닫기