Q426 의료 애플리케이션의 데이터를 온프레미스에서 AWS로 옮기려 합니다. 데이터는 자주 수정되며, 새로운 규정에 따라 모든 데이터 접근 내역을 꼼꼼히 감사(Audit)해야 합니다. 가장 안전하고 확실한 이사 방법은? AWS DataSync를 사용하여 데이터를 S3로 옮기고, AWS CloudTrail을 켜서 모든 데이터 이벤트를 기록합니다. AWS Snowcone 장비에 데이터를 담아 옮기고, CloudTrail로는 관리자 접속 기록만 남깁니다. S3 Transfer Acceleration의 고속 전송 기능을 써서 옮기고, CloudTrail로 데이터 이벤트를 기록합니다. Storage Gateway를 설치해 은근슬쩍 데이터를 넘기고, CloudTrail로는 관리자 이벤트만 기록합니다. 정답 확인 및 해설 📖 해설 정답은 A입니다. 온프레미스 NAS나 서버의 데이터를 S3로 대량 복사할 때 가장 효율적인 도구는 AWS DataSync입니다. 전송 중 암호화와 무결성 검사까지 해주니 믿고 쓸 수 있죠. 그리고 '데이터의 모든 수준에서 감사 액세스'가 필요하다면, 단순히 누가 로그인했는지만 보는 게 아니라 실제 데이터에 누가 손을 댔는지 기록하는 CloudTrail의 '데이터 이벤트(Data Events)' 로깅 기능을 활성화해야 합니다. 다른 옵션인 B와 D는 '관리 이벤트'만 기록해서는 규정 준수가 어렵고, C는 이미 네트워크 속도가 느린 온프레미스 환경에서는 큰 효과를 보기 어렵습니다. 💡 이 문제의 핵심 용어 AWS DataSync: 온프레미스와 AWS 사이에서 대량의 데이터를 빠르고 안전하게 동기화해주는 서비스 AWS CloudTrail Data Events: S3 객체 접근이나 Lambda 실행 같은 실제 리소스 내부의 활동까지 낱낱이 기록해주는 기능 Audit Access (감사 액세스): 보안이나 규정 준수를 위해 시스템의 모든 활동을 기록하고 나중에 확인할 수 있게 하는 것
Q427 Java 애플리케이션을 Apache Tomcat에 배포하고 데이터베이스는 MySQL을 쓰려 합니다. 고가용성을 유지하면서도 관리의 수고를 획기적으로 줄여주는 배포 방식은? 모든 코드를 Lambda 함수로 변환하고 API Gateway에 연결하여 운영합니다. AWS Elastic Beanstalk를 사용해 배포하고, 로드 밸런서와 롤링 업데이트 설정을 켭니다. 데이터베이스를 메모리 기반인 ElastiCache로 옮겨서 처리 속도를 극대화합니다. EC2 한 대에 모든 걸 직접 깔고 이미지를 구워둔 뒤, Auto Scaling 그룹으로 복제하며 씁니다. 정답 확인 및 해설 📖 해설 정답은 B입니다. Java와 Tomcat 처럼 정해진 환경(플랫폼)이 필요한 앱을 가장 편하게 배포하는 방법은 Elastic Beanstalk입니다. 코드만 업로드하면 서버(EC2), 로드 밸런서(ALB), 자동 확장(Auto Scaling) 설정을 AWS가 알아서 다 해줍니다. 특히 '롤링 업데이트'를 쓰면 서비스 중단 없이 새 버전을 배포할 수 있어 운영 편의성과 고가용성을 한 번에 잡을 수 있습니다. 다른 옵션인 A(Lambda)는 기존 Java 앱을 서버리스용으로 뜯어고치는 공사가 너무 크고, D는 모든 패치와 관리를 직접 해야 하므로 운영 오버헤드가 큽니다. 💡 이 문제의 핵심 용어 AWS Elastic Beanstalk: 애플리케이션의 배포, 관리, 확장을 자동으로 처리해 주는 PaaS(Platform as a Service) Apache Tomcat: Java 서블릿과 JSP를 실행할 수 있는 대표적인 웹 애플리케이션 서버(WAS) Rolling Deployment (롤링 배포): 서버들을 순차적으로 업데이트하여 서비스가 끊기지 않게 하는 배포 전략
Q428 API Gateway, Lambda, DynamoDB를 쓰는 서버리스 앱이 있습니다. Lambda 함수가 DB인 DynamoDB에 마음껏 읽고 쓸 수 있게 권한을 주는 가장 안전하고 '정석'적인 방법은? IAM 사용자를 따로 만들고 그 인증 키(Key)를 Lambda 환경 변수에 직접 적어 넣습니다. Lambda를 신뢰 대상으로 하는 IAM 역할을 만들고, DB 권한을 부여한 뒤 Lambda의 실행 역할로 지정합니다. 인증 키를 Systems Manager 파라미터 스토어에 암호로 숨겨두고 Lambda가 매번 꺼내 쓰게 합니다. DynamoDB 자체에 Lambda를 신뢰하도록 설정을 걸고, Lambda 코드 안에서 권한을 획득하게 짭니다. 정답 확인 및 해설 📖 해설 정답은 B입니다. AWS에서는 서비스 간의 권한 부여에 '열쇠(Key)'를 주고받지 않습니다. 대신 '역할(Role)'이라는 가상 신분증을 활용합니다. Lambda가 실행될 때 착용할 '실행 역할(Execution Role)'에 DynamoDB 권한을 넣어주면, AWS 내부망 안에서 별도의 비밀번호 없이도 안전하게 대화할 수 있습니다. 이것이 보안 사고를 원천 봉쇄하는 가장 강력한 보안 모범 사례입니다. 다른 옵션인 A와 C는 결국 '비밀번호(Key)'를 어디엔가 저장해야 한다는 약점이 있어 보안상 덜 안전합니다. 💡 이 문제의 핵심 용어 IAM Role (역할): 신뢰할 수 있는 대상(사람 또는 서비스)이 일시적으로 특정 권한을 갖도록 부여하는 신분 Execution Role (실행 역할): Lambda 함수가 실행될 때 행사할 수 있는 권한의 범위를 정의해 둔 특별한 역할 Least Privilege (최소 권한): 업무에 꼭 필요한 만큼의 권한만 주어 실수나 사고의 피해를 줄이는 보안 원칙
Q429 IAM 그룹에 복잡한 정책이 걸려 있습니다. us-east-1 리전의 모든 EC2 작업을 허용하되, 'StopInstances'와 'TerminateInstances'는 MFA(2단계 인증) 로그인을 안 하면 거부(Deny)한다는 정책입니다. 이 그룹원의 실제 권한은? us-east-1 리전의 모든 EC2 작업이 허용되며, 거부 문구는 무시됩니다. MFA 로그인을 하지 않는 한, us-east-1 리전의 모든 EC2 명령이 원천적으로 차단됩니다. MFA 로그인을 하면 모든 리전의 서버를 끄거나 지울 수 있으며, 다른 모든 작업도 가능합니다. MFA 인증을 해야만 us-east-1 서버를 끄거나 지울 수 있고, 다른 일반 작업은 그냥도 가능합니다. 정답 확인 및 해설 📖 해설 정답은 D입니다. AWS 정책에서 'Explicit Deny(명시적 거부)'는 모든 허용을 이깁니다. 이 정책은 서버를 끄거나 삭제하는(Stop/Terminate) 위험한 작업에 대해서만 'MFA가 없다면 무조건 거부'라는 자물쇠를 채워둔 것입니다. 따라서 일반적인 서버 목록 조회나 생성 같은 작업은 평소대로 할 수 있지만, 서버의 생사가 걸린 중요한 명령을 내릴 때만 MFA 인증을 요구하게 됩니다. 다른 옵션인 A는 거부 정책의 강력함을 무시한 것이고, B는 모든 권한이 아닌 특정 위험 작업만 거부한다는 점을 간과했습니다. 💡 이 문제의 핵심 용어 MFA (Multi-Factor Authentication): 로그인 시 비밀번호 외에 별도의 인증 코드(OTP 등)를 추가로 확인하는 2단계 인증 Explicit Deny (명시적 거부): 정책에서 'Deny'를 명시했을 경우, 다른 어떤 'Allow'보다 우선적으로 적용되는 강력한 권한 차단 Policy Evaluation Logic: 여러 정책이 충돌할 때 AWS가 어떤 권한을 최종적으로 허용할지 판단하는 내부 규칙
Q430 공장 센서가 쏟아내는 CSV 파일을 즉시 이미지 보고서로 바꾸고 싶습니다. 이미지는 한 달 뒤면 폐기해도 되지만, 원본 CSV는 1년에 두 번 있는 AI 모델 훈련을 위해 1년간 보관해야 합니다. 가장 알뜰한 조합은? (2개 선택) 에너지가 넘치는 EC2 스팟 인스턴스를 24시간 돌리며 파일을 변환하고 S3에 올립니다. CSV가 올라오는 즉시 Lambda 함수를 트리거해서 이미지로 변환한 뒤 S3에 저장합니다. S3 수명 주기 정책으로 CSV는 하루 뒤 Glacier로 보내고, 이미지 보고서는 30일 뒤 삭제합니다. CSV는 가성비 좋은 S3 One Zone-IA로 옮기고, 이미지는 30일 뒤 만료시킵니다. CSV는 S3 Standard-IA에 보관하고, 이미지는 용량이 중복되는 RRS 계층에 담습니다. 정답 확인 및 해설 📖 해설 정답은 B와 C입니다. 먼저 '즉시 변환'에는 서버를 띄울 필요 없이 파일이 오자마자 실행되는 Lambda(B)가 최적입니다. 그 후 저장 비용을 아끼는 게 핵심인데, 자주 안 보는 원본 CSV는 하루만 Standard에 뒀다가 가장 저렴한 창고인 Glacier(C)로 보내버리세요. AI 훈련은 미리 계획되니까 Glacier의 인출 시간(수 분~수 시간)은 문제가 안 되거든요. 이미지는 유효 기간이 한 달이니 30일 자동 삭제를 걸면 아주 깔끔합니다. 다른 옵션인 A는 서버 유지비가 아깝고, D(One Zone-IA)는 데이터 유실 위험이 있어 중요한 원본 저장용으로는 부적합합니다. 💡 이 문제의 핵심 용어 S3 Lifecycle Rule (수명 주기 규칙): 파일이 생성된 지 일정 시간이 지나면 자동으로 삭제하거나 저렴한 저장소로 옮겨주는 기능 S3 Glacier: 자주 안 쓰는 데이터를 아주 저렴한 가격으로 장기 보관해주는 아카이브 저장소 Event Trigger (이벤트 트리거): S3에 파일이 올라오는 등의 사건이 발생하면 자동으로 특정 프로그램(Lambda 등)을 실행시키는 장치
Q431 인기 온라인 게임의 실시간 점수판(상위 10명)을 표시하려 합니다. 게임 중 지연을 없애기 위해 읽기 성능이 매우 좋아야 하고, 중단된 시점의 점수도 안전하게 복원되어야 합니다. 추천하는 엔진은? 단순한 캐싱만 필요한 Memcached 클러스터를 RDS 앞에 둡니다. Redis용 ElastiCache를 구축하여 점수를 계산하고 정렬된 집합(Sorted Set)으로 저장합니다. CloudFront를 게임 화면 앞에 배치해서 점수판 페이지 전체를 캐싱합니다. RDS MySQL에 읽기 전용 복제본을 만들고 매번 실시간 쿼리를 날려 순위를 매깁니다. 정답 확인 및 해설 📖 해설 정답은 B입니다. 실시간 게임의 순위판(리더보드) 하면 무조건 Redis입니다. Redis는 'Sorted Set'이라는 천재적인 기능을 가지고 있어 점수만 넣으면 실시간으로 순위를 매겨줍니다. 게다가 하드디스크가 아닌 메모리에서 동작하니 응답 속도가 1밀리초도 안 걸릴 만큼 빠르죠. 또한 스냅샷 기능을 통해 데이터를 안전하게 보관하고 복원할 수도 있어 게임 앱에 가장 완벽한 짝꿍입니다. 다른 옵션인 A(Memcached)는 데이터 정렬 기능이나 저장 기능이 부족하고, D는 DB 부하가 심해 실시간 리더보드용으로는 너무 무겁습니다. 💡 이 문제의 핵심 용어 Redis Sorted Set (정렬된 집합): 데이터에 점수(Score)를 부여해 실시간으로 순위나 순서를 관리해주는 Redis만의 특별한 데이터 구조 In-memory Data Store: 모든 데이터를 휘발성 메모리(RAM)에 담아 하드디스크 기반 DB보다 수백 배 빠른 속도를 내는 저장소 Leaderboard (리더보드): 게임 등에서 사용자의 성적을 순서대로 보여주는 순위표
Q432 기계 학습(ML) 모델을 훈련시킨 뒤, 이를 비즈니스 대시보드와 직접 연결해 데이터를 시각화하고 싶습니다. 운영 수고가 가장 적은 '매니지드 서비스' 조합은? AWS Glue로 모델을 만들고, OpenSearch(Elasticsearch)를 연동해 시각화합니다. Amazon SageMaker로 모델을 훈련하고, Amazon QuickSight로 대시보드를 만듭니다. AWS Marketplace의 전용 이미지를 구매해 EC2에 깔고, OpenSearch로 데이터를 봅니다. QuickSight 안에서 계산된 필드를 코딩해서 모델을 직접 구현하고 훈련시킵니다. 정답 확인 및 해설 📖 해설 정답은 B입니다. 현대적인 AI/BI 워크플로의 정석입니다. 기계 학습 모델을 만들고 훈련하는 일은 SageMaker가 가장 잘하고, 그렇게 분석된 결과를 멋진 그래프와 대시보드로 뽑아내는 건 QuickSight가 전문가입니다. 두 서비스는 서로 아주 친하게 연결되어 있어, 클릭 몇 번으로 ML 분석 결과를 경영진을 위한 리포트로 변신시킬 수 있습니다. 다른 옵션인 A와 C는 직접 서버를 관리하거나 복잡한 설정을 해야 하는 수고가 훨씬 많이 들어서 '운영 오버헤드 최소화' 조건에 안 보입니다. 💡 이 문제의 핵심 용어 Amazon SageMaker: 데이터 준비부터 모델 구축, 훈련, 배포까지 한 곳에서 해결하는 완전 관리형 ML 플랫폼 Amazon QuickSight: 데이터를 분석해서 시각적인 그래프와 대시보드로 보여주는 비즈니스 인텔리전스(BI) 도구 Operational Overhead (운영 오버헤드): 시스템을 직접 관리하고 유지 보수하느라 쏟게 되는 시간과 노력 비용
Q433 여러 AWS 계정을 운영 중인데, 관리 비용을 추적하기 위한 '비용 태그(Tag)'를 누군가 마음대로 고치거나 지우지 못하게 철저히 규제하고 싶습니다. 가장 강력한 조치는? Config 규칙을 만들어서 태그가 바뀌면 즉시 알람을 주고 자동으로 원상복구합니다. CloudTrail을 켜서 누가 태그를 바꿨는지 기록하고 매일 감사 보고서를 씁니다. Organizations의 SCP(서비스 제어 정책)를 써서 특정 조건 외엔 태그 수정을 아예 금지(Deny)합니다. CloudWatch 로그를 분석해서 태그 변경 신호가 오면 보안팀에 이메일을 보냅니다. 정답 확인 및 해설 📖 해설 정답은 C입니다. 여러 계정을 관리하는 Organizations 환경에서 '절대 넘지 말아야 할 선'을 정하는 마스터키는 SCP입니다. SCP를 통해 "부여된 특정 관리자 외에는 누구도 태그를 수정할 수 없다"라고 박아버리면, 개별 계정의 관리자라 할지라도 이 철벽 정책을 뚫을 수 없습니다. 사후 약방문식의 알람(A, B, D)보다 훨씬 확실한 예방책입니다. 다른 옵션들은 이미 규정이 어겨진 뒤에 수습하는 것이라 '수정 방지'라는 목적 달성에는 SCP보다 약합니다. 💡 이 문제의 핵심 용어 SCP (Service Control Policy): 조직 내의 모든 계정에 대해 어떤 행동을 허용할지 중앙에서 통제하는 강력한 가드레일 정책 AWS Organizations: 여러 AWS 계정을 그룹화하여 통합 결제와 보안 정책을 편리하게 관리하는 서비스 Tagging (태깅): 리소스를 관리하기 위해 꼬리표(이름, 프로젝트명, 비용 부서 등)를 붙이는 행위
Q434 DynamoDB와 로드 밸런서를 쓰는 앱을 다른 리전에서도 사용할 수 있게 재해 복구(DR)를 준비하려 합니다. 평소 서비스 중단 시간을 거의 제로에 가깝게 유지하고 싶다면? 다른 리전에 서버와 로드 밸런서를 미리 다 깔아두고, DynamoDB를 전역 테이블(Global Tables)로 구성한 뒤 Route 53 DNS 장애 조치를 겁니다. 필요할 때만 서버를 생성할 수 있게 CloudFormation 템플릿만 잘 보관해두고, 장애가 나면 그때서야 다른 리전에 배포를 시작합니다. CloudFormation으로 모든 인프라 틀만 잡아두고, DynamoDB는 전역 테이블로 실시간 동기화만 해두었다가 유사시 수동으로 복구합니다. 다른 리전에 인프라를 마련해두고, CloudWatch 알람이 울리면 람다가 출동해 DNS 주소를 하나씩 바꿔주게 코딩합니다. 정답 확인 및 해설 📖 해설 정답은 A입니다. '다운타임 최소화(가용성 극대화)'의 핵심은 이미 준비된 상태로 대기하는 'Active-Passive' 혹은 'Active-Active' 구조입니다. DynamoDB 전역 테이블을 쓰면 두 리전의 데이터가 실시간으로 똑같아지며, Route 53의 상태 확인(Health Check)과 장애 조치(Failover) 설정을 통해 메인 리전이 죽는 즉시 전 세계 트래픽을 보조 리전으로 자동으로 돌릴 수 있습니다. 이것이 가장 우아하고 빠른 재해 복구 방식입니다. 다른 옵션인 B와 C는 장애가 터진 후에야 서버를 올리는 식이라 로딩 속도가 느리고 서비스 중단 시간이 수 분에서 수 시간까지 발생할 수 있습니다. 💡 이 문제의 핵심 용어 DynamoDB Global Tables: 여러 AWS 리전에서 데이터를 자동으로 양방향 복제해주는 무한 확장 데이터베이스 서비스 Route 53 DNS Failover: 서버 상태를 감시하다가 죽으면 즉시 정상적인 다른 서버 주소로 전 세계 접속을 안내하는 교통 정리 서비스 Disaster Recovery (DR): 지진이나 하드웨어 장애 등으로 서비스가 중단되었을 때 신속하게 복구하기 위한 비상 계획
Q435 온프레미스에 있는 20TB짜리 거대 MySQL DB를 2주 안에 클라우드로 이사시켜야 합니다. 서비스 중단은 최대한 짧아야 하고 비용도 알뜰하게 하려면 어떤 순서로 진행할까요? Snowball Edge 장비를 빌려 데이터를 담아 보낸 뒤, DMS(데이터베이스 마이그레이션 서비스)로 그동안 바뀐 내용만 실시간 복제하며 이사를 마무리합니다. 초대형 트럭인 Snowmobile을 불러서 데이터를 실어 나르고, DMS를 통해 실시간 동기화를 맞춥니다. GPU가 달린 연산 특화 Snowball 디바이스를 주문해서 모델링까지 한 번에 끝내며 이사합니다. 1Gbps 전용선(Direct Connect)을 급하게 새로 신청해서 24시간 내내 네트워크 전송만 돌립니다. 정답 확인 및 해설 📖 해설 정답은 A입니다. 20TB는 네트워크로 보내기엔 꽤 큰 양이고, 2주는 넉넉한 시간이 아닙니다. 이럴 땐 물리적으로 장비를 택배로 주고받는 Snowball Edge가 가장 확실하고 알뜰합니다. 기기에 전체 데이터를 한 번 담아 보내면(Full Load), 전송되는 며칠 동안 새로 생긴 데이터들만 DMS가 네트워크를 통해 쫄쫄쫄 실시간 복제(CDC)해주면 됩니다. 그러면 마지막에 스위치만 탁 끄고 AWS 쪽으로 넘어가면 끝이죠. 다른 옵션인 B(Snowmobile)는 보통 엑사바이트(EB)급 초대형 데이터용이고, D는 전용선 설치에만 수개월이 걸려 기간 내에 불가능합니다. 💡 이 문제의 핵심 용어 AWS Snowball Edge: 대용량 데이터를 안전하게 옮기기 위해 대여해주는 물리적 저장 장치 박스 AWS DMS (Database Migration Service): 데이터베이스 간에 데이터를 옮기고, 이사 도중 발생하는 변화까지 실시간으로 복제해주는 서비스 CDC (Change Data Capture): 데이터베이스의 변경된 내용만 즉시 포착해서 다른 곳에 똑같이 반영하는 기술
Q436 클라우드로 옮긴 PostgreSQL DB의 워크로드가 점점 커지고 있습니다. 서버 인프라를 더 추가하지 않고도 비용은 아끼면서 더 많은 요청을 처리하게 성능을 높이는 묘책은? 예약 인스턴스(Reserved Instances)를 구매해 비용을 깎고, 남는 예산으로 DB 서버 체급(스케일 업)을 높입니다. RDS 다중 AZ 설정을 켜서 서버 대수를 두 배로 늘려 평소 성능을 뻥튀기합니다. Snowball Edge를 주문해서 DB 연산 처리를 외부 장치에 일부 맡기는 복잡한 설계를 도입합니다. 언제든 꺼질 수 있지만 저렴한 '온디맨드' 방식만 고수하며 버팁니다. 정답 확인 및 해설 📖 해설 정답은 A입니다. 성능은 모자라고 돈은 아끼고 싶다면 우선 '결제 방식'부터 손보는 게 순서입니다. 1~3년 장기 사용을 약속하는 예약 인스턴스(RI)를 사면 요금이 최대 70%까지 할인됩니다. 이렇게 아낀 돈으로 DB 서버의 사양을 더 큰 것으로(Scale-up) 올려 사용하면, 인프라의 복잡한 구조 변경 없이도 강력한 힘을 발휘할 수 있습니다. 다른 옵션인 B(다중 AZ)는 장애 대비용이라 평소 성능과는 상관없고, D(온디맨드)는 가장 비싼 방식이라 비용 절감과는 거리가 멉니다. 💡 이 문제의 핵심 용어 Reserved Instance (RI, 예약 인스턴스): 장기 약정 할인을 통해 저렴하게 서버 자원을 이용하는 요금제 Scale-up (수직 확장): 서버의 대수를 늘리는 대신, 한 대의 서버를 더 좋은 CPU나 메모리로 바꿔 성능을 높이는 작업 On-demand (온디맨드): 약정 없이 쓴 만큼만 실시간으로 요금을 내는 가장 일반적인 방식
Q437 우리 쇼핑몰에 불법 프로그램으로 의심되는 기계적 요청들이 쏟아져 성능이 떨어지고 있습니다. IP 주소까지 계속 바꿔가며 들어오는 이 영리한 공격을 합법적인 손님 피해 없이 막아내려면? Amazon Inspector를 설치해서 우리 웹 서버의 보안 취약점을 매일 스캔하게 합니다. AWS WAF(웹 방화벽)를 설치하고 '속도 제한(Rate-based)' 규칙을 설정해 무리한 요청을 차단합니다. 로드 밸런서(ALB)의 네트워크 ACL 규칙에 매번 바뀌는 공격자 IP를 수동으로 등록해 막습니다. GuardDuty를 켜서 위험 신호를 감지하고, 비정상 트래픽 감지 시 전 계정의 네트워크를 잠시 차단합니다. 정답 확인 및 해설 📖 해설 정답은 B입니다. 범인이 IP 주소를 바꿔가며 공격해도 '너무 자주 들어온다'는 특징은 숨길 수 없습니다. WAF의 속도 기반(Rate-based) 규칙은 "어떤 손님이든 5분 동안 2,000번 넘게 호출하면 차단해!"라고 규칙을 정해두면 알아서 범인을 걸러줍니다. 쾌적한 쇼핑몰을 유지하면서 공격자만 쏙쏙 골라내는 가장 세련된 방패입니다. 다른 옵션인 C(ACL)는 범인이 IP를 바꿀 때마다 사람이 24시간 대기하며 새로 적어야 하므로 불가능에 가깝고, A(Inspector)는 서버 설정의 구멍을 찾는 것이지 실시간 공격을 막는 도구는 아닙니다. 💡 이 문제의 핵심 용어 AWS WAF (Web Application Firewall): 웹 사이트의 입구에서 악성 요청이나 해킹 시도를 필터링해주는 웹 방화벽 서비스 Rate-based Rule (속도 기반 규칙): 특정 시간 동안 요청을 너무 많이 보내는 사용자를 자동으로 차단하는 똑똑한 보안 규칙 DDoS (Distributed Denial of Service): 수많은 요청을 퍼부어 서비스가 제대로 작동하지 못하게 방해하는 공격
Q438 외부 감사팀에 우리 회사 DB 데이터를 공유해야 하는데, 보안을 위해 감사팀의 자체 AWS 계정이 필요하고 데이터 복사본도 하나 줘야 합니다. 가장 안전한 공유 방법은? DB 읽기 전용 복제본을 만들어서 감사팀 아이디를 등록해 직접 접속하게 해줍니다. DB 내용을 엑셀 파일로 뽑아서 S3에 올린 뒤, 감사용 IAM 사용자를 새로 만들어 파일 주소를 줍니다. 스냅샷을 S3에 복사한 뒤, 우리 회사 마스터 키(Access Key)를 감사팀에 통 크게 공유합니다. DB의 '암호화된 스냅샷'을 만들고, 감사팀 계정 번호를 지정해 스냅샷과 KMS 암호 키 권한을 공유합니다. 정답 확인 및 해설 📖 해설 정답은 D입니다. 클라우드에서 데이터를 건네줄 때는 '물리적 전달'이 아니라 '권한 부여'를 이용합니다. DB를 통째로 복사한 스냅샷을 만든 뒤, 운영팀 계정에서 감사팀 계정 번호로 "이 스냅샷 보게 해줄게"라고 권한을 넘기는 것이죠. 단, 암호화된 스냅샷은 암호를 푸는 키(KMS) 권한도 함께 줘야 감사팀 리전에서 정상적으로 복원할 수 있습니다. 이것이 계정 간 데이터 이동의 정석입니다. 다른 옵션인 C는 우리 회사 마스터 키를 넘기는 위험천만할 짓이고, A는 라이브 DB에 직접 접속하게 하는 것이라 보안상 위험합니다. 💡 이 문제의 핵심 용어 DB Snapshot (DB 스냅샷): 데이터베이스의 특정 시점 상태를 통째로 찍어둔 사진(백업본) Cross-account Sharing (계정 간 공유): 서로 다른 AWS 계정끼리 리소스나 데이터 접근 권한을 안전하게 주고받는 기술 KMS Key Policy (키 정책): 암호화된 데이터를 누가 해독할 수 있는지 열쇠의 사용 권한을 정의하는 문서
Q439 처음에 VPC를 만들 때 IP 주소 범위를 너무 작게 설정해서 곧 주소가 바닥날 위기입니다. 운영을 멈추지 않고 이 문제를 해결하는 가장 쉬운 방법은? 기존 VPC 설정에 들어가서 보조(Secondary) IPv4 CIDR 블록을 추가하고 새 서브넷을 만듭니다. 새로운 커다란 VPC를 하나 더 만들고, 기존 VPC와 '피어링'을 맺어 복잡하게 연결합니다. Transit Gateway를 도입해서 여러 개의 작은 VPC들을 하나로 묶는 대공사를 시작합니다. 두 번째 VPC를 만들고 사이트 간 VPN을 뚫어서 사내 망처럼 빙 돌아가게 연결합니다. 정답 확인 및 해설 📖 해설 정답은 A입니다. 인터넷 주소(IP)가 부족할 때 집을 새로 지을(VPC 이사) 필요는 없습니다. 그냥 거실을 하나 더 넓히듯이 기존 VPC에 추가적인 IP 대역(Secondary CIDR)을 붙여주기만 하면 됩니다. 그러면 기존 서버들은 그대로 가동하면서, 넓어진 새 공간에 새로운 서버들을 넉넉히 배치할 수 있습니다. 관리 효율 면에서도 이보다 더 편한 건 없습니다. 다른 옵션들은 리전을 넘나들거나 네트워크 설정을 완전히 뜯어고쳐야 하므로 운영 오버헤드가 매우 큽니다. 💡 이 문제의 핵심 용어 Secondary CIDR Block: 이미 생성된 VPC에 추가로 할당할 수 있는 보조 IP 주소 범위 VPC (Virtual Private Cloud): AWS 클라우드 안에 마련한 우리 회사 전용 가상 네트워크 보금자리 IP Address Exhaustion: VPC 내의 모든 IP 주소를 다 사용해버려 더 이상 서버를 만들 수 없는 난처한 상황
Q440 MySQL DB 테스트를 마치고 정리하기 전에 mysqldump 파일과 스냅샷 백업을 둘 다 챙겼습니다. 이제 새 테스트를 위해 'Aurora MySQL'로 DB를 새로 띄우려 할 때 가능한 방법은? (2개 선택) 기존 RDS 스냅샷을 클릭해서 바로 'Aurora로 복원' 기능을 이용해 가져옵니다. RDS 스냅샷을 S3에 올린 뒤 아주 복잡한 절차를 거쳐 Aurora로 변환해 가져옵니다. 데이터베이스 덤프(파일)를 S3에 올린 뒤, Aurora에서 'S3로부터 데이터 가져오기'를 시전합니다. DMS 서비스를 새로 가동해서 백업본 사진(스냅샷)을 실시간으로 Aurora에 읊어줍니다. 덤프 파일을 S3에 올리고 DMS를 써서 파일을 한 줄씩 읽어 Aurora에 채워 넣게 합니다. 정답 확인 및 해설 📖 해설 정답은 A와 C입니다. 가장 빠른 '쇼트컷'은 스냅샷 바로 복제(A)입니다. RDS MySQL 스냅샷은 클릭 몇 번으로 Aurora용 인스턴스로 변신할 수 있습니다. 만약 버전이 다르거나 세밀한 데이터 조정이 필요하다면, 덤프 파일을 S3라는 중간 창고에 올려두고 Aurora가 이를 쑥 빨아들이게(C) 할 수도 있습니다. 두 방법 모두 튼튼하게 검증된 표준 마이그레이션 기술입니다. 다른 옵션인 D나 E는 굳이 안 써도 될 DMS 도구까지 꺼내 드는 셈이라 절차가 훨씬 더 복잡해집니다. 💡 이 문제의 핵심 용어 RDS Snapshot Restore to Aurora: 기본 RDS 백업본을 이용해 성능이 더 좋은 Aurora DB 인스턴스를 즉시 생성하는 기능 mysqldump: MySQL 데이터베이스의 내용과 구조를 텍스트 파일(SQL문)로 뽑아내는 가장 대중적인 백업 도구 Amazon Aurora: AWS가 제공하는 최고 사양의 고성능 관계형 데이터베이스 엔진
Q441 고객들이 대용량 이미지를 자꾸 불러오는 바람에 정적 서버 대수가 폭발적으로 늘어나 요금이 걱정됩니다. 웹 성능은 높이면서 서버 비용을 가장 드라마틱하게 줄일 신의 한 수는? 온디맨드 인스턴스 요금이 비싸니 모두 예약 인스턴스(RI)로 바꿔서 할인을 받습니다. 죽어도 상관없는 스팟 인스턴스를 주력으로 써서 서버 유지비를 90% 아낍니다. 정적 콘텐츠를 S3 버킷에 담고, 그 앞에 CloudFront(CDN) 배포판을 깔아 전 세계에 배달합니다. API Gateway와 Lambda를 이용해 이미지 파일을 요청 올 때마다 생성해서 보여줍니다. 정답 확인 및 해설 📖 해설 정답은 C입니다. 서버가 바쁜 이유가 '이미지 배달' 때문이라면, 그 일감을 서버(EC2)에게서 뺏어와야 합니다. 정적 파일(이미지, CSS 등)을 S3에 던져두고 CloudFront라는 전담 배달부를 고용하세요. 그러면 사용자는 서버까지 올 필요 없이 가장 가까운 배달 거점에서 이미지를 받아갑니다. 서버 부하가 획기적으로 줄어드니 대수를 대폭 낮출 수 있고, 고객은 로딩 속도가 빨라져서 행복해집니다. 다른 옵션인 A와 B는 서버의 '대수' 자체를 줄여주지는 못하고, D는 오히려 연산 비용이 더 많이 나올 수 있는 과한 설계입니다. 💡 이 문제의 핵심 용어 Amazon CloudFront: 전 세계Edge 로케이션에 콘텐츠를 복제해두고 전송 속도를 높이는 캐시 서비스(CDN) Static Content (정적 콘텐츠): 누가 봐도 똑같은 이미지, 영상, 스타일 시트처럼 서버 연산이 필요 없는 파일들 Offloading (오프로딩): 서버가 하던 일을 다른 전문 서비스(S3, CloudFront 등)에 맡겨서 서버의 짐을 덜어주는 작업
Q442 엔지니어링 팀이 가진 데이터 중 꼭 필요한 것만 골라 데이터 과학 팀에게 '안전하게' 공유하고 싶습니다. 여러 계정에 흩어진 데이터를 클릭 몇 번으로 통제하며 공유하는 가장 세련된 도구는? 공용 계정을 하나 파서 모든 데이터를 복사해 놓고, 복잡한 IAM 규칙을 짜서 팀원들을 모셔옵니다. 데이터가 든 모든 계정에 일일이 접속해서 Lake Formation 수동 권한 부여 명령을 날립니다. AWS Data Exchange에 우리 데이터 상품을 비공개로 등록하고 팀원들이 구독하게 합니다. AWS Lake Formation의 '태그 기반 권한 제어(TBAC)'를 이용해 계정 간에 한꺼번에 권한을 쏩니다. 정답 확인 및 해설 📖 해설 정답은 D입니다. 데이터 양이 페타바이트(PB)급에 달한다면 '복사(A)'는 돈 낭비입니다. 'Lake Formation'은 데이터 레이크 전용 보안 사령부입니다. 여기서 데이터마다 '비밀', '공개' 같은 태그를 붙여두고 "데이터 과학 팀에겐 '공개' 태그 데이터만 보여줘!"라고 설정하면, 여러 계정을 넘나들며 권한 관리가 한 번에 끝납니다. 운영 수고가 가장 적고 세련된 방식입니다. 다른 옵션인 B는 규모가 커지면 관리가 불가능해지고, C는 주로 외부 업체와 유료 데이터를 거래할 때 쓰는 서비스입니다. 💡 이 문제의 핵심 용어 AWS Lake Formation: 데이터 레이크를 구성하고 보안, 권한 관리를 중앙에서 통제하는 통합 대시보드 Tag-based Access Control (TBAC): 개별 주소 대신 '태그'라는 속성값을 기준으로 권한을 부여하는 스마트한 보안 기법 Data Lake (데이터 레이크): 정제되지 않은 원본 데이터를 엄청난 양으로 한 곳에 모아둔 거대 저장소
Q443 전 세계 사용자가 기가바이트(GB) 크기의 대용량 파일을 수시로 올리고 내립니다. 속도는 빛의 속도여야 하고 전송 지연은 최소여야 할 때, 가장 가성비 좋은 하이테크 솔루션은? S3 Transfer Acceleration 기능을 켜서 전용 고속 고속도로를 타고 전송하게 합니다. S3 설정 중 CacheControl 헤더를 아주 정교하게 조절해서 브라우저 캐시 성능을 높입니다. 전 세계 모든 리전에 EC2를 깔고 CloudFront로 묶어서 어마어마한 비용을 지출합니다. 대용량 메모리를 가진 ElastiCache를 서버마다 붙여서 모든 파일을 메모리에 담아둡니다. 정답 확인 및 해설 📖 해설 정답은 A입니다. 전 세계 사용자가 '업로드'와 '다운로드'를 동시에 빠르게 하려면 S3 Transfer Acceleration이 정답입니다. 이 기능을 켜면 사용자는 집 근처 AWS 전용 통로(Edge Location)까지만 파일을 던지면 됩니다. 그 후엔 AWS가 가진 초고속 전용 전용선을 타고 S3 버킷까지 데이터가 날라가죠. GB급 대용량 파일을 전송할 때 지연 시간을 줄여주는 가장 확실한 처방전입니다. 다른 옵션인 C는 비용이 감당 안 될 수준으로 불어날 것이고, D는 GB급 파일을 수억 개 담기엔 메모리 비용 비효율이 너무 큽니다. 💡 이 문제의 핵심 용어 S3 Transfer Acceleration: 전 세계에 흩어진 사용자가 AWS의 전용 네트워크 인프라를 이용해 S3에 파일을 고속으로 전송할 수 있게 돕는 기능 Edge Location (엣지 로케이션): 사용자 근처에 배치된 AWS의 소규모 데이터 센터 거점으로, 전송 통로 역할을 함 Latency (지연 시간): 데이터 요청을 보낸 뒤 응답이 돌아올 때까지 걸리는 정체 시간
Q444 직원의 실수로 DB가 삭제되어 하루 동안 사이트가 마비되는 참사가 있었습니다. 다시는 이런 일이 없도록 '안정성'을 끝까지 끌어올리는 인프라 개선안은? 서버 한 대는 없애고 남은 한 대에 '삭제 방지'를 걸고, DB도 다중 AZ와 삭제 방지를 켭니다. DB에 '다중 AZ'와 '삭제 방지'를 걸고, 서버(EC2)는 로드 밸런서(ALB)와 Auto Scaling 그룹 뒤로 숨깁니다. 비상용 DB를 하나 더 사고, Lambda가 양쪽 DB에 동시에 데이터를 복사하도록 코드를 짭니다. 서버를 스팟 인스턴스로 바꿔서 아낀 돈으로 CloudWatch 알람을 도배하고, DB엔 다중 AZ만 켭니다. 정답 확인 및 해설 📖 해설 정답은 B입니다. 재난 대응과 실수 방지라는 두 마리 토끼를 잡아야 합니다. 먼저 DB에는 '삭제 방지' 자물쇠를 채우고, 한쪽 데이터 센터가 불나도 끄떡없는 '다중 AZ' 설정을 켭니다. 서버 역시 수동으로 한두 대 띄우지 말고, 로드 밸런서(ALB)가 상태를 확인하다가 죽으면 Auto Scaling이 새 서버를 즉시 찍어내게 만드세요. 이렇게 '관리자가 없어도 알아서 돌아가는' 구조가 바로 Well-Architected 안정성의 표본입니다. 다른 옵션인 D처럼 스팟 인스턴스를 쓰면 서버가 갑자기 사라질 수 있어 '안정성' 목적에는 맞지 않습니다. 💡 이 문제의 핵심 용어 Termination Protection (삭제/종료 방지): 중요한 서버나 DB를 실수로 지우지 못하게 한 번 더 잠금 장치를 거는 기능 Multi-AZ (RDS): 두 개의 서로 다른 데이터 센터에 DB를 동시에 운영하여, 한쪽이 고장 나도 수 초 내에 자동으로 복구하는 고가용성 옵션 High Availability (고가용성): 어떤 장애가 발생해도 서비스가 멈추지 않고 계속 돌아갈 수 있는 성질
Q445 사내 NAS에 든 700TB의 거대 데이터를 90일 안에 옮겨야 합니다. 이사 도중에도 직원은 파일을 계속 수정하고 사용해야 할 때, 중단 없이 가장 효율적으로 옮기는 기사는? 사내 망에 DataSync 에이전트를 설치하고, S3 버킷으로 '증분 복사'를 시작합니다. Snowball 박스에 데이터를 담아 보낸 뒤, S3 버킷을 사내 서버에 마운트해 주는 복잡한 마술을 부립니다. 전용선(Direct Connect)을 통해 매일 밤 수동으로 파일을 하나하나 복사해서 S3로 옮깁니다. 옛날 방식대로 테이프에 담아 택배로 보내고, 그 사이 바뀌는 파일은 운에 맡깁니다. 정답 확인 및 해설 📖 해설 정답은 A입니다. 700TB를 90일 안에 옮기려면 매일 대량의 데이터를 안정적으로 쏴야 합니다. AWS DataSync는 이 일에 가장 최적화된 일꾼입니다. 처음 한 번 전체를 복사한 뒤(Full Sync), 그 사이 수정된 '바뀐 부분'만 쏙쏙 골라 실시간으로 덧칠해주듯 옮겨주니(Incremental Sync) 이사 중에도 직원이 파일을 쓰는 데 아무 문제가 없습니다. 10Gbps 광대역 전용선까지 있다면 더할 나위 없이 빠른 이사가 가능합니다. 다른 옵션인 B(Snowball)는 장비를 주문하고 받는 시간 때문에 '실시간 수정 사항 반영'을 챙기기가 매우 까다롭습니다. 💡 이 문제의 핵심 용어 AWS DataSync Agent: 사내 서버에 설치되어 파일의 변화를 감시하고 AWS로 안전하게 쏘아 올리는 소프트웨어 일꾼 Incremental Transfer (증분 전송): 모든 걸 다시 보내지 않고 마지막 전송 이후에 '바뀐 부분'만 찾아서 보내는 효율적인 방식 Hybrid Environment (하이브리드 환경): 사내 데이터 센터와 클라우드를 전용선 등으로 연결해 마치 한 건물 안에 있는 것처럼 쓰는 구성
Q446 중요한 PDF 문서들을 S3에 저장하는데, 법규상 한 번 저장하면 7년 동안은 누구도 삭제하거나 고칠 수 없게 '박제'해야 합니다. 운영 수고가 가장 적은 보안 잠금 장치는? 버전 관리(Versioning) 기능을 켜고 7년 수명 주기 삭제와 MFA 삭제 인증을 걸어둡니다. S3 객체 잠금의 '거버넌스(Governance)' 모드로 7년 알람을 걸고, 전 직원이 복사본을 유지하게 합니다. S3 객체 잠금의 '규정 준수(Compliance)' 모드로 7년 보존을 걸고, 기존 파일들도 복합 복사해서 잠급니다. 규정 준수 모드의 객체 잠금을 켠 뒤, S3 배치 작업(Batch Operations)을 돌려 수억 개의 기존 파일까지 한꺼번에 규정대로 가져와 잠금 처리합니다. 정답 확인 및 해설 📖 해설 정답은 D입니다. 'Compliance(규정 준수)' 모드는 관리자 할아버지가 와도 7년 전에는 절대 못 지우는 강력한 금고 모드입니다. 새로 생기는 파일은 설정을 켜면 그만이지만, 이미 수억 개가 쌓인 '기존 파일'들에게도 이 잠금장치를 채우는 게 일이죠. 이때 'S3 배치 작업'을 쓰면 수억 개의 파일에 일일이 자물쇠를 채우는 단순 반복 노가다를 클릭 한 번으로 끝내줍니다. 운영 효율 면에서 완벽한 정답입니다. 다른 옵션인 A(버전 관리)는 관리자가 삭제 마커를 지우면 결국 파일이 날아갈 수 있어 '법적 박제'로는 부족합니다. 💡 이 문제의 핵심 용어 S3 Object Lock (객체 잠금): 한 번 저장된 파일을 일정 기간 동안 절대 수정하거나 지우지 못하게 하는 WORM(Write Once Read Many) 기능 Compliance Mode (규정 준수 모드): 루트 사용자(Root)조차도 보존 기간 내에는 파일을 지울 수 없는 가장 강력한 잠금 모드 S3 Batch Operations: 수백만 혹은 수억 개의 S3 객체에 대해 권한 변경, 태그 붙이기 등의 공유 작업을 대량으로 처리해 주는 도구
Q447 Lambda와 API Gateway로 만든 웹 앱을 여러 리전에 배포해 리전 전체 장애에 대비하려 합니다. 평소에는 전 세계 손님을 가장 가까운 리전으로 안내하다가 한쪽이 죽으면 알아서 돌려줄 서비스는? Amazon Route 53의 '상태 확인'과 '활성-활성(Active-Active)' 장애 조치 구성을 사용합니다. CloudFront 배포판을 만들고 리전별 주소를 오리진으로 등록해 알아서 배달하게 합니다. 리전 간을 잇는 전송 게이트웨이(Transit Gateway)를 세우고 수동으로 경로를 조절합니다. 메인 리전에 거대한 로드 밸런서(ALB)를 세우고 다른 리전의 주소를 향하게 쏩니다. 정답 확인 및 해설 📖 해설 정답은 A입니다. 글로벌 서비스의 관문은 Route 53입니다. 여기에는 '지연 시간 라우팅'이나 '태평양 건너오기 전 주소 안내' 같은 똑똑한 기능들이 많습니다. 특히 리전별 상태를 감시하다가(Health Check) 한 리전이 폭격(?)을 맞아 죽으면, 즉시 살아있는 다른 리전의 IP 주소를 손님들에게 알려주는 '장애 조치(Failover)' 설정이 재해 복구의 핵심입니다. 다른 옵션인 D처럼 메인 리전에 ALB를 세우면, 그 리전 자체가 죽었을 때 서비스 전체가 마비되는 싱글 포인트 장애를 초래하게 됩니다. 💡 이 문제의 핵심 용어 Amazon Route 53: 전 세계에서 가장 믿음직한 AWS의 클라우드 DNS 서비스로, 트래픽의 교통 정리를 담당함 Active-Active Configuration: 여러 리전을 동시에 가동하여 트래픽을 분산하고, 하나가 죽으면 남은 리전이 모든 부하를 감당하게 하는 구조 Health Check (상태 확인): 서버가 살아있는지 주기적으로 핑(Ping)을 날려보고 죽으면 즉시 목록에서 제외하는 감시 장치
Q448 관리(Management)용 VPC는 VPN 한 줄로 우리 회사와 연결되어 있고, 운영(Production)용 VPC는 전용선(DX) 두 줄로 연결되어 있습니다. 이 아키텍처에서 '줄 하나 끊기면 끝장'인 취약 지점은? VPC 피어링이 줄 하나뿐이라 이 연결이 끊기면 두 VPC 사이가 단절됩니다. 운영용 VPC의 가상 프라이빗 게이트웨이가 한 개뿐이라 기계 고장 시 위험합니다. 관리용 VPC의 고객 게이트웨이(사내 장비)가 한 대뿐입니다. 두 번째 장비를 들여 고장 대비를 해야 합니다. 피어링 대신 전송 게이트웨이를 안 쓴 게 모든 비극의 시작입니다. 정답 확인 및 해설 📖 해설 정답은 C입니다. 운영팀은 전용선(DX)을 두 줄이나 끌어와서 튼튼하게 준비했는데, 관리팀은 사내 데이터 센터에 장비를 한 대(Customer Gateway)만 두고 VPN 한 줄에 의존하고 있습니다. 만약 이 회사 장비가 고장 나거나 인터넷 선이 끊기면 관리 작업 자체가 불가능해지죠. 진정한 고가용성을 위해서는 사내에도 두 대 이상의 장비를 두고 다중 VPN 터널을 뚫어야 비로소 '격벽'이 완성됩니다. 다른 옵션인 A(피어링)는 AWS 내부의 소프트웨어적 연결이라 물리적 전선처럼 쉽게 끊어지는 성질의 것이 아닙니다. 💡 이 문제의 핵심 용어 Customer Gateway (고객 게이트웨이): AWS VPN을 연결하기 위해 우리 회사 사무실에 설치된 실제 물리 방화벽이나 라우터 장비 Single Point of Failure (단일 실패 지점): 그놈 하나만 죽으면 전체 시스템이 마비되는 아키텍처상의 아킬레스건 VPN Redundancy: 장애 시에도 통신이 유지되도록 여러 개의 연결 통로를 확보하는 기술
Q449 Oracle 기반 앱을 AWS로 빨리 옮겨야 하는데, 타사 제공 기능을 쓰기 위해 DB 내부 '시스템 관리 권한'이 꼭 필요합니다. 일반 RDS는 이걸 안 빌려주는데, 어떡하죠? 일반 Amazon RDS for Oracle로 옮기고, 안 되는 기능은 람다 코딩으로 대체해서 완성합니다. DB 관리는 AWS가 해주면서 OS나 DB 옵션은 내 마음대로 주무를 수 있는 'RDS Custom for Oracle'을 씁니다. EC2를 하나 사서 Oracle을 직접 설치하고 서버 관리부터 패치까지 모든 고생을 기꺼이 감수합니다. 이번 기회에 라이선스 비용 없는 PostgreSQL로 앱 코드를 몽땅 뜯어고쳐서 이사합니다. 정답 확인 및 해설 📖 해설 정답은 B입니다. '관리형 서비스의 편안함'과 '관리자 권한의 자유'를 동시에 누릴 수 있는 중간 지점이 바로 RDS Custom입니다. 일반 RDS는 보안상 DB 속 깊숙한 설정을 막아두지만, RDS Custom은 운영 체제(OS) 접근은 물론 특정 타사 소프트웨어가 요구하는 막강한 권한 설정까지 허용해 줍니다. 마이그레이션 중 '이건 꼭 관리자 권한이 있어야 돌아가는데!' 싶을 때 꺼내 드는 필살기입니다. 다른 옵션인 C는 관리 수고가 너무 많이 들고, D는 '신속한 이동'이라는 목표에 전혀 맞지 않는 험난한 길입니다. 💡 이 문제의 핵심 용어 Amazon RDS Custom: AWS가 DB 운영을 돕되, 사용자가 OS와 DB 커널 수준까지 제어할 수 있게 권한을 열어준 특별한 서비스 Oracle APEX: Oracle DB 내에서 앱을 쉽게 만들 수 있게 해주는 기능 중 하나(보통 높은 권한이 필요함) Privileged Access (특권 액세스): 시스템의 가장 깊숙한 설정이나 비밀 데이터까지 만질 수 있는 강력한 관리자 권한
Q450 단일 서버에 옹기종기 모여 있는 3계층 앱을 AWS 표준(Well-Architected)으로 이사시키려 합니다. 보안, 확장성, 복원력을 한 번에 잡는 정석적인 조치 3가지는? (3개 선택) 기존 구조 그대로 VPC 한 곳에 EC2들을 몰아넣고 보안 그룹으로 문만 좀 걸어 잠급니다. 데이터베이스는 외부 침입이 절대 불가능한 프라이빗 서브넷에 단독으로 배치합니다. 웹, 앱, DB를 각각의 프라이빗 서브넷으로 '리팩터링'하고, 계층마다 Auto Scaling을 겁니다. 관리 편의를 위해 DB는 하나만 쓰고, 앱 서버에서만 접속하게 보안 그룹을 설정합니다. 웹 서버 앞에는 로드 밸런서(ELB)를 세우고, 보안 그룹끼리 서로 '참조'하게 엮어 보안 전용층을 만듭니다. 프라이빗 서브넷에 'RDS 다중 AZ 클러스터'를 구축하고, 앱 보안 그룹의 신호만 받도록 설정합니다. 정답 확인 및 해설 📖 해설 정답은 C, E, F입니다. AWS 1타 강사의 필승 전략입니다. 첫째, 하나의 서버에 있던 기능을 웹/앱/DB로 쪼개고(리팩터링) 각각 전용 서브넷에 담아 부하에 맞춰 늘어나게(Auto Scaling) 만드세요(C). 둘째, 입구에는 로드 밸런서(ELB)를 세워 교통 정리를 하고 보안 그룹 ID끼리 서로를 알아보게 '체인' 보안을 겁니다(E). 마지막으로 DB는 다중 AZ로 장애를 방어하고 프라이빗 공간에 꽁꽁 숨기면(F) 완벽한 3계층 아키텍처가 탄생합니다. 다른 옵션인 A나 D는 '단일 장애 지점'을 해결하지 못해 정답이 될 수 없습니다. 💡 이 문제의 핵심 용어 Three-tier Architecture (3계층 아키텍처): 웹(사용자 접점), 앱(비즈니스 로직), DB(데이터 저장)를 물리적으로 분리해 안정성과 확장성을 높인 설계 Well-Architected Framework: AWS가 수만 명의 고객 사례를 분석해 만든 '클라우드 설계의 정석' 같은 5대 원칙 가이드 Security Group Referencing: IP 주소 대신 '웹 서버 팀'처럼 보안 그룹 이름을 기준으로 출입을 승인하는 똑똑한 보안 관리법