AWS Cloud

AWS ECS - 탄력적 컨테이너 서비스

애드팍 2025. 3. 14. 12:07
728x90

AWS ECS (Elastic Container Service)란?

AWS ECS는 Docker 컨테이너를 실행하고 관리하는 서비스예요.
즉, 컨테이너 기반 애플리케이션을 AWS에서 쉽게 배포, 운영, 확장할 수 있도록 도와줍니다.


🔹 ECS의 핵심 개념

  1. 클러스터(Cluster)
    • 컨테이너를 실행하는 물리적(EC2) 또는 가상(Fargate) 서버들의 집합
  2. 태스크(Task)
    • 실행할 컨테이너 정의(이미지, CPU, 메모리 등)
    • 여러 개의 컨테이너를 한 번에 실행할 수도 있음
  3. 태스크 정의(Task Definition)
    • 어떤 컨테이너를 몇 개 실행할지, 어떤 네트워크를 사용할지 등을 정의하는 설정 파일
  4. 서비스(Service)
    • 태스크가 항상 원하는 개수만큼 실행되도록 관리
    • 자동 복구, 로드 밸런서 연결 가능

🔥 ECS 실행 방식 (EC2 vs Fargate 비교)

실행 방식설명특징
ECS on EC2 EC2 인스턴스에서 컨테이너 실행 직접 EC2 관리 필요, 유연한 설정 가능
ECS on Fargate AWS가 서버를 자동으로 관리 서버 관리 필요 없음, 간단한 운영

🎯 ECS의 장점

완전 관리형 서비스 → AWS가 컨테이너 실행을 관리
EC2 & Fargate 지원 → 직접 서버 운영할지(Fargate) 선택 가능
AWS 서비스와 연동 가능 → ALB, IAM, CloudWatch 등과 쉽게 통합
자동 확장(Auto Scaling) 지원 → 트래픽에 따라 컨테이너 개수 조정


🚀 ECS 사용 예시

  • 마이크로서비스 아키텍처 구축
  • 웹 애플리케이션을 컨테이너로 배포
  • 배치 작업 처리 (예: 데이터 처리, 영상 변환)
  • 게임 서버 컨테이너화하여 실행
728x90