컨테이너는 코드와 그에 필요한 모든 종속성을 패키징하여 응용 프로그램이 한 컴퓨팅 환경에서 빠르고 신뢰성 있게 다른 환경으로 실행되도록 하는 표준 소프트웨어 단위
Docker는 애플리케이션을 개발, 출시, 실행하는 데 사용하는 개방형 플랫폼입니다. Docker를 사용하면 인프라에서 애플리케이션을 분리하고 인프라를 관리형 애플리케이션처럼 취급할 수 있습니다. Docker는 코드를 더욱 빠르게 출시, 테스트, 배포하고 코드 작성과 실행 주기를 단축하는 데 도움이 됩니다. 이는 Docker의 커널 컨테이너화 기능을 애플리케이션 관리 및 배포를 지원하는 워크플로우 및 도구와 결합하기 때문입니다.
→ 즉, 컨테이너를 관리하기 위한 기술
: 완전 관리형 Docker 컨테이너 레지스트리
이미지 저장: 도커 이미지, Open Container Initiative(OCI) 이미지 및 OCI 호환 아티팩트를 리포지토리에 저장 가능**
정책 관리: 리포지토리 정책을 사용하면 리포지토리 및 리포지토리 내 콘텐츠에 대한 액세스를 제어
이미지 사용: Amazon ECS 태스크 정의 및 Amazon EKS 포드 사양에서 이미지 사용 가능
쿠버네티스는 컨테이너화된 워크로드와 서비스를 관리하기 위한 이식성이 있고, 확장가능한 컨테이너 오케스트레이션 서비스입니다. 쿠버네티스를 사용하면 선언적 구성과 자동화를 모두 용이하게 관리 가능합니다. 서비스 디스커버리, 자동복구, 롤링 업데이트등의 기능을 제공하여 애플리케이션의 운영을 효율적으로 관리할 수 있습니다.
→ 즉, 컨테이너로 이루어진 워크로드를 자동화하거나 관리하기 위한 기술
관리형 쿠버네티스 서비스
서비스 통합: Amazon EKS는 다른 AWS 서비스와 통합되어, 컨테이너화된 애플리케이션을 배포하고 관리하기 위한 포괄적인 플랫폼을 제공 가능
규모 조정: Amazon EKS는 CPU 또는 사용자 지정 지표를 기반으로 수평 Pod 자동 규모 조정, 그리고 전체 워크로드 수요를 기반으로 클러스터 자동 규모 조정 가능