aws ecs 자동화

wangjh789·2022년 8월 27일
0

docker

목록 보기
21/25

이전에는 ec2 인스턴스를 이용해 리모트 머신에 도커를 설치하고 도커 허브에서 이미지를 가져와 호스팅을 진행했다.
하지만 이 플로우는 코드에 변경상황이 생기면 로컬 머신에서 도커허브에 다시 최신버전을 올리고, 그 최신버전을 리모트 머신에 받아 호스팅을 진행해야하는 단점이 있었다.

이를 해결 하기위해 ecs를 이용해 과정을 자동화 한다.
(ecs는 도커를 사용하지 않고 aws만의 툴을 사용한다.)

ecs = 클러스터, 컨테이너, 태스크, 서비스

컨테이너
docker run에서 설정하는 것을 여기서 설정한다.

태스크 : 애플리케이션의 블루프린트
aws에 컨테이너를 시작하는 방법을 알릴 수 있다.
하나 이상의 컨테이너를 실행하는 하나의 리모트 서버를 의미한다. (ec2인스턴스와 비슷하다.)
FARGATE 가 default인데 이는 서버리스 모드로 구동다는 의미이다. aws는 실제로 컨테이너를 실행하는 ec2인스턴스를 생성하지 않고, 대신 컨테이너와 그 실행설정을 저장한다. 컨테이너가 무언가 하도록 하는 요청이 왔을 때 컨테이너를 시작하고, 요청을 처리한 다음 다시 중지시켜 비용적으로 효율적으로 쓰인다.

서비스 : 구성된 애플리케이션과 그를 포함하는 컨테이너를 실행하는 방법(태스크)을 컨트롤한다.
모든 태스크가 서비스에 의해 실행되고, 보통 하나의 태스크당 하나의 컨트롤러가 할당된다.

클러스터 : 서비스가 실행되는 전체 네트워크이다.
하나의 클래서터에 여러 컨테이너를 묶어 논리적으로 속하게되고, 서로 통신할 수 있게 된다.

profile
기록

0개의 댓글