반응형
A company has a stateful web application that is hosted on Amazon EC2 instances in an Auto Scaling group.
한 회사에서 상태 저정(Stateful) 웹 어플리케이션이 있고, 이 어플리케이션은 오토스케일링 그룹을 통해서 EC2 인스턴스로 호스팅되고 있음.
- Stateful, 상태 저장이라는 것은 사용자 로그인, 장바구니 정보와 같은 세션(상태)를 인스턴스 내에 저장하는 방식임!
The instances run behind an Application Load Balancer (ALB) that has a single target group.
이 인스턴스들은 ALB 뒤에서 동작하며고 하나의 타겟그룹에 속해있음.
즉 , ALB는 클라이언트들의 요청에 따라 여러 인스턴스로 트래픽을 분산시키는 구조
The ALB is configured as the origin in an Amazon CloudFront distribution.
이 ALB는 CloudFront 배포판의 오리진으로 설정
Users are reporting random logouts from the web application.
사용자들이 무작위로 로그아웃되는 현상이 보고되고 있음
이 무작위 로그아웃이라는 것을 이해하지 못하면 이 문제를 파악하지 못함..(내가 그랬음)
💡 무작위 로그아웃이라는 말은 결국 세션 유지에 실패하고 있다는 뜻임.
즉 상태 저장 웹애플리케이션에서 요청이 항상 같은 인스턴스로 가지 않고 (로드밸런서에의해 무작위 배정된다고 보면 됨) 이로 인해 세션 정보가 누락되어 무작위로 로그아웃 현상이 발생하는 것.
[구조]
클라이언트 > CloudFront > ALB > 하위 여러 Target EC2 인스턴스
그래서 사용자가
1) 로그인 > A 인스턴스에서 세션 생성
2) 다음 요청 > B 인스턴스로 연결 > 세션 없음 > 로그아웃 됨
이러한 현상이 발생하게 됨. 이러면 무작위 로그아웃 처럼 보이게 됨. (세션 유실)
Which combination of actions should a SysOps administrator take to resolve this problem? (Choose two.)
정답만 설명
-Configure cookie forwarding in the CloudFront distribution cache behavior.
CloudFront 배포의 캐시 동작에서 쿠키 전달을 설정.
- 기본적으로 CloudFront는 쿠키를 전달하지 않기 때문에, 로그인 정보 같은 세션이 누락됨.
- All cookies 또는 특정 쿠키만 전달 설정 가능.
CloudFront 를 이용하는 경우에는 세션 유지를 위해 쿠키 전달은 필수!!!!!!
- Enable sticky sessions on the ALB target group.
ALB 타깃 그룹에서 스티키 세션(sticky session)을 활성화합니다.
- Sticky Session을 설정하면, 사용자가 항상 같은 인스턴스로 연결됨.
- 상태 저장 웹 앱에서는 필수 설정입니다.
세션이 EC2 인스턴스에 저장되므로, 같은 인스턴스로 보내야 세션 유지됨.
'IT 자격증 > [AWS] SysOps Administrator' 카테고리의 다른 글
EFS와 마운트에 대해서 (0) | 2025.05.18 |
---|---|
모든 리전에서 CloudFormation 템플릿을 통해 리전별 AMI ID를 잘 가져오도록 하는 방법 (1) | 2025.05.18 |
AWS 대규모 트래픽 대비를 위한 방법 (0) | 2025.05.05 |
Amazon EC2 인스턴스에서 S3로 데이터를 업로드 시, 네트워크 처리량이 병목인 상황 해결 방법 (0) | 2025.05.05 |
고성능/고확장성 SQS 처리 방법 (0) | 2025.05.05 |