[AWS-SAP] 샘플 문항 1~10

[AWS-SAP] 샘플 문항 1~10

SAP 샘플 문항 1~10번 문제를 풀어보자.
1차 1/10


Prob. 1 ❌


한 기업에 개별 비즈니스 그룹이 소유하는 다수의 AWS 계정이 있다. 이러한 계정 중 하나가 최근 침해를 당했다. 공격자가 대량의 인스턴스를 시작했고, 해당 계정에 대한 큰 비용이 발생되었다.보안 침해 문제는 해결되었지만, 경영진은 솔루션스 아키텍트에게 모든 계정에서 과도한 지출을 방지할 수 있는 솔루션을 개발하도록 요청했다. 각 비즈니스 그룹은 자체 AWS 계정에 대한 완전한 통제권을 유지하기를 원한다.

솔루션스 아키텍트는 이러한 요구 사항을 충족하려면 다음 중 어느 솔루션을 권장해야 하는가?

A. AWS 조직을 사용하여 마스터 계정에 각 AWS 계정을 추가한다. ec2:instanceType 조건 키를 사용해 각 계정에서 고 비용 인스턴스 유형이 실행되는 것을 방지하는 SCP(서비스 제어 정책)를 만든다.

B. 각 계정의 IAM 그룹에 ec2:instanceType 조건 키를 사용해 새 고객 관리형 IAM 정책을연결하여 고 비용 인스턴스 유형이 실행되는 것을 방지한다. 모든 기존 IAM 사용자를 각 그룹에 배치한다.

C. 각 AWS 계정에서 결제 알림을 활성화한다. 계정이 지출 예산을 초과할 때마다 Amazon SNS 알림을 계정 관리자에게 보내는 Amazon CloudWatch 경보를 생성한다.

D. 각 계정에서 AWS Cost Explorer 를 활성화한다. 지출이 계획 예산을 초과하지 않도록 각 계정의 Cost Explorer 보고서를 정기적으로 검토한다.

정답 및 해설 보기


Answer : C

해설 :

C – 결제 경보는 비즈니스 그룹의 통제 권한을 빼앗지 않고도 경영진이 과도한 지출에 대해 경보를 받을 수 있도록 해 준다. A 와 B 는 각 비즈니스 그룹이 각자의 계정에 대한 통제권을 보유하고 싶어하고, 이러한 솔루션은 다수의 인스턴스 시작을 방지하지 못하기 때문에 정답이 아니다. D 는 수동 프로세스라서, 무단 지출이 발견되기까지는 약간의 시간이 걸릴 수 있다.

1차 시도 : A 틀림


Prob. 2 ❌


한 회사에 여러 개의 AWS 계정이 있다. 이 회사는 온프레미스 Active Directory(AD)를 AWS SSO 에 통합하여 AD 사용자에게 모든 계정의 인프라를 관리할 수 있는 최소한의 권한을 부여했다. 솔루션스 아키텍트는 모든 AWS 계정에서 읽기 전용 액세스를 필요로 하는 서드파티 모니터링 솔루션을 통합해야 한다. 모니터링 솔루션은 자체 AWS 계정에서 실행될 것이다.

모니터링 솔루션에 필요한 권한을 부여하는 방법은 무엇인가?

A. AWS SSO 디렉토리에서 사용자를 만들고 읽기 전용 권한 세트를 할당한다. 모니터링할 모든 AWS 계정을 새 사용자에게 할당한다. 서드파티 모니터링 솔루션에 사용자 이름과 암호를 제공한다.

B. 조직의 마스터 계정에서 AWS IAM 역할을 만든다. 서드파티 모니터링 솔루션의 AWS 계정이 해당 역할을 수임하도록 허용한다.

C. 서드파티 모니터링 솔루션의 AWS 계정이 조직에 가입하도록 초대한다. 모든 기능을 활성화한다.

D. 신뢰 정책에 나열되어 있는 서드파티 계정으로 서드파티 모니터링 솔루션에 대한 새 AWS IAM 역할을 정의하는 AWS CloudFormation 템플릿을 만든다. 스택 세트를 사용하여 연결된 모든 AWS 계정에서 IAM 역할을 만든다.

정답 및 해설 보기


Answer : D

해설 :

