AWS - 18 [복습 - 문제 정리 ]

_Block·2022년 9월 28일
0

AWS

목록 보기
19/27
post-thumbnail

🔥 RDS, Aurora 및 ElastiCache 🔥

🚀 RDS 데이터베이스에 읽기 전용 복제본을 설정했지만 사용자가 소셜 미디어 게시물을 업데이트하면 업데이트된 게시물이 즉시 표시되지 않는다고 불평하고 있습니다. 이 현상의 원인은 무엇일까요?

1. 애플리케이션 버그

2. 비동기식 복제로 인한 최종 일관성

3. 다중 AZ 미 설정

2 : 복제 같은경우에는 비동기로 동작을 하기 떄문에 항상 최신의 데이터를 볼 수는 없습니다.

🚀 Application Load Balancer 뒤의 Auto Scaling Group에서 관리하는 EC2 인스턴스 집합에서 실행되는 애플리케이션이 있습니다. 사용자는 지속적으로 다시 로그인해야 하며 일부 EC2 인스턴스에 과부하가 걸릴까 봐 ALB에서 Sticky Session을 활성화하고 싶지 않습니다. 어떻게 해야 할까요?

1. ALB대신 EC2인스턴스 자체에서 로드 밸런서를 사용합니다.

2. RDS에 세션 데이터를 저장합니다.

3. ElastiCache에 세션 데이터를 저장합니다.

4. 공유 EBS 볼륨에 세선 데이터를 저장합니다.

3 : 일반적인 패턴으로 사용자의 로그인 정보는 캐시에 저장을 해두어 수명주기에 따라 삭제 될 수 있게 구성합니다.

🚀 다음 중 RDS 읽기 전용 복제본과 다중 AZ의 복제에 대한 설명으로 옳지 않은 것은 무엇일까요?

1. 읽기 전용 복제본은 비동기식 복제, 다중 AZ는 비동기식 복제를 사용

2. 읽기 전용 복제본은 동기식 복제, 다중 AZ는 비동기식 복제를 사용

3. 읽기 전용 복제본은 동기식 복제, 다중 AZ는 동기식 복제를 사용

4. 읽기 전용 복제본은 비동기식 복제, 다중 AZ는 동기식 복제를 사용

4 : 읽기 전용과 다중 AZ가 어떻게 사용이 되는지를 생각하면 쉬운 문제 입니다. 다중 AZ같은 경우에는 말 그대로 가용성을 위해서 사용하기 떄문에 항상 같은 데이터가 보관이 되어 있어야 하지만 읽기 전용 같은 경우에는 말 그대로 읽기 용이기 떄문에 굳이 동기식으로 동작할 필요가 없습니다.

🚀 IAM 데이터베이스 인증을 지원하지 않는 RDS 데이터베이스 기술은 무엇일까요?

1. 오라클

2. PostgreSQL

3. Mysql

1 : 오라클은 IAM인증을 지원하지 않습니다.

🚀 ElastiCache 클러스터가 전면에 있는 동적 웹사이트를 호스팅하고 있습니다. 모든 사용자의 모든 읽기 요청에 대해 지연 시간(Latency)을 최소로 유지하라는 지시를 받았습니다. 또한 쓰기가 발생하는 데 더 오래 걸릴 수 있습니다. 어떤 캐싱 전략을 권장해야 할까요?

1. Cache Aside

2. TTL

3. Write Through
  1. 데이터가 업데이트 될떄마다 반영하는 방식으로 많은 쓰기가 유발되지만 반대로 읽기에는 굉장히 유리합니다.

🔥 Route 53 🔥

🚀 Amazon Route 53 Registrar에서 mycoolcompany.com을 구매했으며 도메인이 ELB my-elb-1234567890.us-west-2.elb.amazonaws.com을 가리키도록 하고 싶습니다. 여기서 사용해야 하는 Route 53 레코드 유형은 무엇일까요?

1. CNAME

2. Alias

2 : 둘 모두 도메인 이름을 특정 영역을 지정하는 역할을 하지만 CHAME같은 경우에는 도메인 간에만 지원을 하고 Alias는 다른 AWS서비스도 지원을 합니다.

🚀 새 ELB를 가리키도록 Route 53 레코드의 myapp.mydomain.com 값을 업데이트했지만 사용자가 여전히 이전 ELB로 리디렉션되는 것 같습니다. 이 동작의 가능한 원인은 무엇일까요?

1. Alias떄문에

2. CNAME 떄문에

3. TTL 떄문에

