본문 바로가기
AWS Associate: Solution Architect/AWS computing

Amazon Elastic Container Service (ECS). EKS랑 차이

by tovantablack 2021. 2. 24.
728x90
728x90

ECS: Docker 컨테이너를 지원하고 아마존 EC2 인스턴스의 관리형 클러스터에서 앱을 쉽게 실행할 수 있는 확장성이 뛰어난 고성능 컨테이너 관리(오케스트레이션) 서비스

- 자체 클러스터 관리 인프라 설치/운영/확장 불필요

- 걍 API 호출해서 다 가능

- 리소스 요구 사항 및 가용성 요구 사항에 따라 클러스터 전체에 컨테이너 배치 예약 가능

장점1) 컨테이너를 위한 서버리스 컴퓨팅인 AWS Fargate 사용하여 ECS 클러스터 실행가능

- 프로비저닝, 관리 필요x, 앱별로 리소스 지정 및 비용 지불 가능, 앱 격리로 보안 성능 향상

장점2) 아마존 내에서 다양한 서비스를 지원하는 데에 폭넓게 사용되어 보안, 안정성, 가용성에 대한 테스트 많이 함

장점3) 다른 서비스와의 통합을 통해 컨테이너 배포 및 확장을 위한 익숙한 환경 제공 가능

ECS랑 EKS 차이

EKS는 Kubernetes용 컨테이너 서비스임.

 

ECS의 런치 유형은 작업 및 서비스가 호스팅되는 인프라 유형을 결정하는데, EC2, Fargate 두 가지가 있는데

프라이빗 리포지토리는 EC2에서만 지원되고, Fargate는 ECR 혹은 Docker Hub에서 호스팅되는 컨테이너 이미지만 지원함. 대신 fargate는 작업 정의를 등록하기만 하면 fargate가 컨테이너 시작하고, ec2는 인스턴스 클러스터에서 컨테이너 앱을 실행한다. 

저 둘의 차이

ECS에서 도커 컨테이너를 실행하려면 테스크 정의가 필요한데, 이는 하나 이상, 최대 10개의 컨테이너를 설명하는 JSON 형식의 텍스트 파일이다. 

클러스터는 작업을 배치할 수 있는 컨테이너 인스턴스의 논리적 그룹으로, 기본 클러스터는 생성되고 리소스를 분리하기 위한 목적으로 여러 클러스터를 생성할 수 있다. 원하는 작업의 수를 정의할 수도 있다. 

클러스터에 다른 컨테이너 인스턴스 유형이 포함될 수 있으나 각 컨테이너 인스턴스는 한 번에 하나의 클러스터에만 속할 수 있다. 컨테이너 에이전트를 통해 컨테이너 인스턴스를 클러스터에 연결하는 형태고, 에이전트는 클러스터의 각 인프라 리소스에서 실행된다. 

오토 스케일링: 서비스 오토 스케일링, 클러스터 오토 스케일링 두 가지 있음. 

728x90
728x90

댓글