- 책 또는 웹사이트의 내용을 복제하여 다른 곳에 게시하는 것을 금지합니다.
- 책 또는 웹사이트의 내용을 발췌, 요약하여 강의 자료, 발표 자료, 블로그 포스팅 등으로 만드는 것을 금지합니다.
부하 분산과 고가용성을 제공하는 ELB
이재홍 http://www.pyrasis.com 2014.03.24 ~ 2014.06.30
ELB 로드 밸런서 Sticky Session 기능 사용하기
ELB 로드 밸런서가 라운드 로빈 알고리즘으로 트래픽을 분배하는 것이 아닌 사용자의 쿠키 세션을 기준으로 트래픽을 분배하는 Sticky Session을 사용해보겠습니다.
ELB 로드 밸런서 목록(NETWORK & SECURITY → Load Balancers)에서 ELB 로드 밸런서(exampleelb)를 선택하고, 아래 Description 탭을 클릭합니다. Port Configuration 부분에서 Stickiness: Disabled의 Edit를 클릭합니다.
Sticky Session을 설정합니다. Enable Load Balancer Generated Cookie Stickiness를 선택합니다(그림 18-19).
- Enable Load Balancer Generated Cookie Stickiness: ELB 로드 밸런서가 생성한 쿠키를 사용합니다.
- Expiration Period: 쿠키가 유지되는 시간을 설정할 수 있습니다. 값을 설정하지 않으면 쿠키를 삭제하지 않고 계속 유지시킵니다. 여기서는 300을 입력합니다.
- Enable Application Generated Cookie Stickiness: 서버의 애플리케이션이 생성한 쿠키를 사용합니다.
- Cookie Name: 서버의 애플리케이션이 생성한 쿠키 이름을 설정합니다.
설정이 완료되었으면 Save 버튼을 클릭합니다.
ELB 로드 밸런서 Sticky Session 설정이 완료되었습니다.
웹 브라우저를 실행하고 ELB 로드 밸런서의 URL에 접속합니다. 저는 두 번째 EC2 인스턴스에 연결되었습니다. 이 URL을 계속 새로고침해도 계속 같은 EC2 인스턴스에 연결됩니다.
Expiration Period를 300초(5분)으로 설정했기 때문에 5분 뒤에 새로고침해보면 다른 EC2 인스턴스에 연결될 수 있습니다.
구글 크롬을 사용하고 있다면 F12 키를 눌러 개발자 도구를 실행합니다. 그리고 Network 탭을 클릭한 뒤 새로고침해보면 ELB 로드 밸런서가 생성한 쿠키 값을 볼 수 있습니다.
저작권 안내
이 웹사이트에 게시된 모든 글의 무단 복제 및 도용을 금지합니다.- 블로그, 게시판 등에 퍼가는 것을 금지합니다.
- 비공개 포스트에 퍼가는 것을 금지합니다.
- 글 내용, 그림을 발췌 및 요약하는 것을 금지합니다.
- 링크 및 SNS 공유는 허용합니다.