본 문제는 빌드업웍스에서 AWS 공인 솔루션스 아키텍트 — 어소시에이트 SAA-C02를 위해 개발한 연습문제입니다.
3개의 연습문제를 풀어 보시고 정답과 해설을 확인해 보세요.
문제
1. VPC에서 실행 중인 3계층 애플리케이션에서는 원하는 수의 EC2 인스턴스를 유지하기 위해 Auto Scaling 기능을 사용합니다. EC2 인스턴스 중 하나가 EC2 상태 점검 상태를 방금 보고했습니다.
이 정보가 Auto Scaling에 보고되면 어떤 조치를 취합니까?
A) 새 인스턴스가 즉시 시작된 다음 손상된 인스턴스가 종료됩니다.
B) 손상된 인스턴스가 종료 된 후 교체가 시작됩니다.
C) Auto Scaling은 작업을 수행하기 전에 ELB 상태 확인을 통해 확인해야 합니다.
D) Auto Scaling은 상태 확인 유예 기간을 기다린 다음 인스턴스를 종료합니다.
2. 회사의 개발팀에서 .NET으로 작성된 새 응용 프로그램을 만들었습니다. 개발팀은 기본 리소스를 완전히 제어하면서 응용 프로그램을 쉽게 배포 할 수 있는 방법을 찾고 있습니다.
AWS가 제공하는 어떤 PaaS 서비스가 이 요구 사항에 적합합니까?
A) CloudFront
B) EC2 Placement Groups
C) Elastic Beanstalk
D) CloudFormation
3. 8개의 EC2 인스턴스로 실행 중인 기존 Auto Scaling 그룹이 있습니다. 대상 그룹을 연결하여 ELB를 ASG에 연결하기로 결정했습니다. ELB는 동일한 리전에 있으며 대상 그룹에서 이미 실행 중인 여러개의 EC2 인스턴스가 있습니다. ELB를 첨부하려고 할 때 요청이 즉시 실패합니다.
문제로 추측 되는 원인은 무엇입니까?
A) ASG는 일단 정의한 후에는 편집할 수 없으므로 다시 작성해야 합니다.
B) 하나 이상의 인스턴스가 정상적이지 않습니다.
C) 실행 중인 EC2 인스턴스를 ASG에 연결할 수 없습니다.
D) EC2 인스턴스를 ASG에 추가하면 구성된 최대 용량을 초과합니다.
정답
1. B
Auto Scaling 인스턴스의 상태는 정상 또는 비정상입니다. Auto Scaling 그룹의 모든 인스턴스는 정상 상태에서 시작됩니다. Amazon EC2 Auto Scaling에서 해당 인스턴스가 비정상 상태라는 알림을 수신하지 않는 한 인스턴스는 정상 상태로 간주됩니다. 이 알림은 Amazon EC2, Elastic Load Balancing(ELB) 또는 사용자 지정 상태 확인 중 하나 이상에서 전송될 수 있습니다.
Amazon EC2 Auto Scaling에서 상태가 비정상인 것으로 표시한 인스턴스는 교체가 예정됩니다. 인스턴스를 교체하지 않으려면 개별 Auto Scaling 그룹의 상태 확인 프로세스를 일시 중지하면 됩니다.
인스턴스가 완전히 구성되고 초기 상태 확인을 통과하면 Amazon EC2 Auto Scaling에 의해 정상으로 간주됩니다. Amazon EC2 Auto Scaling는 인스턴스의 상태를 주기적으로 확인하여 Auto Scaling 그룹 내의 모든 인스턴스가 실행 중이고 양호한 상태인지 확인합니다. 인스턴스가 비정상 상태임이 확인되면 해당 인스턴스를 종료한 다음 새 인스턴스를 시작합니다. 이렇게 하면 정의된 최소 수(또는 원하는 수)로 실행 중인 인스턴스 수를 유지하는 데 도움이 됩니다.
Amazon EC2 상태 확인
Amazon EC2 Auto Scaling 상태 확인은 Amazon EC2 상태 검사 결과를 사용하여 인스턴스의 상태를 확인합니다. 인스턴스가 running 이외의 상태이거나 시스템 상태가 impaired이면 Amazon EC2 Auto Scaling는 해당 인스턴스를 비정상으로 간주하여 교체 인스턴스를 시작합니다. 인스턴스가 다음 상태일 때도 위와 같이 실행됩니다.
- stopping
- stopped
- terminating
- terminated
EC2 상태 확인은 특별한 구성이 필요 없으며 항상 활성화됩니다. 인스턴스 상태 검사와 시스템 상태 검사가 모두 포함됩니다.
2. C
Amazon Web Services(AWS)는 100개 이상의 서비스로 구성되어 있으며 각 서비스는 기능 영역을 나타냅니다. 다양한 서비스는 AWS 인프라 관리 방법의 유연성을 제공하는 반면에 어떤 서비스를 사용해야 하고 해당 서비스를 프로비저닝하는 방법을 파악하는 것이 까다로울 수 있습니다.
Elastic Beanstalk를 사용하면, 애플리케이션을 실행하는 인프라에 대한 염려 없이 AWS 클라우드에서 애플리케이션을 신속하게 배포 및 관리할 수 있습니다. 선택 또는 제어에 대한 제약 없이 Elastic Beanstalk의 관리 복잡성이 줄어듭니다. 애플리케이션을 업로드하기만 하면 Elastic Beanstalk에서 용량 프로비저닝, 로드 밸런싱, 조정, 애플리케이션 상태 모니터링에 대한 세부 정보를 자동으로 처리합니다.
Elastic Beanstalk는 Go, Java, .NET, Node.js, PHP, Python 및 Ruby에서 개발된 애플리케이션을 지원합니다. 애플리케이션을 배포할 때, Elastic Beanstalk가 선택된 지원 가능 플랫폼 버전을 구축하고 Amazon EC2 인스턴스 등의 AWS 리소스를 하나 이상 프로비저닝하여 애플리케이션을 실행합니다.
Elastic Beanstalk를 사용하려면 애플리케이션을 생성하고, 애플리케이션 소스 번들의 형태(예: Java .war 파일)로 애플리케이션 버전을 Elastic Beanstalk에 업로드하고, 애플리케이션에 대한 몇 가지 정보를 제공합니다. Elastic Beanstalk가 자동으로 환경을 실행하고 코드 실행에 필요한 AWS 리소스를 생성 및 구성합니다. 환경 실행 후에는 환경을 직접 관리하고 새로운 앱 버전을 배포할 수 있습니다. 다음 다이어그램은 Elastic Beanstalk의 워크플로를 보여 줍니다.
3. D
Amazon EC2 Auto Scaling은 기존 Auto Scaling 그룹에 하나 이상의 EC2 인스턴스를 연결하여 자동 조정을 활성화하는 옵션을 제공합니다. 인스턴스가 연결되면 Auto Scaling 그룹의 일부가 됩니다.
연결할 인스턴스는 다음 기준을 충족해야 합니다.
- 인스턴스는 running 상태에 있습니다.
- 인스턴스를 시작할 때 사용되는 AMI가 항상 있어야 합니다.
- 인스턴스가 다른 Auto Scaling 그룹의 구성원이 아닙니다.
- 인스턴스가 Auto Scaling 그룹에 정의된 가용 영역 중 하나로 시작됩니다.
- Auto Scaling 그룹에 연결된 클래식 로드 밸런서가 있는 경우, 인스턴스와 로드 밸런서가 모두 EC2- 또는 동일한 VPC에 있어야 합니다. 그룹에 연결된 대상 그룹이 있는 경우, 인스턴스와 로드 밸런서는 모두 동일한 VPC에 있어야 합니다.
인스턴스를 연결하면 연결되는 인스턴스 수에 따라 그룹의 원하는 용량을 늘립니다. 연결할 인스턴스 수와 원하는 용량의 합이 그룹의 최대 크기를 초과하는 경우 요청이 실패합니다.
연결된 로드 밸런서가 있는 Auto Scaling 그룹에 인스턴스를 연결하면 해당 인스턴스가 로드 밸런서에 등록됩니다. 연결된 대상 그룹이 있는 Auto Scaling 그룹에 인스턴스를 연결하면 해당 인스턴스가 대상 그룹에 등록됩니다.
빌드업웍스에서는 ‘AWS 공인 솔루션스 아키텍트 — 어소시에이트 연습문제’를 개발했습니다.
더 많은 문제와 자세한 해설을 원하신다면 ‘AWS 공인 솔루션스 아키텍트 — 어소시에이트 연습문제’로 오셔서 내용을 확인하세요.
빌드업웍스와 함께 AWS 공인 솔루션스 아키텍트 — 어소시에이트에 도전하여 여러분의 잠재력과 경력을 향상해보세요!
© 2020, Buildup Works LLC. All rights reserved.