Container
• 컨테이너는 애플리케이션 구성라이브러리를 패키지로 묶어서 컨테이너 엔진위에서 실행하는 것
• OS환경이 바뀌어도 구동 가능하며 각각의 컨테이너가 독립적임
• 대표적인 플랫폼으로 Kubernates와 Docker가 있음
• 마이크로서비스를 배포하는데 주로 이용
• 마이크로서비스는 큰 서비스를 작은 서비스의 조합으로 운영하는 것
Amazon Elastic Container Service(ECS)
• Docker 컨테이너를 배포, 관리하는 컨테이너 오케스트레이션 서비스
Amazon Elastic Kubernetes Service(EKS)
• AWS에서 Kubernetes를 실행하는 서비스
• Kubernetes는 대규모 컨테이너 애플리케이션을 배포, 관리하는 데 사용하는 오픈 소스 컨테이너 오케스트레이션 시스템
AWS Fargate
• 서버리스 컨테이너 서비스
• 서버 프로비저닝, 패치 적용, 클러스터 용량 관리 또는 인프라 관리를 AWS에서 자동으로 수행
• Amazon Elastic Container Service(ECS) 및 Amazon Elastic Kubernetes Service(EKS)와 연동되는 서비스
• ECS와 EKS 모두 Fargate를 통해 프로비저닝된 컨테이너를 사용하여 자동으로 컨테이너 크기를 조정(Auto Scaling)하고 로드 밸런싱 가능
_
Amazon Elastic Container Registry(Amazon ECR)
• Docker 등의 컨테이너 이미지를 공유, 배포 등의 관리 서비스
• ECR에서 공유된 이미지를 사용하여 ECS, EKS에서 컨테이너 구성
Amazon Elastic Container Service(ECS)
• Docker 컨테이너를 지원하는 컨테이너 관리 서비스
• Amazon EC2 인스턴스의 관리형 클러스터에서 애플리케이션을 손쉽게 실행 가능
• ECS에서 애플리케이션 가용성을 유지 관리하고 애플리케이션 용량 요구 사항에 따라 컨테이너 규모를 확장하거나 축소
• CPU사용량, 메모리 사용량, 로드발란서 요청 수, EventBridge 이벤트, SQS Queue 와 결합하여 Auto Scaling 수행 가능
• Application Load Balancer 및 Network Load Balancer를 사용하여 트래픽 분산 가능
• ECS 시작 유형 (ECS Launch Type)
✓ Fargate 시작유형
➢ 서버리스 방식으로 Amazon ECS 워크로드를 호스팅. 사용자가 EC2 인스턴스를 관리할 필요 없음
✓ EC2 시작유형
➢ Amazon ECS 클러스터를 등록하고 사용자가 직접 관리하는 EC2 인스턴스에서 컨테이너화 된 애플리케이션을 실행
✓ ECS Anywhere
➢ Amazon ECS 클러스터에 등록하고 원격으로 관리하는 온프레미스 서버나 가상 머신(VM)에서 컨테이너화 된 애플리케이션을 실행
클러스터 생성 - autoscaling group (ec2)
인스턴스 런칭
이후 테스트 만들고 > 서비스 만들기!
ec2보안그룹생성
Amazon Elastic Kubernetes Service(EKS)
• AWS에서 Kubernetes를 실행하는 서비스
• Kubernetes는 컨테이너(Docker 등) 애플리케이션의 배포, 확장 및 관리를 자동화하기 위한 오픈 소스 시스템
• 배포 옵션
✓ Amazon EKS : 자체 Kubernetes 컨트롤 플레인 또는 노드를 설치, 운영 및 유지 관리할 필요 없이 AWS에서 관
리 하는 AWS 클라우드에 Kubernetes 클러스터를 배포하는 옵션
✓ Amazon EKS Anywhere : 온프레미스에서 Kubernetes 클러스터를 생성하고 운영할 수 있게 해주는 배포 옵션
노드 유형 (Node Types)
✓ EKS managed node groups
➢ EKS에서 자동으로 EKS 클러스터의 노드(Amazon EC2 인스턴스) 생성 및 관리
➢ 사용자가 보안 및 업데이트 등의 일부분을 설정 및 관리 가능
➢ 모든 관리형 노드는 Amazon EKS에서 관리하는 Amazon EC2 Auto Scaling 그룹의 일부로 프로비저닝됨
➢ 관리형 노드 그룹을 생성할 때 온디맨드 또는 스팟 용량 유형을 선택할 수 있음
✓ Self managed nodes
➢ 사용자가 직접 EKS 클러스터의 노드(Amazon EC2 인스턴스) 생성 및 관리
➢ 온디맨드 또는 스팟 용량 유형을 선택할 수 있음
✓ AWS Fargate
➢ 노드 관리를 AWS에서 담당
➢ AWS에서 EKS의 모든 환경을 자동으로 관리