D – AWS CloudFormation StackSets 는 단일 작업으로 여러 계정에 IAM 역할을 배포할 수 있다. AWS SSO 에서 제공하는 자격 증명은 임시적이므로, 애플리케이션은 권한을 잃게 되고 다시 로그인해야 하므로 A 는 맞지 않다. B 는 마스터 계정에만 액세스 권한을 부여하게 될 것이다. 조직에 속하는 계정은 다른 계정에서 권한을 받지 못하기 때문에 C 는 맞지 않다.

1차 시도 : A 틀림


Prob. 3 ❌


한 팀이 퍼블릭 Amazon S3 버킷에 호스팅된 HTML 양식을 작성 중이다. 이 양식은 JavaScript 를 사용하여 Amazon API Gateway 엔드포인트에 데이터를 게시한다. 이 엔드포인트는 AWS Lamda 함수에 통합되어 있다. 이 팀은 API Gateway 콘솔에서 각 메서드를 테스트했고 유효한 응답을 받았다.

이 양식을 성공적으로 API Gateway 에 게시하고 유효한 응답을 받으려면 어떤 조합의 단계를 반드시 완료해야 하는가? (2 개 선택.)

A. 교차 출처 리소스 공유(CORS)를 허용하도록 S3 버킷을 구성한다.

B. Amazon S3 보다는 Amazon EC2 에 양식을 호스팅한다.

C. API Gateway 에 대한 한도 증가를 요청한다.

D. API Gateway 에서 교차 출처 리소스 공유(CORS)를 사용 가능하게 한다.

E. 웹 호스팅을 위한 S3 버킷을 구성한다.

정답 및 해설 보기


Answer : D, E

해설 :

D, E – (D) 동일한 오리진 정책으로 인해 브라우저에서 오류가 생성되지 않도록 하려면, CORS 가 반드시 활성화되어야 하며, 이를 위해서는 동적 콘텐츠는 정적 콘텐츠와 동일한 도메인에서 가져와야 한다. API Gateway 는 양식 도메인 [restapi-id].execute-api.amazonaws.com을 사용하고, S3 bucket 은 [bucketname].s3.website-[region].amazonaws.com 을 사용하기 때문에, CORS 헤더는 이 제한을 완화할 수 있도록 브라우저에 대한 API Gateway 응답과 함께 전송해야 한다. HTML 양식을 웹 사이트 엔드포인트를 통해 제공하려면 (E)가 필요하다. CORS 헤더가 API 엔드포인트의 동적 응답에 의해 반환되도록 구성되어야 하므로 A 는 맞지 않다. S3 버킷용으로 CORS 를 구성하는 것은 도움이 되지 않는다. (B)는 맞지 않다. 그 이유는 S3 버킷 대비 EC2 에서 실행되는 웹 서버에서 정적 웹 페이지를 제공하는 것에 대한 이점이 없기 때문이다. API Gateway 는 초당 10,000 개의 기본 리전당 한도를 가지고 있기 때문에 (C)는 맞지 않다. 프로덕션에 필요한 경우, 이 한도는 증가될 수 있다.

1차 시도 : A, D 틀림


Prob. 4 ❌


한 소매 업체가 Amazon API Gateway, AWS Lambda, Amazon Cognito 및 Amazon DynamoDB 를 기반으로 구축된 서버리스 모바일 앱을 운영하고 있다. 연휴 트래픽이 크게 증가하는 동안, 회사는 간헐적인 시스템 장애에 대한 불만을 접수했다. 개발자는 API Gateway 엔드포인트가 유효한 것으로 보이는 요청에 502 Bad Gateway 오류를 반환하고 있음을 확인했다.

어느 방법이 이 문제를 해결할 수 있는가?

A. ConcurrentExecutions 지표가 한도에 근접할 때 Lambda 함수의 동시 처리 한도를 늘리고 Amazon CloudWatch 가 보낼 알림 경보를 구성한다.

B. API Gateway 엔드포인트에서 초당 트랜잭션 한도에 대한 알림 경보를 구성하고 필요에 따라 이 한도를 늘리는 Lambda 함수를 만든다.

C. 사용자 인증 대기 시간을 줄이려면 여러 리전의 Amazon Cognito 사용자 풀에 사용자를 분할한다.

