본문 바로가기
IT_Engineer/DevOps_Cloud

[AWS] AWS 기초 #2. AWS ECS와 Fargate: ECS와 EC2, Fargate의 관계

by 좋은데이피치 2024. 11. 27.
728x90

 

#1 이야기 -

AWS ECS(Amazon Elastic Container Service)는 EC2Fargate를 포함한 컨테이너 오케스트레이션 서비스지만,
ECS 자체는 EC2와 Fargate를 통합한 개념이 아닙니다.

대신 ECS는 컨테이너를 관리하는 프레임워크이며, 애플리케이션 실행 방식(Launch Type)에 따라
EC2Fargate를 선택적으로 사용할 수 있습니다.

이를 조금 더 구체적으로 설명하자면:


ECS와 EC2, Fargate의 관계

1. ECS (Elastic Container Service):

  • 컨테이너화된 애플리케이션의 배포, 관리, 확장을 담당하는 서비스입니다.
  • 애플리케이션을 실행하기 위한 환경은 두 가지 옵션 중 하나를 선택할 수 있습니다:
    • EC2 Launch Type
    • Fargate Launch Type

2. ECS + EC2 (EC2 Launch Type):

  • ECS는 컨테이너를 실행할 EC2 인스턴스를 사용합니다.
  • 사용자는 EC2 인스턴스를 직접 관리해야 하며, 클러스터의 크기와 용량도 조정해야 합니다.
  • 사용 사례: 특정 하드웨어 요구사항, 사용자 지정 네트워크 설정, 비용 최적화가 필요한 경우.

- 작동 방식:

  • 사용자가 EC2 인스턴스를 클러스터에 추가합니다.
  • ECS는 해당 인스턴스에서 컨테이너를 배포하고 실행합니다.

3. ECS + Fargate (Fargate Launch Type):

  • EC2 인스턴스를 관리하지 않고 AWS에서 제공하는 서버리스 환경에서 컨테이너를 실행합니다.
  • 인프라 설정, 리소스 프로비저닝, 스케일링은 모두 AWS에서 자동으로 처리합니다.
  • 사용 사례: 관리 부담을 줄이고, 간단하고 신속하게 컨테이너를 실행하고 싶은 경우.

- 작동 방식:

  • 사용자는 Fargate를 선택하여 태스크(Task)를 정의합니다.
  • AWS가 자동으로 필요한 리소스를 할당하고, 컨테이너를 실행합니다.

" ECS는 프레임워크, EC2와 Fargate는 실행 방식 "

  • ECS는 컨테이너를 관리하는 서비스로, EC2와 Fargate는 그 컨테이너를 실행할 인프라 옵션입니다.
  • EC2는 인프라를 사용자가 관리해야 하고, Fargate는 AWS가 자동으로 관리해주는 서버리스 옵션입니다.

쉽게 비유하자면:

  • ECS는 자동차의 내비게이션(컨테이너 관리)입니다.
  • EC2는 운전자가 직접 조작해야 하는 수동 기어 차량(인프라 관리 필요)입니다.
  • Fargate는 자율주행 자동차(인프라 관리 불필요)입니다.

ECS의 유연함

ECS는 EC2Fargate를 모두 지원하기 때문에,
사용자는 워크로드와 요구사항에 따라 가장 적합한 실행 방식을 선택할 수 있습니다.

  • 예: 초기 단계에서는 Fargate로 간단하게 시작하고, 비용 최적화가 필요하면 EC2로 전환.

이 점에서 ECS는 매우 강력하고 유연한 컨테이너 오케스트레이션 서비스입니다. 😊

728x90

최근댓글

최근글