Skip to main content

18C. ELB 로드 밸런서 Sticky Session 기능 사용하기

Less than 1 minuteAWScrashcoursepyrasisawsamazon-web-services

18C. ELB 로드 밸런서 Sticky Session 기능 사용하기 관련

목차

아마존 웹 서비스를 다루는 기술

18장 - 3. ELB 로드 밸런서 Sticky Session 기능 사용하기

아마존 웹 서비스를 다루는 기술

ELB 로드 밸런서가 라운드 로빈 알고리즘으로 트래픽을 분배하는 것이 아닌 사용자의 쿠키 세션을 기준으로 트래픽을 분배하는 Sticky Session을 사용해보겠습니다.

ELB 로드 밸런서 목록([NETWORK & SECURITY][Load Balancers])에서 ELB 로드 밸런서(exampleelb)를 선택하고, 아래 [Description] 탭을 클릭합니다.

Port Configuration 부분에서 Stickiness: Disabled의 <FontIcon icon="iconfont icon-select"/>를 클릭합니다.
Port Configuration 부분에서 Stickiness: Disabled의 [Edit]를 클릭합니다.

Sticky Session을 설정합니다. [Enable Load Balancer Generated Cookie Stickiness]를 선택합니다.

  • Enable Load Balancer Generated Cookie Stickiness: ELB 로드 밸런서가 생성한 쿠키를 사용합니다.
  • Expiration Period: 쿠키가 유지되는 시간을 설정할 수 있습니다. 값을 설정하지 않으면 쿠키를 삭제하지 않고 계속 유지시킵니다. 여기서는 300을 입력합니다.
  • Enable Application Generated Cookie Stickiness: 서버의 애플리케이션이 생성한 쿠키를 사용합니다.
  • Cookie Name: 서버의 애플리케이션이 생성한 쿠키 이름을 설정합니다.
설정이 완료되었으면 <FontIcon icon="iconfont icon-select"/> 버튼을 클릭합니다.
설정이 완료되었으면 [Save] 버튼을 클릭합니다.
ELB 로드 밸런서 Sticky Session 설정이 완료되었습니다.
ELB 로드 밸런서 Sticky Session 설정이 완료되었습니다.

웹 브라우저를 실행하고 ELB 로드 밸런서의 URL에 접속합니다. 저는 두 번째 EC2 인스턴스에 연결되었습니다. 이 URL을 계속 새로고침해도 계속 같은 EC2 인스턴스에 연결됩니다.

Expiration Period를 300초(5분)으로 설정했기 때문에 5분 뒤에 새로고침해보면 다른 EC2 인스턴스에 연결될 수 있습니다.

웹 브라우저에서 ELB 로드 밸런서의 URL에 접속
웹 브라우저에서 ELB 로드 밸런서의 URL에 접속
구글 크롬을 사용하고 있다면 <kbd>F12</kbd> 키를 눌러 개발자 도구를 실행합니다. 그리고 <FontIcon icon="iconfont icon-select"/> 탭을 클릭한 뒤 새로고침해보면 ELB 로드 밸런서가 생성한 쿠키 값을 볼 수 있습니다.
구글 크롬을 사용하고 있다면 F12 키를 눌러 개발자 도구를 실행합니다. 그리고 [Network] 탭을 클릭한 뒤 새로고침해보면 ELB 로드 밸런서가 생성한 쿠키 값을 볼 수 있습니다.

이찬희 (MarkiiimarK)
Never Stop Learning.