D. DynamoDB 강력히 일관된 읽기를 사용하여 최신 데이터가 항상 클라이언트 애플리케이션에 반환되도록 한다.

정답 및 해설 보기


Answer : A

해설 :

A – Lambda 함수가 동시성 한도를 초과할 경우, API Gateway 가 502 내부 서버 오류(Internal server errors)를 간헐적으로 반환하게 된다. 이 경우 API Gateway 가 지나치게 많은 요청(Too many requests)에 대한 429 오류를 반환하기 때문에 (B)는 맞지 않다. 인증 프로세스 중이 아니라, API Gateway 엔드포인트를 호출할 때 오류가 발생하기 때문에 (C)는 맞지 않다. 부실 데이터가 잘못된 게이트웨이(bad gateway) 오류를 일으키지 않으므로 (D)는 맞지 않다.

1차 시도 : B 틀림


Prob. 5 ⭕


한 웹 호스팅 회사가 모든 AWS 리전에서 Amazon GuardDuty 를 모든 계정에 대해 사용할 수 있게 했다. 시스템 관리자는 심각도가 높은 이벤트에 대한 자동 응답을 작성해야 한다.

이 작업은 어떻게 완수되어야 하는가?

A. 프로그래밍 방식으로 문제를 해결하는 AWS Lambda 함수를 트리거하는 VPC 흐름 로그를 통해 규칙을 만든다.

B. 프로그래밍 방식으로 문제를 해결하는 AWS Lambda 함수를 트리거하는 AWS CloudWatch Events 규칙을 만든다.

C. 프로그래밍 방식으로 문제를 해결하는 Amazon Lambda 함수를 트리거하도록 AWS Trusted Advisor 를 구성한다.

D. 프로그래밍 방식으로 문제를 해결하는 AWS Lambda 함수를 트리거하는 AWS CloudTrail 을 구성한다.

정답 및 해설 보기


Answer : B

해설 :

B – GuardDuty 결과는 Amazon SNS 주제 및 CloudWatch Events 로 전송될 수 있다. VPC Flow Logs 나 AWS CloudTrail 중 어느 것도 직접 Lambda 함수를 트리거할 수 없으므로 (A)와 (D)는 맞지 않다. Trusted Advisor 가 권장 서비스이고 이 시나리오에는 적합하지 않으므로 (C)는 맞지 않다.

1차 시도 : B 맞음


Prob. 6 ❓


한 회사가 Amazon ECS 클러스터에서 새로운 웹 서비스를 시작하고 있다. 회사 정책에 따라 클러스터 인스턴스의 보안 그룹은 HTTPS(포트 443)를 제외한 모든 인바운드 트래픽을 차단해야 한다. 클러스터는 100개의 Amazon EC2 인스턴스로 구성되어 있다. 보안 엔지니어는 클러스터 인스턴스를 관리하고 업데이트하는 업무를 담당한다. 보안 엔지니어링 팀은 작기 때문에, 관리에 대한 노력도 최소화해야 한다.

서비스를 어떻게 설계해야 이러한 운영 요구 사항을 충족할 수 있는가?

A. 사용자 데이터 스크립트를 사용하여 클러스터 인스턴스에서 SSH 포트를 2222 로 변경한다. 포트 2222 를 통해 SSH 를 사용하여 각 인스턴스에 로그인한다.

B. 사용자 데이터 스크립트를 사용하여 클러스터 인스턴스에서 SSH 포트를 2222 로 변경한다. AWS Trusted Advisor 를 사용하여 포트 2222 상의 클러스터 인스턴스를 원격으로 관리한다.

C. SSH 키 페어가 없는 클러스터 인스턴스를 시작한다. Amazon EC2 Systems Manager Run Command 를 사용하여 클러스터 인스턴스를 원격으로 관리한다.

D. SSH 키 페어가 없는 클러스터 인스턴스를 시작한다. AWS Trusted Advisor 를 사용하여 클러스터 인스턴스를 원격으로 관리한다.

정답 및 해설 보기


Answer : C

해설 :

