ECS, EKS - Container

Container (Amazon ECS, EKS, Fragate)

애플리케이션 레벨에서 필요한 소스 코드, 라이브러리 등 모든 파일을 하나의 런타임 환경으로 패키징하는 기술

컨테이너(오케스트레이션) 서비스

  • 요즘 컨테이너가 Devops의 정석이라고 불려지는 추세

  • 컨테이너라 하더라도 그 안에서 다양하게 옵션을 선택할 수 있음

  • 컨테이너도 일종의 가상화 기술

    • 기존 가상화 기술이 OS를 가상화한다면 컨테이너는 어플리케이션 환경 그 자체를 가상화하는 기술

    • 가상화 -> 패키징

  • 컨테이너는 버츄얼머신 위에 올라간다.

circle-info

오케스트레이션이란 다양한 작업을 자동으로 조율해 시스템의 복잡성을 줄이고 효율성을 높이는 기술

Container Service

컨테이너가 많은 컴퓨팅 옵션으로 선택되면서, 사용자의 요구에 맞춰서 다양한 서비스 옵션들을 제공하고 있음

  • ECS (Elastic Container Service): AWS에서 자체 개발한 컨테이너 오케스트레이션 서비스 (오픈소스)

  • Copilot: 로컬 개발환경에서 ECS 기반으로 컨테이너화된 어플리케이션의 모델링, 릴리즈 등 전반적인 매니지먼트를 도와주는 CLI 도구

  • EKS (Elastic Kubernetes Service): 전세계적으로 많이 쓰이는 쿠버네티스 오크스트레이션 서비스를 관리형태로 제공하는 서비스

  • Fargate: 서버리스 컨테이너를 구현해서 컨테이너가 구동되는 호스트의 관리 오버헤드를 줄여서 사용자에게 추상화하여 제공

    • ECS, EKS에서 컴퓨팅 옵션으로 선택해서 사용할 수 있는 부분

  • AppRunner: 비교적 최신 서비스로, 컨테이너 서비스를 어플리케이션 코드 하나만 들고 배포해서 사용하는 서비스

  • ECR: 도커 허브처럼 컨테이너 이미지를 보관하는 레지스트리 서비스

Last updated