안녕하세요! 넥스트클라우드의 SA 백종훈입니다. 😊
어렵다고 느껴진다면 한 번, 두 번, 세 번 도전해보세요!
문제는 세 가지 단계를 거치며 풀어 나갈 거예요.
문제는 세 가지 단계를 거치며 풀어 나갈 거예요.
1. 문제의 요구사항 분석하기
2. 관련 AWS 서비스 생각하기
3. 선택지 분석하기
바로 문제 풀이 해볼까요?
문제1
한 회사에서 역사적 사건의 이미지를 저장하는 웹사이트를 운영하고 있습니다. 웹사이트 사용자는 이미지 속 사건이 발생한 연도를 기준으로 이미지를 검색하고 볼 수 있는 기능이 필요합니다. 평균적으로 사용자는 각 이미지를 1년에 한두 번만 요청합니다. 회사는 이미지를 저장하고 사용자에게 전달할 수 있는 가용성이 뛰어난 솔루션을 원합니다. 이러한 요구 사항을 가장 비용 효율적으로 충족하는 솔루션은 무엇입니까?
선택지
A. Amazon Elastic Block Store(Amazon EBS)에 이미지를 저장합니다. Amazon EC2에서 실행되는 웹 서버를 사용하십시오.
B. Amazon Elastic File System(Amazon EFS)에 이미지를 저장합니다. Amazon EC2에서 실행되는 웹 서버를 사용하십시오.
C. Amazon S3 Standard에 이미지를 저장합니다. S3 Standard를 사용하면 정적 웹 사이트를 통해 이미지를 직접 전달할 수 있습니다.
D. Amazon S3 Standard-Infrequent Access(S3 Standard-IA)에 이미지를 저장합니다. S3 Standard-IA를 사용하면 정적 웹 사이트를 통해 이미지를 직접 전달할 수 있습니다.
풀이
Amazon S3는 객체 스토리지 서비스로 정적 웹사이트를 호스팅할 수 있으며, 다양한 스토리지 클래스를 제공하여 비용 효율적으로 데이터를 저장할 수 있습니다. S3 Standard-IA(Infrequent Access) 스토리지 클래스는 액세스 빈도가 낮은 데이터를 장기적으로 저장하는 데 적합하므로, 연간 액세스 빈도가 낮은 이미지 데이터를 S3 Standard-IA에 저장하고 정적 웹사이트를 통해 제공하는 것이 가장 비용 효율적인 솔루션입니다.
정답 : D
▼ 자세한 문제 풀이를 원하신 분은 아래 더보기를 통해 확인해 주세요.
1. 문제의 요구사항 분석하기
- 이미지 검색 및 제공을 위한 가용성 높은 솔루션 필요
- 액세스 빈도가 낮은 이미지 데이터 저장 (연 1-2회)
- 비용 효율성 중요
2. 관련 AWS 서비스 생각하기
- Amazon S3는 높은 내구성과 가용성을 가진 객체 저장 서비스입니다. S3 버킷에 정적 웹사이트를 구축하면 이미지를 직접 제공할 수 있습니다. S3는 다양한 스토리지 클래스를 제공합니다. 액세스 빈도가 낮은 데이터에는 비용 효율적인 S3 Standard-IA 클래스를 사용할 수 있습니다. S3 Standard-IA는 S3 Standard 클래스보다 저렴한 비용으로 데이터를 저장할 수 있지만, 데이터 액세스 시 비용이 발생합니다. 따라서 액세스 빈도가 낮은 이미지 데이터에 적합합니다.
- Amazon EBS는 EC2 인스턴스에 연결된 블록 수준 스토리지로, 이미지 저장 및 제공에는 적절하지 않습니다.
- Amazon EFS는 파일 시스템 인터페이스를 제공하는 파일 스토리지로, 주로 컴퓨팅 워크로드 간 파일 공유에 사용됩니다. 정적 웹 사이트 호스팅에는 적합하지 않습니다.
3. 선택지 분석하기
A. Amazon EBS에 이미지를 저장하고 EC2에서 웹 서버를 실행합니다.
→ EBS는 블록 스토리지로 이미지 저장 및 제공에 불리하며, EC2 웹 서버 운영 비용이 추가됩니다.
B. Amazon EFS에 이미지를 저장하고 EC2에서 웹 서버를 실행합니다.
→ EFS는 파일 스토리지로 정적 웹 사이트 호스팅에 부적절하며, 비용 효율성이 낮습니다.
C. Amazon S3 Standard에 이미지를 저장하고 정적 웹 사이트로 제공합니다.
→ S3 Standard는 액세스 빈도가 높은 데이터에 적합하므로 비용 효율적이지 않습니다.
D. Amazon S3 Standard-IA에 이미지를 저장하고 정적 웹 사이트로 제공합니다.
→ S3 Standard-IA는 액세스 빈도가 낮은 데이터에 최적화되어 있어 가장 비용 효율적입니다.
이어서 다음 문제입니다.
문제2
회사에는 Amazon S3 버킷에 수백만 개의 객체가 있는 서버리스 웹 사이트가 있습니다. 회사는 S3 버킷을 Amazon CloudFront 배포의 오리진으로 사용합니다. 회사는 개체가 로드되기 전에 S3 버킷에 암호화를 설정하지 않았습니다. 솔루션 설계자는 모든 기존 객체와 향후 S3 버킷에 추가되는 모든 객체에 대해 암호화를 활성화해야 합니다. 최소한의 노력으로 이러한 요구 사항을 충족하는 솔루션은 무엇입니까?
선택지
A. 새 S3 버킷을 생성합니다. 새 S3 버킷에 대한 기본 암호화 설정을 켭니다. 모든 기존 개체를 임시 로컬 저장소에 다운로드합니다. 새 S3 버킷에 객체를 업로드합니다.
B. S3 버킷의 기본 암호화 설정을 켭니다. S3 Inventory 기능을 사용하여 암호화되지 않은 객체를 나열하는 .csv 파일을 생성합니다. 복사 명령을 사용하여 해당 객체를 암호화하는 S3 배치 작업 작업을 실행합니다.
C. AWS Key Management Service(AWS KMS)를 사용하여 새 암호화 키를 생성합니다. AWS KMS 관리형 암호화 키(SSE-KMS)로 서버 측 암호화를 사용하도록 S3 버킷의 설정을 변경합니다. S3 버킷에 대한 버전 관리를 켭니다.
D. AWS Management Console에서 Amazon S3로 이동합니다. S3 버킷의 객체를 찾습니다. 암호화 필드를 기준으로 정렬합니다. 암호화되지 않은 각 개체를 선택합니다. 수정 버튼을 사용하여 S3 버킷의 모든 암호화되지 않은 객체에 기본 암호화 설정을 적용합니다.
풀이
S3 버킷의 기본 암호화 설정을 켜면 향후 버킷에 업로드되는 모든 객체가 자동으로 암호화됩니다. 그러나 기존 암호화되지 않은 객체는 여전히 암호화되지 않은 상태로 남게 됩니다. 이를 해결하기 위해서는 S3 Inventory 작업을 통해 암호화되지 않은 객체 목록을 .csv 파일로 추출한 다음, S3 배치 작업의 복사 명령을 사용하여 이 객체들을 새로운 암호화 설정으로 복사본을 생성할 수 있습니다. 이렇게 하면 기존 객체도 암호화될 수 있습니다.
정답 : B
▼ 자세한 문제 풀이를 원하신 분은 아래 더보기를 통해 확인해 주세요.
1. 문제의 요구사항 분석하기
- 기존 암호화되지 않은 객체 및 향후 객체에 대해 암호화 적용
- 최소한의 노력으로 요구사항 충족
- 수백만 개의 객체 처리 필요
2. 관련 AWS 서비스 생각하기
- Amazon S3는 고객 데이터를 안전하게 저장하고 전송할 수 있도록 다양한 암호화 옵션을 제공합니다. 버킷의 기본 암호화 설정을 통해 향후 업로드되는 모든 객체에 대해 암호화를 자동으로 적용할 수 있습니다. 그러나 기존 암호화되지 않은 객체에는 적용되지 않습니다.
- S3 Inventory는 버킷 내 객체 목록을 추출하고 필터링할 수 있는 유틸리티입니다. 암호화 여부를 기준으로 객체를 필터링하여 암호화되지 않은 객체 목록을 .csv 파일로 생성할 수 있습니다.
- S3 배치 작업은 대량의 기존 객체에 대해 지정된 작업을 일괄 실행할 수 있습니다. 복사 작업 시 새로운 암호화 설정을 적용하여 암호화된 복제본을 생성할 수 있습니다. 이를 통해 기존 암호화되지 않은 객체를 암호화할 수 있습니다.
3. 선택지 분석하기
A. 새 버킷을 생성하고 임시 스토리지에서 객체를 다운로드/업로드합니다.
→ 대량의 객체를 다운로드하고 업로드하는 것은 많은 노력과 시간이 필요하며, 로컬 저장 공간도 필요합니다.
B. 기존 버킷에 기본 암호화 설정을 켜고, S3 Inventory와 배치 작업으로 암호화되지 않은 객체를 복사하여 암호화합니다.
→ 최소한의 노력으로 모든 요구사항을 충족하는 가장 효율적인 방법입니다.
C. AWS KMS 암호화 키를 사용하여 서버 측 암호화를 구성합니다.
→ 기존 객체를 암호화하는 방법이 제시되지 않았으며, 버전 관리는 암호화와 직접 관련이 없습니다.
D. 콘솔에서 암호화되지 않은 객체를 찾아 수동으로 암호화합니다.
→ 수백만 개의 객체를 수동으로 처리하는 것은 현실적으로 불가능하고 많은 노력이 필요합니다.
마지막 문제 살펴볼게요.
문제3
회사에 이미지 공유를 위한 3계층 애플리케이션이 있습니다. 이 애플리케이션은 프런트 엔드 계층에 Amazon EC2 인스턴스를 사용하고, 애플리케이션 계층에 또 다른 EC2 인스턴스를 사용하고, MySQL 데이터베이스에 세 번째 EC2 인스턴스를 사용합니다. 솔루션 설계자는 응용 프로그램에 최소한의 변경만 필요한 확장 가능하고 가용성이 높은 솔루션을 설계해야 합니다. 어떤 솔루션이 이러한 요구 사항을 충족합니까?
선택지
A. Amazon S3를 사용하여 프런트 엔드 계층을 호스팅하십시오. 애플리케이션 계층에 AWS Lambda 함수를 사용합니다. 데이터베이스를 Amazon DynamoDB 테이블로 이동합니다. Amazon S3를 사용하여 사용자 이미지를 저장하고 제공합니다.
B. 프런트엔드 계층과 애플리케이션 계층에 로드 밸런싱된 다중 AZ AWS Elastic Beanstalk 환경을 사용합니다. 데이터베이스를 여러 읽기 전용 복제본이 있는 Amazon RDS DB 인스턴스로 이동하여 사용자 이미지를 제공합니다.
C. Amazon S3를 사용하여 프런트 엔드 계층을 호스팅합니다. 애플리케이션 계층에 대한 Auto Scaling 그룹의 EC2 인스턴스 플릿을 사용합니다. 데이터베이스를 메모리 최적화 인스턴스 유형으로 이동하여 사용자 이미지를 저장하고 제공합니다.
D. 프런트엔드 계층과 애플리케이션 계층에 로드 밸런싱된 다중 AZ AWS Elastic Beanstalk 환경을 사용합니다. 데이터베이스를 Amazon RDS 다중 AZ DB 인스턴스로 이동합니다. Amazon S3를 사용하여 사용자 이미지를 저장하고 제공합니다.
풀이
3계층 애플리케이션의 가용성과 확장성을 높이려면 프런트엔드와 애플리케이션 계층을 AWS Elastic Beanstalk의 로드 밸런싱된 다중 AZ 환경에서 실행하고, 데이터베이스를 다중 AZ Amazon RDS 인스턴스로 마이그레이션하며, 사용자 이미지는 Amazon S3에 저장하는 것이 적절합니다. Elastic Beanstalk는 애플리케이션 배포와 관리를 자동화하고 부하 분산, 자동 복구, 모니터링 등의 기능을 제공하며, 다중 AZ 배포로 가용성을 높일 수 있습니다. 다중 AZ RDS는 데이터베이스 가용성을 높이고, S3는 이미지 저장 및 제공에 최적화된 고가용성 객체 스토리지입니다.
정답 : D
▼ 자세한 문제 풀이를 원하신 분은 아래 더보기를 통해 확인해 주세요.
1. 문제의 요구사항 분석하기
- 확장 가능하고 가용성이 높은 아키텍처로 마이그레이션
- 애플리케이션에 최소한의 변경 필요
- 3계층 구조 유지
2. 관련 AWS 서비스 생각하기
- AWS Elastic Beanstalk는 웹 애플리케이션과 서비스를 손쉽게 배포하고 관리할 수 있는 플랫폼입니다. EC2 인스턴스 프로비저닝, 로드 밸런싱, 자동 확장, 모니터링, 애플리케이션 상태 모니터링 등의 작업을 자동화합니다. 다중 가용성 영역에 배포하여 가용성을 높일 수 있으며, 기존 애플리케이션을 큰 변경 없이 배포할 수 있습니다.
- Amazon RDS는 관리형 데이터베이스 서비스로, MySQL, PostgreSQL, Oracle, SQL Server 등 다양한 데이터베이스 엔진을 지원합니다. 다중 AZ 배포 기능을 통해 데이터베이스 가용성을 높일 수 있으며, 읽기 전용 복제본을 생성하여 읽기 트래픽을 분산시킬 수 있습니다.
- Amazon S3는 높은 내구성과 가용성을 가진 객체 저장 서비스로, 정적 컨텐츠나 이미지 등의 데이터를 저장하고 제공하는 데 최적화되어 있습니다. S3에 직접 이미지를 저장하면 애플리케이션 계층의 부하를 줄일 수 있습니다.
3. 선택지 분석하기
A. 프런트엔드를 S3로 호스팅하고 Lambda와 DynamoDB를 사용합니다.
→ 애플리케이션 아키텍처 전반에 많은 변경이 필요하며, MySQL에서 DynamoDB로의 마이그레이션은 대규모 코드 수정이 필요합니다.
B. Elastic Beanstalk 환경을 사용하고 RDS 읽기 전용 복제본으로 구성합니다.
→ 이미지를 데이터베이스에서 제공하는 것은 비효율적이며, S3를 사용하지 않아 최적화되지 않았습니다.
C. 프런트엔드를 S3로 호스팅하고 애플리케이션 계층은 EC2 Auto Scaling 그룹을 사용합니다.
→ 데이터베이스 가용성 향상 방안이 제시되지 않았으며, 메모리 최적화 인스턴스만으로는 고가용성을 보장할 수 없습니다.
D. Elastic Beanstalk를 사용하고 다중 AZ RDS 인스턴스와 S3를 사용합니다.
→ 모든 계층에서 고가용성과 확장성을 제공하며, 최소한의 애플리케이션 변경으로 요구사항을 충족합니다.
감사합니다. 다음 글에서 만나요! 😊
'AWS > SAA 준비' 카테고리의 다른 글
| AWS SAA 합격으로 가는 길 #132 (0) | 2025.11.10 |
|---|---|
| AWS SAA 합격으로 가는 길 #131 (0) | 2025.11.07 |
| AWS SAA 합격으로 가는 길 #129 (0) | 2025.10.31 |
| AWS SAA 합격으로 가는 길 #128 (0) | 2025.10.27 |
| AWS SAA 합격으로 가는 길 #127 (0) | 2025.10.24 |