리소스 격리 프로세스에서 애플리케이션 및 종속성을 실행할 수 있게 해주는 운영 체제 가상화의 한 방법.
OS 독립적으로 앱과 라이브러리/바이너리를 경량화해서 사용하는 것.
격리된 환경을 사용할 수 있게 해준다.
실제로는 OS를 공유하는 형태이다. 여러 리소스들은 Docker 내부에 기능을 사용해서 할당받아 사용한다.
개발자 입장에서 매우 편리하다.
이전에는 패키지로 만들어서 배포했다면, 이제는 이미지로 배포한다.
확장을 포함한 다양한 처리가 매우 편리해졌다.
Elastic Container Service
클러스터 관리, 유연한 스케줄링, 통합 및 확장, 보안, 규모에 따른 성능, 컨테이너 작업 정의 등.
오픈소스 컨테이너 관리 및 오케스트레이션 툴.
대규모로 사용한다면 ECS보단 Kubernetes를 사용한다.
특정 클라우드 업체에 종속되지 않으려는 움직임으로 생태계가 매우 활발하다.
Elastic Container Service for Kubernetes
클러스터 프로비저닝, 작업자 노드 배포, 컨테이너 앱 실행 등.
Elastic Container Registry
개발자가 손쉽게 Docker 컨테이너 이미지를 저장, 관리, 배포할 수 있게 해주는 레지스트리.
EKS와 통합 가능하다.
서버 프로비저닝이나 관리 없이 코드를 실행해준다.
코드를 업로드하면, 해당 코드를 다른 aws 서비스, http 엔드포인트, 모바일 앱 활동으로부터 트리거되도록 설정할 수 있다.
트리거가 발생할 때만 코드가 실행되며, 실행 시간동안 사용된 컴퓨팅 시간에 대해서만 비용을 지불한다.
완전 자동화된 관리.
EC2 인스턴스 시작 및 중지를 구현하기 위해.
호출 당 리소스 제한, 리전 별 계정 제한, 배포 제한 등
모바일 앱, 웹앱에서 인증이나 권한을 관리한다.
IAM보다 쓰기 간편하게 만든 서비스이다.
회원 데이터베이스와 회원 관리도 가능하다.