C – Amazon EC2 Systems Manager Run Command 의 경우 인바운드 포트가 열려 있지 않아도 된다. 이것은 전적으로 아웃바운드 HTTPS(보안 그룹에 대해 기본으로 열려 있음)를 통해 작동한다.
(A)와 (B)는 배제되는데, 그 이유는 요구 사항에 열려 있어야 하는 유일한 인바운드 포트가 443 이라는 것이 명확하게 명시되어 있기 때문이다. D 는 Trusted Advisor 가 관리 기능을 수행하므로 배제된다.

1차 시도 : 모름


Prob. 7 ❓


한 회사에 AWS 계정이 두 개가 있는데, 하나는 프로덕션 워크로드용이고 다른 하나는 개발 워크로드용이다. 개발 팀과 운영 팀이 워크로드를 생성하고 관리한다. 회사는 다음 요구 사항을 충족하는 보안 전략이 필요하다.

• 개발자는 개발 애플리케이션 인프라를 만들고 삭제해야 한다. • 운영자는 개발 및 프로덕션 애플리케이션 인프라를 모두 만들고 삭제해야 한다. • 개발자는 프로덕션 인프라에 접근할 수 없어야 한다. • 모든 사용자는 단일 세트의 AWS 자격 증명을 가져야 한다.

이러한 요구 사항을 충족하는 전략은 무엇인가?

A. 개발 계정에서: • 애플리케이션 인프라를 만들고 삭제할 수 있는 능력을 갖춘 개발 IAM 그룹을 만든다. • 각 운영자 및 개발자에 대한 IAM 사용자를 만들고 이를 개발 그룹에 할당한다. 프로덕션 계정에서: • 애플리케이션 인프라를 만들고 삭제할 수 있는 능력을 갖춘 운영 IAM 그룹을 만든다. • 각 운영자에 대한 IAM 사용자를 만들고 이를 운영 그룹에 할당한다.

B. 개발 계정에서: • 애플리케이션 인프라를 만들고 삭제할 수 있는 능력을 갖춘 개발 IAM 그룹을 만든다. • 각 개발자에 대한 IAM 사용자를 만들고 이를 개발 그룹에 할당한다. • 각 운영자에 대한 IAM 사용자를 만들고 이를 프로덕션 계정의 개발 그룹 및 운영 그룹에 할당한다. 프로덕션 계정에서: • 애플리케이션 인프라를 만들고 삭제할 수 있는 능력을 갖춘 운영 IAM 그룹을 만든다.

C. 개발 계정에서: • 프로덕션 계정에서 애플리케이션 인프라를 만들고 삭제할 수 있는 능력을 갖춘 공유 IAM 역할을 만든다. • 애플리케이션 인프라를 만들고 삭제할 수 있는 능력을 갖춘 개발 IAM 그룹을 만든다. • 공유 역할을 수임할 수 있는 능력을 갖춘 운영 IAM 그룹을 만든다. • 각 개발자에 대한 IAM 사용자를 만들고 이를 개발 그룹에 할당한다. • 각 운영자에 대한 IAM 사용자를 만들고 이를 개발 그룹 및 운영 그룹에 할당한다.

D. 개발 계정에서: • 애플리케이션 인프라를 만들고 삭제할 수 있는 능력을 갖춘 개발 IAM 그룹을 만든다. • 프로덕션 계정에서 공유 역할을 수임할 수 있는 능력을 갖춘 운영 IAM 그룹을 만든다. • 각 개발자에 대한 IAM 사용자를 만들고 이를 개발 그룹에 할당한다. • 각 운영자에 대한 IAM 사용자를 만들고 이를 개발 그룹 및 운영 그룹에 할당한다. 프로덕션 계정에서: • 애플리케이션 인프라를 만들고 삭제할 수 있는 능력을 갖춘 공유 IAM 역할을 만든다. • 공유 역할에 대한 신뢰 정책에 개발 계정을 추가한다.

정답 및 해설 보기


Answer : D

해설 :

D – 요구 사항을 충족하며 작동할 유일한 응답이다. 이것은 제어하는 두 계정 간의 교차 계정 액세스 허용을 위한 표준 가이드라인을 따른다. (A)는 운영자에게 두 세트의 자격 증명을 요구하는데, 이는 요구 사항을 충족하지 못한다. (B)는 IAM 사용자를 다른 계정의 IAM 그룹에 추가할 수 없으므로 적합하지 않다. 역할은 다른 계정의 리소스에 대해 액세스 권한을 부여할 수 없으므로 (C)는 적합하지 않다. 공유 역할은 그 역할이 관리하는 리소스와 함께 계정에 있어야 한다.

