
CloudFormation을 통한 기본 환경이다.
ALB 로드 밸런서를 생성해 HTTP 서비스에 대한 부하 분산을 해보자.
로드밸런서 생성을 클릭 -> ALB 선택 -> 리스너에 HTTP(포트80) 선택 -> 가용영역에서 ALB가 포함될 VPC 선택하고, 두개의 가용영역과 각 서브넷을 선택 -> 이후 보안그룹 지정 -> 대상 그룹을 생성하여 라우팅 지정(상태검사 까지 모든 프로토콜을 HTTP로 지정)
다음과 같이 도식화가 완성된다.

검증
생성한 ALB의 DNS주소를 복사하고, putty를 통해 My-VPC내의 인스턴스로 SSH접근을 시도하고, curl 명령을 통해 ALB로 HTTP 접근을 시도한다.

다음과 같이 로드밸런서를 통해 번갈아 가면서 ELB-VPC 내의 인스턴스에 접근하는 것을 확인할 수 있다.
현재 ELB-EC2-1는 /index.html 페이지와 /dev/index.html 페이지를 가지고있고,
ELB-EC2-2는 /index.html 페이지와 /mgt/index.html 페이지를 가지고있다.
이번엔 ALB DNS에 /dev/index.html 페이지와 /mgt/index.html 페이지로 접근을 시도해보자.

ALB를 통해 ELB-EC2-1, ELB-EC2-2가 번갈아서 접속되므로 응답을 주고, 응답을 주지못하는 상황이 번갈아서
생긴다.
이를 해결하기위해 dev페이지 접속시 ELB-EC2-1에만 연결하고, mgt페이지 접속시 ELB-EC2-2에만 연결하는
경로 기반 라우팅 기능을 활용한다.
두개의 대상그룹을 다시 생성한다. 과정은 아래와 같다.
dev 대상그룹 생성과정)
대상 그룹 생성 -> 이름과 VPC 지정(생성완료) -> 대상 탭 진입 -> ELB-EC2-1 선택
mgt 대상그룹도 동일한 방법으로 생성한다.
이후 ALB 페이지의 리스너 탭에서 생성한 리스너를 선택하고 규칙 편집에 들어간다.
새 규칙만들기를 통해 다음과 같이 설정한다.

2개의 규칙을 모두 추가하면 이제 /dev/ 경로로 향하는 주소는 DEV-GROUP 그룹에 속한 인스턴스로 전달하고
/mgt/ 경로로 향하는 주소는 MGT-GROUP 그룹에 속한 인스턴스로 전달된다.
즉 경로 기반 라우팅 설정이 끝났다.
검증

위와 같이 /dev/ 경로는 모두 ELB-EC2-1 으로 향하고, /mgt/ 경로는 모두 ELB-EC2-2로 향한다.
출처 : 따라하며 배우는 AWS 네트워크 입문
'AWS > 실습' 카테고리의 다른 글
Route 53 구성 및 라우팅 정책 (0) | 2022.11.13 |
---|---|
NLB를 통한 로드 밸런싱 (0) | 2022.11.13 |
엔드포인트 서비스 (0) | 2022.11.13 |
게이트웨이 & 인터페이스 엔드포인트 (0) | 2022.11.13 |
퍼블릭 & 프라이빗 서브넷 VPC 설계 (0) | 2022.11.13 |