Amazon ECS/ECR

mjjin·2023년 10월 3일
0

Amazon ECS(Elastic Container Service)

  • 컨테이너화된 애플리케이션을 배포,관리,스케일링 할 수 있도록 도와주는
    완전 관리형 컨테이너 오케스트레이션 서비스

  • Amazon ECS 기반 애플리케이션들은 간단한 API 호출을 이용하여 컨테이너 애플리케이션 운영, 관리를 손쉽게 할 수 있고, 단일 컨테이너부터 수천 개의 컨테이너까지 복잡한 과정 없이 확장 가능

  • Serverless 방식으로 클라우드 인프라에서 애플리케이션을 호스팅하는 Fargate 방식

  • 직접적인 클러스터 관리(모든 리소스 관리)를 강화하기 위해 Amazon EC2 인스턴스를 서버로 구성한 Docker 기반 서비스 인프라를 호스팅하는 방식

ECS 구성 요소

  • ECS Cluster

    • 작업 or 서비스의 논리적 그룹으로 EC2기반 or Fargate 선택 구성
    • 작업을 배포하기 위한 인스턴스의 집합
  • Service

    • ECS cluster에서 지정된 수의 작업(task)를 동시에 실행, 관리하는 구성 요소
    • Kubernetes의 deployment, replicaSet과 동일 기능 수행
  • Task

    • 작업정의서에 정의된 설정으로 컨테이너 인스턴스에 배포됨
    • 하나 이상의 컨테이너를 실행하는 최소 단위
  • Task Definition

    • 애플리케이션 컨테이너의 명세서(JSON), 작업(task)를 실행하기 위한 명세 기술, docker run~과 유사
    • 시작 유형, 사용할 컨테이너 이미지, 노출 포트, 리소스 사용량, 볼륨 구성 등
  • ECR

    • AWS cloud의 컨테이너 이미지 저장소 (hub.docker.com과 같은 역할)
    • ECR에서 제공하는 image URI를 이용해 build된 image를 pull, push
  • ECS console

    • ECS cluster 관리도구로 모니터링 및 제어 수행 (쿠버네티스의 master node(control plane)와 동일)
    • 컨테이너 인스턴스(EC2)는 쿠버네티스의 worker node와 동일

ECR 구성 요소

  • Registry: Amazon ECR private registry는 각 AWS 계정 단위로 제공되며 registry에 하나 이상의 Repository를 생성하고 이 Repository에 생성한 image를 저장할 수 있다.

  • Repository: Amazon ECR Repository에는 Docker image, Open Container OCI 이미지 및 OCI 호환 Artifact가 포함

  • Repository policy: Docker image에 대한 Access control관리를 수행할 수 있다.

  • image: Repository에 컨테이너 이미지를 push / pull 할 수 있고, 개발 시스템에서 로컬로 이런 이미지를 사용할 수 있다.

  • 사용자 권한 토큰: Client는 ECR Registry에 AWS사용자 인증을 해야 Image를 push/pull 가능

  • 제공 기능

    • 수명 주기 정책
    • 이미지 취약점 점검 스캔 가능
    • 교차 리전 및 교차 계정 복제

EC2? Fargate?



0개의 댓글