1차 시도 : 모름


Prob. 8 ❓


한 회사는 Apache Hadoop 클러스터를 회사의 데이터 센터에서 AWS 로 마이그레이션 중이다. 이 클러스터는 60 개의 VMware Linux 가상 머신(VM)으로 구성되어 있다. 마이그레이션 클러스터 중에는 가동 중단 시간을 최소화해야 한다.

어떤 프로세스가 가동 중단 시간을 최소화하는가?

A. vCenter 용 AWS Management Portal 을 사용하여 Amazon EC2 인스턴스로서 VM 을 AWS 로 마이그레이션한다.

B. AWS SMS 를 사용하여 VM 을 AWS 로 AMI 로서 마이그레이션한다. AWS 에서 마이그레이션된 AMI 의 Amazon EC2 인스턴스로서 클러스터를 시작한다.

C. VM 의 OVA 파일을 만든다. OVA 파일을 Amazon S3 에 업로드한다. VM Import/Export 를 사용하여 OVA 파일에서 AMI 를 만든다. AWS 에서 AMI 의 Amazon EC2 인스턴스로서 클러스터를 시작한다.

D. VM 의 HDFS 데이터를 새로운 Amazon Aurora 데이터베이스로 내보낸다. Amazon EC2 인스턴스에서 새 Hadoop 클러스터를 시작한다. 새 클러스터에서 Aurora 데이터베이스의 데이터를 HDFS 로 가져온다.

정답 및 해설 보기


Answer : B

해설 :

B – AWS SMS 는 각 VM 을 점진적으로 업로드하므로, 데이터 센터 클러스터가 여전히 실행되는 동안 서버를 업로드할 수 있다. 데이터 센터 클러스터는 모든 가상 머신의 최종 증분 동기화 전에만 종료해야 한다. (A)와 (C)는 가동 중단 시간을 최소화하는 요구 사항을 충족하지 않는다. vCenter 및 VM Import/Export 문서: 대부분의 VM 가져오기 요구 사항에 대해 AWS SMS 를 사용할 것을 권장한다. AWS SMS 는 가져오기 프로세스를 자동화(대용량 VM 인프라 마이그레이션 워크로드를 감소)하고, 변화하는 VM 의 증분 업데이트에 대한 지원을 추가하며, 가져온 VM 을 즉시 사용할 수있는 AMI 로 변환한다. (D)는 가동 중단 시간을 최소화하는 요구 사항을 충족하지 않는다.

1차 시도 : 모름


Prob. 9 ❌


솔루션스 아키텍트는 빅 데이터 애플리케이션에 드는 비용을 절감해야 할 필요가 있다. 애플리케이션 환경은 Amazon Kinesis Data Streams 로 이벤트를 보내는 수백 개의 디바이스로 구성된다. 디바이스 ID가 파티션 키로 사용되므로 각 디바이스는 별도의 샤드를 받는다. 각 디바이스는 초당 50KB 에서 450KB 사이의 데이터를 전송한다. 샤드는 데이터를 처리하고 그 결과를 Amazon S3 에 저장하는 AWS Lambda 함수에 의해 폴링된다.

매시간, AWS Lambda 함수는 결과 데이터에 대해 특이 사항을 식별하고 이를 Amazon SQS 대기열에 배치하는 Amazon Athena 쿼리를 실행한다. 두 개의 EC2 인스턴스로 구성된 Amazon EC2 Auto Scaling 그룹이 대기열을 모니터링하고 특이 사항을 처리하는 짧은(약 30 초) 프로세스를 실행한다. 디바이스는 매시간 평균 10 개의 특이값을 제출한다.

애플리케이션에 대한 어떤 조합의 변경이 비용을 가장 절감시키겠는가? (2 개 선택.)

A. 동일한 인스턴스 패밀리에서 더 작은 인스턴스 유형을 사용하도록 Auto Scaling 그룹 시작 구성을 변경한다.

B. Auto Scaling 그룹을 Amazon SQS 대기열에 도착한 메시지가 트리거하는 AWS Lambda 함수로 대체한다.

