본문 바로가기
  • 오늘도 한걸음. 수고많았어요.^^
  • 조금씩 꾸준히 오래 가자.ㅎ
IT기술/클라우드, VM, AWS

[AWS] 파게이트(AWS Fargate),

by 미노드 2023. 3. 27.

AWS 파게이트AWS의 매니지드 컨테이너 오케스트레이션 서비스인 ECS와 EKS를 기반으로 작동하는 서비스로, 도커 컨테이너를 EC2 인스턴스 없이 독립적으로 실행할 수 있게 해줍니다.

또한 EC2보다 컴퓨팅 성능을 더 세세하게 선택할 수 있으며, 태스크 단위에서 IAM 롤이나 네트워크 인터페이스를 부여하는 것도 가능합니다. 따라서 파게이트는 서버리스 서비스인 AWS 람다와 EC2 기반의 ECS 컨테이너의 중간 쯤에 위치한 서비스라고 할 수 있습니다.

EC2 인스턴스 없이 컨테이너를 관리하는 기능이다보니
서버리스 기술로서 사용되기도 합니다.

개발툴로 개발한 개발자들은 컨테이너 형식으로 배포 파일을 만든 뒤
Fargate에 올리면 배포가 완료되는 것입니다.

서버에 배포파일을 올리는 것과 크게 다르지 않으나, 올리는 과정이나 서버유지보수의 기능이 사라진 점에서 서버리스로 보고있습니다.

이런 식의 운영을 위해 서버리스 방법에 맞춘 개발 구성도 필요할 것으로 보이며(로깅이나 모니터링)
이 또한 AWS 도구를 통해 모니터링이 가능하다고 하니 공부할 내용이 많을 것 같습니다.

EC2 vs. Fargate

EC2는 워낙 유명하니 다들 잘 아실겁니다. 
쉽게 생각해서 가상머신(VM)이라고 봐도 무방합니다. 
즉, 독립된 환경이 있고 운영체제를 갖고 있는 컴퓨팅 리소스입니다. 

반면 Fargate는 가상머신보다 더 추상화된 컴퓨팅 환경입니다. 
서버 없이 코드를 실행하는 람다 Lambda 를 서버리스 Serverless 라고 부르는 것처럼
Fargate는 EC2의 서버리스 버전이라고 생각할 수 있겠습니다. 
서버가 없는 컴퓨팅 환경이 Fargate 입니다

한줄 요약 : 독립된 운영체제가 있으면 EC2, 서버리스 컴퓨팅 환경은 Fargate

Fargate는 "ECS(Elastic Container Service)", "EKS(Elastic Kubernetes Service)" 방식으로 구분됩니다. 

ECS, EKS vs. EC2, Fargate

ECS, EKS 를 하나로 묶고 EC2, Fargate를 하나로 묶을 수 있습니다. 
ECS는 Elastic Container Service로 Container 기반의 컴퓨팅 플랫폼이라 보면 되고 
EKS는 Elastic Kubernetes Service로 Container 기반이지만 k8s가 환경이라 보면 됩니다. 

이 두가지가 컨테이너에 대한 오케스트레이션을 담당한다고 보면
EC2, Fargate는 ECS, EKS가 동작하는 호스팅에 대한 레이어를 담당하는 제품들입니다. 
즉, EC2와 Fargate 위에 ECS, EKS가 동작한다고 이해하면 됩니다.

한줄 요약 : Fargate는 컨테이너를 위한 컴퓨팅 리소스이다 

ECS vs. EKS

그렇다면 ECS와 EKS는 어떤 차이가 있을까요?
둘다 컨테이너 오케스트레이션 환경이라는 공통점을 갖고 있지만 
ECS는 AWS 에서만 제공되는 오케스트레이션 환경이라 타플랫폼으로의 이식성이 떨어지지만
EKS는 쿠버네티스 환경이라 플랫폼간 이전이 더 용이합니다. 

한줄 요약 : ECS는 AWS Only, EKS는 범용 k8s

Pargate도 직접 실습해보는 기회를 만들면 좋을 것 같습니다.
서버리스를 지향하는 기업에겐 자주 사용될 것으로 보입니다.