Skip to content

Latest commit

 

History

History
47 lines (37 loc) · 2.2 KB

Container.md

File metadata and controls

47 lines (37 loc) · 2.2 KB

Container

리소스 격리 프로세스에서 애플리케이션 및 종속성을 실행할 수 있게 해주는 운영 체제 가상화의 한 방법.

Docker

OS 독립적으로 앱과 라이브러리/바이너리를 경량화해서 사용하는 것.
격리된 환경을 사용할 수 있게 해준다.
실제로는 OS를 공유하는 형태이다. 여러 리소스들은 Docker 내부에 기능을 사용해서 할당받아 사용한다.

왜 컨테이너인가?

개발자 입장에서 매우 편리하다.
이전에는 패키지로 만들어서 배포했다면, 이제는 이미지로 배포한다.
확장을 포함한 다양한 처리가 매우 편리해졌다.

ECS

Elastic Container Service
클러스터 관리, 유연한 스케줄링, 통합 및 확장, 보안, 규모에 따른 성능, 컨테이너 작업 정의 등.

Kubernetes

오픈소스 컨테이너 관리 및 오케스트레이션 툴.
대규모로 사용한다면 ECS보단 Kubernetes를 사용한다.
특정 클라우드 업체에 종속되지 않으려는 움직임으로 생태계가 매우 활발하다.

EKS

Elastic Container Service for Kubernetes
클러스터 프로비저닝, 작업자 노드 배포, 컨테이너 앱 실행 등.

ECR

Elastic Container Registry
개발자가 손쉽게 Docker 컨테이너 이미지를 저장, 관리, 배포할 수 있게 해주는 레지스트리.
EKS와 통합 가능하다.

Lambda

서버 프로비저닝이나 관리 없이 코드를 실행해준다.
코드를 업로드하면, 해당 코드를 다른 aws 서비스, http 엔드포인트, 모바일 앱 활동으로부터 트리거되도록 설정할 수 있다.
트리거가 발생할 때만 코드가 실행되며, 실행 시간동안 사용된 컴퓨팅 시간에 대해서만 비용을 지불한다.
완전 자동화된 관리.

처음 Lambda가 등장하게 된 계기

EC2 인스턴스 시작 및 중지를 구현하기 위해.

Lambda 제약 사항

호출 당 리소스 제한, 리전 별 계정 제한, 배포 제한 등

Cognito

모바일 앱, 웹앱에서 인증이나 권한을 관리한다.
IAM보다 쓰기 간편하게 만든 서비스이다.
회원 데이터베이스와 회원 관리도 가능하다.