AWS

AWS - ECS (Elastic Container Service)

윤승 2025. 4. 1. 21:37

🚀 ECS (Elastic Container Service)  개념

  • ECS는 AWS에서 컨테이너를 실행하고 관리할 수 있는 서비스로, EC2 인스턴스에서 컨테이너를 구동하는 방식이다.

인프라 관리:

  • ECS는 EC2 인스턴스를 프로비저닝해야 하고 인프라를 유지 해야함.
  • 즉, 컨테이너를 실행하려면 EC2 인스턴스를 사전에 먼저 만들고, 이를 관리해야 한다.

 서비스:

  • ECS 서비스는 도커 컨테이너의 실행을 관리한다. 새로 생성된 컨테이너가 어디서 실행될지 결정한다
  • 애플리케이션 로드 밸런서(ALB)와 통합하여 웹 애플리케이션을 배포할 때도 사용할 수 있다.
💡도커란?

도커는 애플리케이션 배포를 위한 소프트웨어 개발 플랫폼

과거에는 애플리케이션을 운영 체제에 직접 설치했지만, 도커를 사용하면 애플리케이션을 컨테이너에 패키징하여 호환성 문제 없이 어디서든 실행할 수 있게 된다

 

🚀 Fargate

 

  • Fargate는 ECS의 실행 방식 중 하나로, EC2 인스턴스를 직접 관리하지 않고 컨테이너를 실행할 수 있는 서버리스 서비스이다.

인프라 관리:

  • EC2 인스턴스를 관리할 필요 없음.
  • AWS가 자동으로 컨테이너에 필요한 CPU와 메모리 리소스를 할당하여 실행

특징:

  • 서버리스: 인프라를 신경 쓸 필요가 없고, AWS가 모든 것을 관리한다
  • 간편함: 컨테이너 실행에 필요한 프로비저닝할 인프라를 신경 쓰지 않고, 컨테이너만 정의하면 자동으로 실행된다.

 

🚀 ECR(Elastic Container Registry)

 

  • ECR은 Docker 이미지를 저장하고 관리할 수 있는 AWS의 사설 컨테이너 이미지 레지스트리이다.

사용 방법:

  • 도커 이미지를 ECR에 저장해두고, ECS나 Fargate에서 이를 참조하여 컨테이너를 실행한다.
  • ECR과 Fargate를 함께 사용할 때, Fargate는 ECR에서 이미지를 가져와서 컨테이너를 실행한다.

 

🚀 ECS vs Fargate vs ECR 비교

서비스 역할 EC2 필요 여부 특징
ECS 컨테이너 오케스트레이션 ✅ 필요 EC2에서 직접 컨테이너 관리
Fargate 서버리스 컨테이너 실행 ❌ 불필요 AWS가 리소스 자동 관리
ECR 컨테이너 이미지 저장소  ❌ 불필요 Docker 이미지 저장 및 배포

 


💡 핵심 요약

 

  • ECS는 컨테이너 관리 서비스로, EC2 인스턴스를 사용하여 컨테이너 실행.
  • Fargate는 EC2 없이 서버리스 방식으로 컨테이너 실행.
  • ECR은 AWS에서 컨테이너 이미지를 저장하는 사설 레지스트리.