17번
EC2 인스턴스에서 S3에 접근하도록 하는 방법은 여러가지가 있습니다. 그 중에서도 보안상 매우 중요한 least privilege access(최소 권한 접근)를 위해서는 해당 인스턴스가 정확히 필요로하는 권한만 주는 것이 좋습니다. 이러한 방식을 구현하기 위해 가장 적정한 방법은 S3로 접근할 수 있는 정책만 할당된 role을 부여하는 것입니다. policy만 서비스에 곧바로 적용할 수는 없기 때문에 policy를 role에 넣고 그 role을 서비스에 할당해야합니다. 따라서 적정한 role을 EC2에 할당하는 것을 찾아야하므로,
답은 A입니다.
18번
로직을 다 네모칸에 넣을 수 없어서 핵심 키워드만 잡았습니다. 로직을 보면, 어플리케이션은 사용자가 이미지를 올리면 S3 1. 버킷에 저장 2. Lambda로 그 이미지를 압축하고 다른 S3 버킷에 저장하는 순서로 진행됩니다. 이 과정을 회복성이 있으면서 각 과정을 분리해서 처리하려면, 가장 먼저 떠오르는 방법으로는 S3에 이미지가 들어오면 자동으로 SQS로 notification해주도록 S3를 설정하고, Lambda는 SQS에서 발행된 큐를 보고 동작하는 로직으로 가면 좋을 것 같습니다. 이러면 기존 로직에서 SQS만 추가하여 아키텍처를 만들 수 있으면서 각각 독립된 과정으로 진행시킬 수 있습니다. S3와 Lambda를 사용해야하는 환경이라면 이러한 방식이 가장 심플하다고 생각됩니다.
이러한 과정은 A와 B의 조합으로 달성될 수 있습니다.
답은 A, B 입니다.
다른 보기가 틀린 이유는, S3에 이미지가 들어온 것을 확인하기 위한 추가적인 로직이 들어가기 때문입니다. S3는 notification을 직접 제공하므로 다른 로직을 추가하여 관찰할 필요가 없습니다.
19번
뒷부분의 네모칸만 보면 IP packet을 받아야하므로 Network LB가 있는 A를 답으로 하실 수도 있습니다. 함정아닌 함정이 됩니다.. 문제는 보안 어플라이언스로 트래픽을 보내서 분석이 되어야하므로 트래픽 미러링을 사용하거나 Gateway LB를 써야합니다. Gateway LB는 비교적 최근에 나온 LB인데요, 네트워크 트래픽을 인터넷으로 보낼 때 보안 어플라이언스를 거쳐서 가도록하기 위한 아키텍처를 위해 설계되었습니다. 기존보다 중앙 집중식 관리에 더욱 용이하고 설정도 비교적 간편합니다. 아래 그림을 보시면 이해에 도움이 되실겁니다.
답은 D입니다.
20번
속도에 매우 민감한 운영 환경이므로 Block스토리지를 사용하고 있습니다. 운영에 영향 없이 테스트 환경으로 동일한 데이터를 가져오려면 스냅샷을 찍어서 테스트 환경에서 인스턴스로 부팅하는 것이 효과적인 방법일 것입니다. 여기서는 추가로 clone하여 가져오는 시간을 최소한으로 줄여야한다고 합니다. 이 경우 fast snaphot 기능을 활성화하여 사용하는 것을 고려해볼 수 있습니다. EC2 콘솔에 가셔서 스냅샷 탭을 클릭하고 스냅샷을 선택한 후 우측 상단에 액션을 클릭하시면 fast snapshot을 활성화할 수 있는 버튼이 출력됩니다. 클릭하시면 아래와 같은 페이지를 볼 수 있습니다. 원하는 AZ를 선택한 후 Enable하여 사용할 수 있습니다.
답은 D입니다.
21번
키워드로 millisecond latency가 보인다면 DynamoDB와 CloudFront를 기억합시다. 이 두 서비스는 대표적인 낮은 지연을 위한 best practice입니다. 아마 CloudFront하면 S3가 바로 연상되는 분들이 계실텐데요, 정적 호스팅을 위한 아주 올바른 접근입니다! 하지만 DB단까지 연결이 필요하다면 응답속도가 빠른 DynamoDB를 사용하면됩니다. 이번 문제에서는 ecommerce company이고 하루 단위 딜에 대해 판매하는 로직이 들어가기 때문에 DB가 반드시 필요한 환경으로 보입니다. 판매를 위한 컨텐츠는 S3에 두어 CloudFront를 통해 빠른 속도로 배포할 수 있도록 하면서, 트랜잭션은 DynamoDB에 저장하도록하는 아키텍쳐가 가장 적합하겠습니다.
따라서 답은 D입니다.
22번
resilient는 회복성, 탄력성으로 직역됩니다. 여기서 탄력성이란 장애가 생겨도 스스로 복구하거나 서비스 이용에 지장이 없도록 설계하라는 의미지요. 그렇다면 다중 AZ 설계는 필수입니다. 여기서 D는 탈락합니다. 그런데 뒤에서 어떤 파일들은 자주 접근하나 어떤 파일들은 자주 접근하지 않으며 그것은 예측불가하다고 합니다. 이 경우에는 컴퓨터가 알아서 자주 사용하는 파일과 그렇지 않은 파일을 분류해서 자주 사용하지 않는 것들은 더 저렴한 스토리지로 이동시켜주는 것이 필요합니다. 이때 사용하는 것이 Intelligent-Tiering입니다.
따라서 답은 B입니다.
C는 일반적으로 자주 사용하지는 않으나 그래도 어느정도 접근을 하는 경우에 사용합니다. 각 스토리지는 보관 비용과 PUT, COPY, POST, LIST 요청에 대한 비용이 별도로 부과됩니다. Glacier의 경우 스토리지 보관 비용은 저렴하나 불러올때 시간도 오래걸리며 비용도 많이 지출됩니다. 반면 Standard IA의 경우 보관비용은 비교적 높으나 불러오기 속도나 비용이 저렴합니다. 따라서 상황에 맞게 스토리지 클래스를 선택하여 사용하면 FinOps에 도움이 됩니다. 아래 링크를 참조하시면 더 자세한 내용을 확인하실 수 있습니다.
https://aws.amazon.com/ko/s3/pricing/?nc=sn&loc=4
23번
22번 문제와 비슷합니다. S3에 저장된 파일은 1개월 까지는 자주 접근되나 그 이후부터는 접근되지 않는다고 합니다. 그렇다면 1개월이 지나는 시점에서 자동으로 가장 저렴한 cold storage인 Glacier Deep Archive로 보내는 아키텍쳐를 구성하면 되겠습니다.
답은 B 입니다.
24번
Professional로 가면 자주 등장하는 문제 유형입니다. 조직관리와 비용관리는 실제 운영 업무를 하시는 분들께서는 많이 접근하시는 부분이 아닐까 생각됩니다. 이 문제는 개인 계정으로 직접 캡쳐하여 보여드리고 싶었는데.. 제 계정이 조직 계정에 속해있어서 보여드릴 수가 없네요..
핵심 키워드에 in-depth analysis가 있습니다. 똑같은 키워드가 B번에도 있습니다. 답이 B이긴 합니다만 C나 D는 왜 답이 안될까요. C는 자세한 내용이 출력되지 않습니다. docs에도 "a general view of your AWS spending"라고 안내합니다. D는 너무.. 손이 많이 갑니다. QuickSight는 커스텀한 대시보드를 구성하기 좋은 툴이지만 이런걸 만들지 않아도 되는 것이 있다면 그걸 쓰는게 좋겠죠😄 따라서 답으로 선택하지 않습니다.
답은 B입니다.
'AWS' 카테고리의 다른 글
AWS SAA-C03 25번 ~ 32번 (0) | 2023.05.26 |
---|---|
AWS SAA-C03 문제 풀이 9번 ~ 16번 (2) | 2023.05.08 |
[5] TGW와 Direct Connect는 언제 쓰나요? (0) | 2023.05.05 |
AWS SAA-C03 문제 풀이 1번 ~ 8번 (0) | 2023.04.18 |
VPC Peering에 대해 알아봅시다 (2) | 2023.04.11 |