dokkabei97.log
로그인
dokkabei97.log
로그인
AWS ECS
Dokkabei97
·
2022년 8월 23일
팔로우
0
aws
ecs
0
AWS
목록 보기
1/3
ECS(Elastic Container Service)란?
AWS에서 제공하는 완전관리형 컨테이너 오케스트레이션 서비스다.
Docker 컨테이너를 이용하여 인프라 환경을 좀 더 편리하게 운영, 관리 할 수 있다.
ECS 구성 요소
Cluster
Service
Task definition
Task
Container Instance
Cluster
ECS의 가장 기본 단위로써 Cluster Task 또는 Service의 논리적 그룹이다.
기본적으로 컴퓨팅 자원을 포함하지 않으며(텅 빈 Cluster도 생성 가능), ECS에서 컨테이너를 실행시키기 위해서는 Container Instance가 Cluter에 포함되어야 한다.
Cluster는 Container Instance를 조작할 수 있는 권한을 가지고 있으며, CLuster에서 Service나 Task를 실행하면 조건을 만족하는 Container Instance를 찾아 해당 Instance에 컨테이너를 실행한다.
AWS Fargate(Serveriess)를 사용하면 Container Instance 없이 컨테이너를 실행할 수 있다.
Service
Service는 Task를 지속적으로 관리하는 단위이다.
Service는 Cluster 내에서 지정된 Task 수만큼 동시에 실행하고 관리할 수 있다.
또한 ELB와 연동하여 실행중인 Task를 찾아 자동으로 ELB에 등록 및 제거하는 Auto Scaling 역할도 담당한다.
Task Definition
Task Definition은 Task를 실행하기 위한 설정을 저장하고 있는 단위다.
Task Definition은 컨테이너 별로 실행하고자 하는 이미지를 지정할 수 있으며, CPU나 Memory와 같은 정보도 지정할 수 있고, 하나 혹은 둘 이상의 Task Definitio을 포함할 수 있다.
Task Definition은 Cluster에 종속되어있지 않다.
Task
Task는 ECS의 최소 실행 단위로 하나 이상의 컨테이너 묶음이다.
Task를 실행하는 방법에는 Task Definition으로 직접 Task를 실행하는 방법과 Service를 정의하는 방법이 있다.
Task Definition로 직접 실행된 Task의 경우 처음 한 번 실행된 이후 관리되지 않는다.
Task는 Cluster에 속한 Container Instance에 배포된다.
Container Instance
Task가 배포되는(실제 Docker 컨테이너가 실행되는) Cluster에 등록된 EC2 Instance를 Container Instance라고 한다.
ECS는 EC2 Instance에 ECS Container Agent를 설치하고 Cluster에 Container Instance로 등록할 수 있다.
하나의 Cluster에 여러 개의 Container Instance가 있을 수 있으며, 하나의 Container Instance안에서도 여러개의 Task가 있을 수 있다.
Dokkabei97
ESTJ 개발자 백엔드와 인프라에 집중하고 있습니다.
팔로우
다음 포스트
AWS EKS
0개의 댓글
댓글 작성