4. Health Check 떄문에

3 : TTL(생명 주기)란 어떠한 서비스가 최소 지속되는 시간으로 해당 시간이 지나야 업데이트 된 값을 가져오는 특징이 있습니다.

🔥 VPC 기초 🔥

🚀 인터넷 게이트웨이를 VPC에 연결했지만 EC2 인스턴스가 여전히 인터넷에 액세스할 수 없습니다. 가능한 문제가 아닌 것은 무엇일까요?

1. 루트 테이블에 항목이 없습니다.

2. EC2인스턴스에 퍼블릭 IP가 없습니다.

3. 보안 그룹은 트래픽을 허용하지 않습니다.

4. NACL은 네트워크 트래픽을 허용하지 않습니다.

3 : 보안 그룹은 상태를 추적 가능하며, 트래팩이 나갈 수 있으면 들어올 수도 있습니다.

🚀 VPC 엔드포인트를 사용할 때 인터페이스 엔드포인트 대신 게이트웨이 엔드포인트가 있는 유일한 두 AWS 서비스는 무엇일까요?

1. S3 && SQS

2. SQS && DynamoDB

3. S3 && DynamoDB

3 : 이 두 서비스는 VPC엔드포인트가 있고, 다른 모든 서브시에는 인터페이스 엔드포인드가 있습니다.

  • 암기해야 하는 부분 입니다.

🔥 S3 🔥

🚀 클라이언트는 파일 암호화가 S3에서 발생하는지 확인하기를 원하지만 암호화 키를 완전히 관리하고 AWS에 저장하지 않기를 원합니다. 그렇다면 ... 사용을 추천해야 합니다.

1. SSE-S3

2. SSE-KMS

3. SSE-C

4. 클라이언트 측 암호화

3 : 1,2 모두 AWS에서 관리하는 암호화 방식이며, 4번 같은 경우에는 암호화가 S3에서 발생하지 않습니다.

🚀 AM 사용자가 S3 버킷의 파일을 읽고 쓸 수 있도록 S3 버킷 정책을 업데이트했지만 사용자 중 한 명이 PutObject API 호출을 수행할 수 없다고 불평합니다. 이것의 가능한 원인은 무엇일까요?

1. S3버킷 정책이 잘못되었습니다.

2. 사용자에게 권한이 없슴니다.

3 명시적 DENY가 있어야 합니다.

4. AWS에 문의합니다.

3 : 1,2모두 질문에서 쓰기가 가능하다고 하였기 때문에 권한 문제는 아니며, DENY가튼 경우에는 명시적으로 S3버킷 정책보다 우선적으로 적용되기 떄문에 해당 부분을 고려해야 합니다.

🚀 객체를 업로드/다운로드하는 동안 HTTPS를 사용해야 하는 S3 암호화 방법은 무엇일까요?

1. SSE-C

2. SSE-S3

3. SSE-KMS

4. 클라이언트 암호화

1 : HTTPS통신을 하는 것은 키를 주고받는 암호화 방식입니다.

🔥 IAM, CLI, SDK 🔥

🚀 AWS CLI에는 ...가 런타임으로 필요합니다.

1. JAVA

2. Golang

3. Python

4. C#

3

🚀 온프레미스 서버에서 애플리케이션을 실행하고 있습니다. 애플리케이션은 S3 버킷에 대한 API 호출을 수행해야 합니다. 가장 안전한 방법으로 이것을 달성하는 방법은 무엇일까요?

1. IAM을 생성한 다음 자격 증명을 생성하고 해당 자격 증명을 환경 변수에 넣습니다.

2. 서버 내부에서 aws configure를 실행하여 자격 증명을 삽입합니다.

3. IAM을 생성하고, 자격증명을 생성한 후에 애플리케이션 코드의 자격증명을 사용합니다.

4. 온프레미스 서버에 IAM역할을 연결합니다.

1 : IAM사용자를 뭐든지 EC2인스턴스에서 설정을 하는 것은 위험합니다. 또한 생성한 IAM의 자격증명을 사용해야 하며 온프레미스 서버에는 IAM역학을 연결할 수 없습니다.

🚀 IAM 역할이 EC2 인스턴스에 연결되면 IAM 역할 이름과 역할에 연결된 IAM 정책을 모두 검색할 수 있습니다.

거짓 : 인스턴스 메타데이터를 통해서 IAM역할 이름을 얻을 수는 있지만 정첵 자체를 검색할 수는 없습니다.

