하위 문제 풀이는 개인적 의견일 수 있습니다. AWS 공식 문서를 참조하는 것을 추천 드립니다.
[영문]
A company is running a traditional web application on Amazon EC2 instances. The company needs to refactor the application as microservices that run on containers. Separate versions of the application exist in two distinct environments: production and testing. Load for the application is variable, but the minimum load and the maximum load are known. A solutions architect needs to design the updated application with a serverless architecture that minimizes operational complexity.
Which solution will meet these requirements MOST cost-effectively?
- A. Upload the container images to AWS Lambda as functions. Configure a concurrency limit for the associated Lambda functions to handle the expected peak load. Configure two separate Lambda integrations within Amazon API Gateway: one for production and one for testing.
- B. Upload the container images to Amazon Elastic Container Registry (Amazon ECR). Configure two auto scaled Amazon Elastic Container Service (Amazon ECS) clusters with the Fargate launch type to handle the expected load. Deploy tasks from the ECR images. Configure two separate Application Load Balancers to direct traffic to the ECS clusters.
- C. Upload the container images to Amazon Elastic Container Registry (Amazon ECR). Configure two auto scaled Amazon Elastic Kubernetes Service (Amazon EKS) clusters with the Fargate launch type to handle the expected load. Deploy tasks from the ECR images. Configure two separate Application Load Balancers to direct traffic to the EKS clusters.
- D. Upload the container images to AWS Elastic Beanstalk. In Elastic Beanstalk, create separate environments and deployments for production and testing. Configure two separate Application Load Balancers to direct traffic to the Elastic Beanstalk deployments.
[한글] (번역기)
한 회사에서 Amazon EC2 인스턴스에서 기존 웹 애플리케이션을 실행하고 있습니다. 이 회사는 애플리케이션을 컨테이너에서 실행되는 마이크로서비스로 리팩터링해야 합니다. 애플리케이션의 별도 버전이 프로덕션 환경과 테스트 환경이라는 두 가지 다른 환경에 존재합니다. 애플리케이션의 부하는 가변적이지만 최소 부하와 최대 부하는 알려져 있습니다. 솔루션 설계자는 운영 복잡성을 최소화하는 서버리스 아키텍처로 업데이트된 애플리케이션을 설계해야 합니다.
이러한 요구 사항을 가장 비용 효율적으로 충족하는 솔루션은 무엇일까요?
A. 컨테이너 이미지를 함수로 AWS Lambda에 업로드합니다. 예상되는 최대 부하를 처리할 수 있도록 연결된 Lambda 함수에 대한 동시성 제한을 구성합니다. Amazon API Gateway 내에서 프로덕션용과 테스트용의 두 개의 별도 Lambda 통합을 구성합니다.
B. 컨테이너 이미지를 Amazon Elastic 컨테이너 레지스트리(Amazon ECR)에 업로드합니다. 예상되는 부하를 처리할 수 있도록 자동 확장된 두 개의 Amazon ECS(Amazon Elastic Container Service) 클러스터를 Fargate 실행 유형으로 구성합니다. ECR 이미지에서 작업을 배포합니다. 두 개의 별도 애플리케이션 로드 밸런서를 구성하여 트래픽을 ECS 클러스터로 보내도록 합니다.
C. 컨테이너 이미지를 Amazon Elastic 컨테이너 레지스트리(Amazon ECR)에 업로드합니다. 예상되는 부하를 처리할 수 있도록 자동 확장된 두 개의 Amazon EKS(Amazon Elastic Kubernetes Service) 클러스터를 Fargate 실행 유형으로 구성합니다. ECR 이미지에서 작업을 배포합니다. 트래픽을 EKS 클러스터로 보내도록 두 개의 별도 애플리케이션 로드 밸런서를 구성합니다.
D. 컨테이너 이미지를 AWS Elastic Beanstalk에 업로드합니다. Elastic Beanstalk에서 프로덕션과 테스트를 위한 별도의 환경과 배포를 생성합니다. 두 개의 별도 애플리케이션 로드 밸런서를 구성하여 트래픽을 Elastic Beanstalk 배포로 보내도록 합니다.
[풀이]
- 웹 애플리케이션 EC2 인스턴스를 컨테이너로 리팩터링, 애플리케이션의 별도 버전 프로덕션과 테스트 환경 존재, 애플리케이션의 Min Max 부하는 알려져 있음, 운영 복잡성을 최소화, 서버리스 아키텍쳐
- A의 경우 API GW 와 Lambda로 구성하게 되면 운영 복잡성이 늘고 Lambda의 동시성 제한 때문에 제약이 생기진 않을까 생각이 든다.
기본적으로 Lambda는 사용자 계정에 리전 내 모든 함수에 걸쳐 총 1,000개 한도의 동시성을 제공합니다
https://docs.aws.amazon.com/ko_kr/lambda/latest/dg/lambda-concurrency.html - B의 경우 ECR 이미지를 기반으로 ECS Fargate 컨테이너를 생성하고 해당 컨테이너는 ALB를 구성해서 트래픽을 전달한다. 제시된 해결책 중에서 가장 합리적인 방법인듯 하다.
- C의 경우 EKS 클러스터를 사용하게 되면 운영 복잡성이 늘어날 것이라 생각이 든다.
- D의 경우 EB는 EC2 머신을 이용해서 띄워지기 때문에 서버리스라고 보기 어렵다.
https://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/using-features.managing.ec2.html - 정답은 B
[출처] : https://www.examtopics.com/exams/amazon/aws-certified-solutions-architect-associate-saa-c03/view/
위 문제에 대한 저작권은 상위 출처 링크에 있으며 해당 게시글로 문제 시 댓글 부탁 드리며 삭제 조치 진행 하겠습니다.
'자격증 > AWS SAP' 카테고리의 다른 글
[SAP-C02][문제 풀이] #9 EC2 - ElastiCache - RDS 고 가용성 문제 (0) | 2023.10.25 |
---|---|
[SAP-C02][문제 풀이] #8 웹 애플리케이션 across region fail over (0) | 2023.10.25 |
[SAP-C02][문제 풀이] #6 S3 버킷 정책 및 IAM 정책 관련 문제 (0) | 2023.10.23 |
[SAP-C02][문제 풀이] #5 헤더 제거 및 서버리스 문제 (1) | 2023.10.23 |
[SAP-C02][문제 풀이] #4 3-Tier 아키텍쳐 마이그레이션 적절 솔루션 문제 (0) | 2023.10.17 |