🤔 문제
한 기업이 온프레미스에 있는 웹사이트를 AWS로 이전하려고 계획하고 있습니다. 웹사이트는 EC2 인스턴스에서 실행되도록 결정되었습니다. 웹사이트의 가용성을 향상시키기 위해 HTTP 오류가 발생했을 때도 서비스를 계속할 수 있도록 해야 합니다. 이러한 요구 사항을 충족시키기 위해 솔루션 아키텍트는 어떻게 해야 할까요?
- ALB와 Auto Scaling 그룹을 구성하고, 여러 개의 EC2 인스턴스를 배치합니다. ALB의 헬스 체크에서 지정된 URL에 대한 응답이 확인되도록 설정합니다. Auto Scaling의 헬스 체크 설정에서 ELB의 헬스 체크를 활성화합니다.
- ALB와 Auto Scaling 그룹을 구성하고, 여러 개의 EC2 인스턴스를 배치합니다. ALB의 헬스 체크에서 지정된 URL에 대한 응답이 확인되도록 설정합니다. Auto Scaling의 헬스 체크 설정에서 EC2의 헬스 체크를 활성화하여 EC2의 상태가 확인되도록 설정합니다.
- ALB와 Auto Scaling 그룹을 구성하고, 여러 개의 EC2 인스턴스를 배치합니다. Auto Scaling의 헬스 체크에서 EC2의 헬스 체크를 활성화하여 EC2의 상태가 확인되도록 설정합니다.
- ALB와 Auto Scaling 그룹을 구성하고, 여러 개의 EC2 인스턴스를 배치합니다. Auto Scaling의 헬스 체크에서 EC2의 헬스 체크를 활성화하고, 지정된 URL에 대한 응답이 확인되도록 설정합니다.
정답
정답. 1번.
ALB와 Auto Scaling 그룹을 구성하고, 여러 개의 EC2 인스턴스를 배치합니다. ALB의 헬스 체크에서 지정된 URL에 대한 응답이 확인되도록 설정합니다. Auto Scaling의 헬스 체크 설정에서 ELB의 헬스 체크를 활성화합니다.
(Auto Scaling에 Health Check 설정이 있는지 몰랐다.....)
[ALB + Auto Scaling Group]
ALB와 Auto Scaling Group을 조합하면, ALB의 Target Group 아래에 있는 EC2 인스턴스에 장애가 발생하거나 부하가 증가할 때 Auto Scaling이 자동으로 새로운 인스턴스를 시작하고 ALB의 Target Group에 추가한다.
여러 개의 EC2 인스턴스를 ALB가 포함된 Auto Scaling Group에 배치하면 가용성이 향상된다.
[Auto Scaling Group의 Health Check 유형]
EC2 인스턴스를 리소스로 사용하는 경우, Auto Scaling의 Health Check 유형에는 1)"EC2"와 2)"ELB"가 있다.
"EC2"는 인스턴스의 Health Check 결과를 확인하고, "ELB"는 지정된 연결 지점에 대한 응답을 확인한다.
Auto Scaling의 헬스 체크에서 비정상인 리소스는 자동으로 종료된다.
기본(Default) 설정으로는 "EC2"가 활성화되어 있고 "ELB"는 비활성화되어 있지만, "EC2"와 "ELB" 둘 다 활성화하는 것이 권장된다.
[EC2는 ON, ELB는 OFF의 경우]
만약 Auto Scaling Group의 Health Check 설정에서 "EC2"가 활성화되고 "ELB"가 비활성화된 경우, ELB에서 Health Check에 문제가 있어도, EC2의 Health Check가 정상이라면 인스턴스는 계속 실행된다.
예를 들어, ELB 헬스 체크에서 지정된 URL에 문제가 발생(HTTP 404 오류 등)하더라도, 인스턴스 자체는 정상적으로 동작할 수 있으므로 ALB에서 부하가 분산되지 않게 되지만 인스턴스가 종료되지 않는다.
인스턴스가 종료되지 않으면 새로운 인스턴스가 시작되지 않아서 서비스가 중단될 가능성이 있다.
Health Check 설정에서 "ELB"도 활성화하면, ELB에서 Health Check에 응답하지 않는 인스턴스가 종료되고 새로운 정상 인스턴스가 시작됩니다.
'클라우드(AWS) > SAA-C03' 카테고리의 다른 글
[AWS SAA-C03] 오답 풀이 #015 (gateway VPC Endpoint의 특징) (0) | 2024.08.26 |
---|---|
[AWS SAA-C03] 오답 풀이 #014 (Step Functions의 활용 방법, Lambda 함수의 실행 시간) (0) | 2024.08.24 |
[AWS SAA-C03] 오답 풀이 #012 (Direct Connect와 Site-to-Site VPN 차이점) (0) | 2024.08.23 |
[AWS SAA-C03] 오답 풀이 #011 (CloudFront와 Global Accelerator의 차이 정리) (0) | 2024.08.17 |
[AWS SAA-C03] 오답 풀이 #010 (AWS Config와 CloudTrail의 차이점) (0) | 2024.08.17 |