🚀 AWS CLI 및 AWS SDK는 AWS 액세스 키를 사용하여 API 요청에 서명합니다. 사용자 지정 코드를 작성하는 경우 ....을 사용하여 AWS API 요청에 서명해야 합니다.

1. 서명 버전 1 (SigV1)

2. 서명 버전 2 (SigV2)

3. 서명 버전 3 (SigV3)

4. 서명 버전 4 (SigV4)

4 : 암기 내용입니다.

🔥 고급 S3 🔥

🚀 일부 직원이 액세스 권한이 없는 S3 버킷의 파일에 액세스하려고 하는 것 같습니다. 그들이 눈치채지 못하게 하면서 이것이 사실인지 어떻게 확인할 수 있습니까?

1. IAM정책을 제한하고 CloudTail로그 보기

2. 버킷 정책 사용

3. 액세스 로그를 활성화 하고 Athena를 사용하여 분석

3: 1,2모두 접근을 하는 직원이 알아차리는 방식입니다.

🚀 Amazon RDS PostgreSQL을 사용하여 S3에서 파일 인덱스를 구축하려고 합니다. 이 인덱스를 작성하려면 파일 자체의 콘텐츠에 대한 일부 메타데이터가 포함된 S3에 있는 각 객체의 처음 250바이트를 읽어야 합니다. S3 버킷에는 50TB의 데이터에 해당하는 100,000개가 넘는 파일이 있습니다. 이 인덱스를 어떻게 효율적으로 구축할 수 있을까요?

1. RDS가져오기 기능을 사용하여 S3에서 PostgreSQL로 데이터 로드하고, SQL쿼리를 실행

2. 트래버스할 애플리케이션을 만들고 처음 250바이트에 대해 가져오기를 실행

3. 트래버스할 애플리케이션을 만들고 파일을 하나씩 읽음

4. 트래버스할 애플리케이션을 만들고 Select를 활용

2 : 뭐든지 한번에 데이터를 가져오는 것을 주의해야합니다. 데이터의 크기가 커질수록 더 많은 비용이 부과되기 떄문에 조금씩 여러번 가져오는 것이 효율적입니다.

🚀 CSV 형식으로 S3에 저장된 데이터 세트의 하위 집합을 검색하려고 합니다. 컴퓨팅 및 네트워크 비용을 최소화하기 위해 한 달 동안의 데이터와 10개 열 중 3개 열만 검색하려고 합니다. 다음 중 무엇을 사용해야 할까요?

1. S3 인벤토리

2. S3 셀렉트

3. S3 애널리틱스

4. S3 액세스 로그

2 : 원하는 데이터를 가져올떄에는 셀렉트를 활용합니다.

🔥 CloudFront 🔥

🚀 S3 버킷에 저장된 유료 콘텐츠가 있습니다. 해당 콘텐츠를 전역으로 배포하려고 하므로 CloudFront 배포를 설정하고 CloudFront 배포와 데이터만 교환하도록 S3 버킷을 구성했습니다. 이 유료 콘텐츠를 안전하게 배포할 수 있는 CloudFront 기능은 무엇일까요?

1. 원본 액세스 ID

2. S3 사전 서명된 URL

3. CloudFront 서명된 URL

4. CloudFront 무효화

3 : 보통 사전 서명된 URl같은 경우에는 유료 콘텐츠를 배포하는데에 사용 됩니다.

🔥 Elastic Beanstalk 🔥

🚀 AWS Elastic Beanstalk에서 웹 사이트를 호스팅하는 회사입니다. 그들은 문제가 있는 경우 매우 빠르게 롤백할 수 있는 기능과 함께 새로운 애플리케이션 버전을 지속적으로 릴리스하는 방법론을 원합니다. 또한 애플리케이션은 새 버전을 릴리스하는 동안 전체 기능을 제공해야 합니다. 어떤 Elastic Beanstalk 배포 옵션을 권장해야 할까요?

1. 한번에

2. 롤링

3. 추가 batch로 롤링

4. 불변

4 : 새로운 ASG를 만들어 내면서 동작을 하기 떄문에 문제가 있을시에 바로 롤백이 가능한 옵션입니다.

🚀 Elastic Beanstalk는 내부적으로 어떤 AWS 서비스를 사용할까요?

1. OpsWorks

2. CloudFormation

3. Lambda

4. EC2

2 : 암기 항목 입니다.

profile
Block_Chain 개발자 입니다. 해당 블로그는 네트워크에 관한 내용을 다루고 있습니다.

0개의 댓글