안녕하세요! 넥스트클라우드의 SA 백종훈입니다. 😊
문제는 세 가지 단계를 거치며 풀어 나갈 거예요.
1. 문제의 요구사항 분석하기
2. 관련 AWS 서비스 생각하기
3. 선택지 분석하기
바로 문제 풀이 해볼까요?
문제1
한 회사가 최근 AWS 계정의 Amazon EC2 인스턴스에서 다양한 새 워크로드를 시작했습니다. 회사는 인스턴스를 원격으로 안전하게 액세스하고 관리하기 위한 전략을 수립해야 합니다.
회 사는 기본 AWS 서비스와 함께 작동하고 AWS Well-Architected 프레임워크를 따르는 반복 가능한 프로세스를 구현해야 합니다. 최소한의 운영 오버헤드로 이러한 요구 사항을 충족하는 솔루션은 무엇입니까?
선택지
A. 관리를 위해 각 인스턴스의 터미널 인터페이스에 직접 액세스하려면 EC2 직렬 콘솔을 사용하십시오.
B. 각각의 기존 인스턴스와 새 인스턴스에 적절한 IAM 역할을 연결합니다. AWS Systems Manager Session Manager를 사용하여 원격 SSH 세션을 설정합니다.
C. 관리 SSH 키 쌍을 만듭니다. 퍼블릭 키를 각 EC2 인스턴스에 로드합니다. 퍼블릭 서브넷에 배스천 호스트를 배포하여 각 인스턴스 관리를 위한 터널을 제공합니다.
D. AWS Site-to-Site VPN 연결을 설정합니다. 관리자에게 로컬 온프레미스 시스템을 사용하여 VPN 터널에서 SSH 키를 사용하여 인스턴스에 직접 연결하도록 지시합니다.
풀이
회사는 EC2 인스턴스를 안전하게 원격 관리하고, 운영 오버헤드를 최소화하며, AWS Well-Architected 프레임워크를 따르는 반복 가능한 프로세스를 구현해야 합니다. AWS Systems Manager Session Manager는 이러한 요구사항을 충족하는 솔루션입니다. Session Manager를 사용하면 EC2 인스턴스에 대한 보안 SSH 액세스를 제공하고, 인스턴스와 세션 활동을 감사할 수 있어 운영 오버헤드를 줄일 수 있습니다. 또한 IAM 역할을 활용하여 권한을 적절하게 관리할 수 있어 보안 모범 사례를 따릅니다.
정답 : B
▼ 자세한 문제 풀이를 원하신 분은 아래 더보기를 통해 확인해 주세요.
1. 문제의 요구사항 분석하기
- EC2 인스턴스를 원격으로 안전하게 액세스 및 관리
- AWS 기본 서비스와 통합
- AWS Well-Architected 프레임워크 준수
- 최소한의 운영 오버헤드
2. 관련 AWS 서비스 생각하기
- AWS Systems Manager Session Manager: EC2 인스턴스에 대한 보안 원격 액세스를 제공하고, IAM 역할과 통합되어 세션 활동을 감사 및 제어할 수 있습니다. 운영 오버헤드를 최소화하고 보안 모범 사례를 따르는 데 도움이 됩니다.
- AWS Identity and Access Management (IAM): 사용자와 리소스에 대한 액세스를 안전하게 제어할 수 있는 AWS 서비스입니다. IAM 역할을 통해 EC2 인스턴스에 대한 액세스 권한을 부여할 수 있습니다.
- AWS Well-Architected 프레임워크: AWS에서 제공하는 클라우드 아키텍처 모범 사례로, 보안, 안정성, 효율성, 비용 최적화, 운영 우수성 등의 영역을 다룹니다.
3. 선택지 분석하기
A. 관리를 위해 각 인스턴스의 터미널 인터페이스에 직접 액세스하려면 EC2 직렬 콘솔을 사용하십시오.
→ EC2 직렬 콘솔은 인스턴스에 직접 연결되므로 원격 액세스에 적합하지 않습니다. 또한 운영 오버헤드가 증가할 수 있습니다.
B. 각각의 기존 인스턴스와 새 인스턴스에 적절한 IAM 역할을 연결합니다. AWS Systems Manager Session Manager를 사용하여 원격 SSH 세션을 설정합니다.
→ Session Manager는 IAM 역할과 통합되어 보안 원격 액세스를 제공하고, 세션 활동을 감사할 수 있어 운영 오버헤드를 줄입니다. AWS Well-Architected 프레임워크에 부합하는 모범 사례를 따릅니다.
C. 관리 SSH 키 쌍을 만듭니다. 퍼블릭 키를 각 EC2 인스턴스에 로드합니다. 퍼블릭 서브넷에 배스천 호스트를 배포하여 각 인스턴스 관리를 위한 터널을 제공합니다.
→ SSH 키 페어와 배스천 호스트를 사용하는 방식은 운영 오버헤드가 증가하고 유지 관리가 복잡해질 수 있습니다.
D. AWS Site-to-Site VPN 연결을 설정합니다. 관리자에게 로컬 온프레미스 시스템을 사용하여 VPN 터널에서 SSH 키를 사용하여 인스턴스에 직접 연결하도록 지시합니다.
→ VPN 연결을 설정하고 온프레미스 시스템을 사용하는 방식은 운영 오버헤드가 증가하며, 보안 및 감사 기능도 제한적입니다.
이어서 다음 문제입니다.
문제2
한 회사에서 사용자가 사진을 업로드하고 이미지에 사진 프레임을 추가할 수 있는 이미지 분석 애플리케이션을 만들었습니다. 사용자는 이미지에 추가할 사진 프레임을 나타내기 위해 이미지와 메타데이터를 업로드합니다.
애플리케이션은 단일 Amazon EC2 인스턴스와 Amazon DynamoDB를 사용하여 메타데이터를 저장합니다.
응용 프로그램이 점점 대중화되고 사용자 수가 증가하고 있습니다.
회사는 시간대와 요일에 따라 동시접속자 수가 크게 달라질 것으로 예상하고 있다.
회사는 애플리케이션이 증가하는 사용자 기반의 요구 사항을 충족하도록 확장할 수 있는지 확인해야 합니다.
이러한 요구 사항을 충족하는 솔루션은 무엇입니까?
선택지
A. AWS Lambda를 사용하여 사진을 처리하십시오. 사진과 메타데이터를 DynamoDB에 저장합니다.
B. Amazon Kinesis Data Firehose를 사용하여 사진을 처리하고 사진과 메타데이터를 저장합니다.
C. AWS Lambda를 사용하여 사진을 처리합니다. 사진을 Amazon S3에 저장합니다. 메타데이터를 저장하기 위해 DynamoDB를 보관합니다.
D. EC2 인스턴스 수를 3개로 늘립니다. 프로비저닝된 IOPS SSD(io2) Amazon Elastic Block
풀이
이미지 처리 애플리케이션의 경우, S3와 DynamoDB를 사용하는 것이 적절합니다. 사용자가 업로드한 이미지는 S3에 저장되고, 메타데이터는 DynamoDB에 저장됩니다. AWS Lambda를 사용하여 이미지 처리 작업을 수행할 수 있습니다. Lambda는 이벤트 기반으로 실행되며 자동으로 확장되어 사용자 증가에 대응할 수 있습니다. 또한 유휴 시간에는 비용이 발생하지 않아 비용 효율적입니다. S3와 DynamoDB 역시 자동으로 확장되며, 트래픽 패턴 변화에 유연하게 대응할 수 있습니다.
정답 : C
▼ 자세한 문제 풀이를 원하신 분은 아래 더보기를 통해 확인해 주세요.
1. 문제의 요구사항 분석하기
- 이미지 분석 애플리케이션에서 사용자가 사진 업로드 및 프레임 추가
- 사용자 수 증가로 인한 확장성 요구
- 시간대와 요일에 따른 트래픽 변화에 대응
2. 관련 AWS 서비스 생각하기
- AWS Lambda: 서버리스 컴퓨팅 서비스로, 이벤트 기반으로 실행되며 자동으로 확장됩니다. 이미지 처리 작업에 적합합니다.
- Amazon S3: 객체 스토리지 서비스로, 이미지를 안전하게 저장할 수 있습니다. 자동 확장 기능을 지원합니다.
- Amazon DynamoDB: 완전관리형 NoSQL 데이터베이스 서비스로, 메타데이터 저장에 적합합니다. 자동 확장 기능을 지원합니다.
- Amazon EC2: 가상 서버 서비스로, 애플리케이션을 실행할 수 있지만 수동 확장이 필요하여 확장성에 제한이 있습니다. Amazon Kinesis Data Firehose: 데이터 스트리밍 서비스로, 이미지 처리 작업에는 적합하지 않습니다.
3. 선택지 분석하기
A. AWS Lambda를 사용하여 사진을 처리하십시오. 사진과 메타데이터를 DynamoDB에 저장합니다.
→ Lambda는 이미지 처리에 적합하지만, 대용량 이미지를 DynamoDB에 저장하는 것은 비효율적입니다.
B. Amazon Kinesis Data Firehose를 사용하여 사진을 처리하고 사진과 메타데이터를 저장합니다.
→ Kinesis Data Firehose는 데이터 스트리밍 서비스로, 이미지 처리 작업에는 적합하지 않습니다.
C. AWS Lambda를 사용하여 사진을 처리합니다. 사진을 Amazon S3에 저장합니다. 메타데이터를 저장하기 위해 DynamoDB를 보관합니다.
→ Lambda를 통한 이미지 처리, S3를 통한 이미지 저장, DynamoDB를 통한 메타데이터 저장은 확장성과 비용 효율성 측면에서 최적의 솔루션입니다.
D. EC2 인스턴스 수를 3개로 늘립니다. 프로비저닝된 IOPS SSD(io2) Amazon Elastic Block Store(Amazon EBS) 볼륨을 사용하여 사진과 메타데이터를 저장합니다.
→ EC2 인스턴스 수를 수동으로 늘리는 방식은 확장성에 제한이 있으며, EBS 볼륨은 대용량 이미지 저장에 적합하지 않습니다.
마지막 문제 살펴볼게요.
문제3
회사에서 애플리케이션을 설계하고 있습니다. 애플리케이션은 AWS Lambda 함수를 사용하여 Amazon API Gateway를 통해 정보를 수신하고 Amazon Aurora PostgreSQL 데이터 베이스에 정보를 저장합니다.
개념 증명 단계에서 회사는 데이터베이스에 로드해야 하는 대량의 데이터를 처리하기 위해 Lambda 할당량을 크게 늘려야 합니다.
솔루션 설계자는 확장성을 개선하고 구성 노력을 최소화하 기 위해 새로운 설계를 권장해야 합니다. 이러한 요구 사항을 충족하는 솔루션은 무엇입니까?
선택지
A. Lambda 함수 코드를 Amazon EC2 인스턴스에서 실행되는 Apache Tomcat 코드로 리팩터링합니다. 원시 JDBC(Java Database Connectivity) 드라이버를 사용하여 데이터 베이스를 연결하십시오.
B. Aurora에서 DynamoDB Accelerator(DAX) 클러스터를 Amazon DynamoDProvision으로 플랫폼을 변경합니다. DAX 클라이언트 SDK를 사용하여 DAX 클러스터에서 기존 DynamoDB API 호출을 가리킵니다.
C. 두 개의 Lambda 함수를 설정합니다. 정보를 수신하도록 하나의 기능을 구성합니다. 데이터베이스에 정보를 로드하도록 다른 기능을 구성하십시오. Amazon Simple Notification Service(Amazon SNS)를 사용하여 Lambda 함수를 통합합니다.
D. 두 개의 Lambda 함수를 설정합니다. 정보를 수신하도록 하나의 기능을 구성합니다. 데이터베이스에 정보를 로드하도록 다른 기능을 구성하십시오. Amazon Simple Queue Service (Amazon SQS) 대기열을 사용하여 Lambda 함수를 통합합니다.
풀이
API Gateway와 Lambda를 사용하여 대량의 데이터를 처리할 때, Lambda 함수의 동시성 제한으로 인해 병목 현상이 발생할 수 있습니다. 이를 해결하기 위해 Lambda 함수를 두 개로 분리하고, SQS 대기열을 사용하여 함수 간 통합을 구현하는 것이 적절합니다. 첫 번째 Lambda 함수는 API Gateway에서 정보를 수신하고 SQS 대기열에 추가합니다. 두 번째 Lambda 함수는 SQS 대기열에서 정보를 읽고 Aurora 데이터베이스에 저장합니다. SQS 대기열은 버퍼 역할을 하여 대량 데이터를 안정적으로 처리할 수 있습니다. 이를 통해 확장성이 개선되고 구성 노력도 최소화할 수 있습니다.
정답 : D
▼ 자세한 문제 풀이를 원하신 분은 아래 더보기를 통해 확인해 주세요.
1. 문제의 요구사항 분석하기
- 대량의 데이터를 Aurora 데이터베이스에 로드해야 함
- Lambda 할당량 증가로 인한 확장성 개선 필요
- 구성 노력 최소화
2. 관련 AWS 서비스 생각하기
- AWS Lambda: 서버리스 컴퓨팅 서비스로, API Gateway와 연동하여 데이터 처리가 가능합니다. 동시성 제한이 있어 대량 데이터 처리 시 병목 현상이 발생할 수 있습니다.
- Amazon API Gateway: RESTful API를 생성, 게시, 유지 관리할 수 있는 완전관리형 서비스입니다.
- Amazon Aurora: 완전관리형 관계형 데이터베이스 서비스로, PostgreSQL 호환 클러스터를 제공합니다.
- Amazon Simple Queue Service (SQS): 분산 애플리케이션 간 메시지 대기열 서비스로, 버퍼 역할을 하여 대량 데이터를 안정적으로 처리할 수 있습니다.
- Amazon Simple Notification Service (SNS): 애플리케이션 통신을 위한 완전관리형 메시징 서비스입니다.
3. 선택지 분석하기
A. Lambda 함수 코드를 Amazon EC2 인스턴스에서 실행되는 Apache Tomcat 코드로 리팩터링합니다. 원시 JDBC(Java Dat
abase Connectivity) 드라이버를 사용하여 데이터베이스를 연결하십시오.
→ EC2 인스턴스와 Tomcat 사용은 서버 관리 오버헤드가 증가하며, 확장성도 제한적입니다. 요구사항을 충족하지 못합니다.
B. Aurora에서 DynamoDB Accelerator(DAX) 클러스터를 Amazon DynamoDProvision으로 플랫폼을 변경합니다. DAX 클라이언트 SDK를 사용하여 DAX 클러스터에서 기존 DynamoDB API 호출을 가리킵니다.
→ DynamoDB와 DAX는 문제에서 언급된 Aurora 데이터베이스와 관련이 없습니다. 요구사항을 충족하지 못합니다.
C. 두 개의 Lambda 함수를 설정합니다. 정보를 수신하도록 하나의 기능을 구성합니다. 데이터베이스에 정보를 로드하도록 다른 기능을 구성하십시오. Amazon Simple Notification Service(Amazon SNS)를 사용하여 Lambda 함수를 통합합니다.
→ SNS는 메시지 전달에 적합하지만, 대량 데이터 처리에는 SQS가 더 적합합니다. 요구사항을 완전히 충족하지 못합니다.
D. 두 개의 Lambda 함수를 설정합니다. 정보를 수신하도록 하나의 기능을 구성합니다. 데이터베이스에 정보를 로드하도록 다른 기능을 구성하십시오. Amazon Simple Queue Service (Amazon SQS) 대기열을 사용하여 Lambda 함수를 통합합니다.
→ Lambda 함수 분리와 SQS 대기열 사용은 확장성을 개선하고 대량 데이터 처리를 안정적으로 할 수 있습니다. 또한 구성 노력도 최소화할 수 있어 요구사항을 모두 충족합니다.
감사합니다!
'AWS > SAA 준비' 카테고리의 다른 글
AWS SAA 합격으로 가는 길 #48 (0) | 2025.01.06 |
---|---|
AWS SAA 합격으로 가는 길 #47 (0) | 2025.01.03 |
AWS SAA 합격으로 가는 길 #45 (0) | 2024.12.27 |
AWS SAA 합격으로 가는 길 #44 (1) | 2024.12.22 |
AWS SAA 합격으로 가는 길 #43 (0) | 2024.12.16 |