Amazon ECS 개요

김지현·2025년 2월 28일
0
post-thumbnail

ECS

ECS(Amazon Elastic Container Service)는 AWS에서 제공하는 컨테이너 오케스트레이션 서비스이다. 컨테이너 기반 애플리케이션을 AWS 환경에서 쉽게 배포하고 관리할 수 있도록 도와준다. 쿠버네티스와 비슷한 역할을 하지만 보다 저렴하고 사용하기 쉬우며 AWS에 최적화된 관리형 서비스로 제공된다. 또한 서버리스로도 구성 가능하다.

주요 기능으로는 컨테이너 관리, 클러스터 관리, 로드 밸런싱, 자동 스케일링, IAM으로 권한 세분화 등이 있다.

실행 방식

ECS는 컨테이너 실행에 2가지 방식을 제공한다. 하나는 EC2 기반의 방식 또 다른 하나는 Fargate를 사용한 서버리스 방식이다.

  • EC2 : EC2 인스턴스에서 컨테이너를 실행하는 방식. 더 많은 제어가 가능하지만 인스턴스를 직접 관리해야한다.
  • Fargate : 서버 관리 없이 컨테이너만 실행하는 방식. AWS가 자동으로 인프라를 관리하며 클러스터 인스턴스도 필요하지 않다.

구성 요소

  • Task Definition : 컨테이너를 실행하기 위해 정의한 설정
  • Task : ECS에서 실제로 실행되는 도커 컨테이너
  • Service : 컨테이너를 실행, 유지 관리하는 역할, 테스트가 두 개 이상 모인 것
  • Cluster : 컨테이너를 실행할 수 있는 인프라 그룹 (EC2, Fargate)

워크플로우

초기 설정
1. 컨테이너 이미지 빌드 & 저장
2. 클러스터 인스턴스 생성 (EC2 방식일 경우)
3. Task Definition 생성
4. Service 생성

실행 과정
1. 컨테이너 레지스트리에 저장된 도커 이미지를 가져옴
2. ECS에서 이미지를 실행하여 컨테이너(task) 생성
3. ECS에서 서비스 및 클러스터 관리, 모니터링

ECR

ECR(Amazon Elastic Container Registry)은 Docker 컨테이너 이미지를 저장하고 관리하는 AWS의 컨테이너 레지스트리 서비스이다. 도커 허브와 비슷한 기능을 하지만 AWS 환경에 최적화되어 있다. 주요 기능으로는 컨테이너 이미지 저장 및 관리, CI/CD 연동, 보안 및 스캔 기능 등이 있다.

ECR 이미지 업로드 및 배포 과정
1. 도커 이미지 빌드
2. ECR 로그인
3. ECR에 이미지 태깅
4. ECR에 이미지 푸시
5. ECR에서 컨테이너 배포

CI/CD

ECS과 ECR을 활용하여 다음과 같은 과정으로 CI/CD 파이프라인을 구성 할 수 잇다.

  1. 코드 변경
  2. Docker 이미지 빌드
  3. ECR에 푸시
  4. ECS가 자동으로 새로운 이미지 배포
  5. 서비스 무중단 업데이트

0개의 댓글

관련 채용 정보