C. 10 개의 디바이스와 1 개의 데이터 스트림 샤드의 비율로 설정되도록 디바이스와 데이터 스트림을 재구성한다.

D. 2 개의 디바이스와 1 개의 데이터 스트림 샤드의 비율로 설정되도록 디바이스와 데이터 스트림을 재구성한다.

E. Auto Scaling 그룹의 원하는 용량을 단일 EC2 인스턴스로 변경한다.

정답 및 해설 보기


Answer : B, D

해설 :

B, D – 각 시간당 사용된 평균 컴퓨팅 양은 약 300 초(10 개의 이벤트 x 30 초)이다. A 와 E 가 모두 비용을 줄이기는 하지만, 둘 다 시간당 3,300 초 이상 사용하지 않는 하나 이상의 EC2 인스턴스에 대해 지불해야 한다. B 는 특이 값을 처리하는데 필요한 적은 컴퓨팅 시간에 대해서만 지불하면 된다. (C)와 (D) 모두 Kinesis Data Stream 의 시간당 비용을 줄이기는 하지만, (C)는 데이터 양이 단일 샤드의 초당 1MB 한도를 초과할 것이기 때문에 적합하지 않다.

1차 시도 : B, C 틀림


Prob. 10 ❌


한 회사는 Application Load Balancer 뒤에 있는 Amazon EC2 인스턴스에서 전자 상거래 애플리케이션을 운영하고 있다. 인스턴스는 여러 가용 영역에 걸쳐 Amazon EC2 Auto Scaling 그룹에서 실행된다. 주문이 성공적으로 처리되면 애플리케이션은 주문 조회 시 판매 수수료를 지불하는 외부 서드파티 제휴사 추적 시스템에 주문 데이터를 즉시 게시한다. 성공적인 마케팅 프로모션 동안, EC2 인스턴스의 수가 2 에서 20 으로 증가했다. 애플리케이션은 계속 제대로 작동했지만, 늘어난 요청 비율이 서드파티 계열사를 압도하여 요청이 실패했다.

전체 프로세스가 부하 상태에서 올바르게 작동하도록 하려면 다음 중 어떤 조합의 아키텍처 변경이 필요한가? (2 개 선택.)

A. 제휴사를 호출하는 코드를 새 AWS Lambda 함수로 이전한다. 애플리케이션을 수정하여 Lambda 함수를 비동기적으로 호출한다.

B. 제휴사를 호출하는 코드를 새 AWS Lambda 함수로 이전한다. 주문 데이터를 Amazon SQS 대기열에 배치하도록 애플리케이션을 수정한다. 대기열에서 Lambda 함수를 트리거한다.

C. 새 AWS Lambda 함수의 제한 시간을 증가시킨다.

D. 새 AWS Lambda 함수의 동시 처리 한도를 조정한다.

E. 새 AWS Lambda 함수의 메모리를 늘린다.

정답 및 해설 보기


Answer : B, D

해설 :

B, D – 대기열 (B)에 메시지를 넣으면 주 애플리케이션을 제휴사에 대한 호출로부터 분리하게 된다. 그러면 제휴사의 용량 감소로부터 주요 애플리케이션을 보호할 뿐만 아니라, 실패한 요청이 자동으로 대기열로 복귀될 수 있게 해 준다. 동시 실행 수를 제한하기 (D)는 제휴사 애플리케이션이 과부하되는 것을 방지할 것이다.
Lambda 함수를 비동기적으로 호출하면 EC2 인스턴스에 대한 부하가 줄어들기는 하지만, 제휴사 애플리케이션에 대한 요청 수는 줄어들지 않으므로 (A)는 맞지 않다. (C)도 맞지 않는데, 그 이유는 Lambda 함수가 외부 호출이 반환될 때까지 더 오래 기다릴 수 있게 해 주지만, 제휴사 애플리케이션에 대한 부하는 줄지 않기 때문이다(여전히 과부하될 것임). 메모리를 조정해도 Lambda 함수와 제휴사 애플리케이션 사이의 상호 작용에는 영향을 미치지 않으므로 (E)도 맞지 않다.

1차 시도 : B, C 틀림






© 2022. All rights reserved.