ALB를 생성하고 동작 과정 확인하기

ALB 생성하기

대상 그룹 이름 : ALB-TG, VPC : ELB-VPC

모두 체크하고 아래에 보류 중인 것으로 포함 클릭

로드 밸런서 생성

로드 밸런서 이름

네트워크 매핑

보안 그룹

리스너 및 라우팅

ALB 동작

ALB 동작확인하기
MyEC2 인스턴스에서 SSH로 접속
ALB 변수에는 각자의 ALB DNS 이름을 입력
ALB DNS 이름 = 로드 밸런서 페이지에서 생성된 로드 밸런서를 클릭
# MyEC2의 SSH 터미널 접속
3 ALB DNS 이름 변수 지정
ALB=ALB-499212327.ap-northeast-2.elb.amazonaws.com # 각자의 ALB DNS 이름 입력
echo $ALB
ALB-499212327.ap-northeast-2.elb.amazonaws.com
# dig로 도메인에 대한 질의 수행
dig $ALB +short
3.37.139.109
43.203.83.152
두 개의 유동 공인 IP가 출력
즉, 사용자가 ALB 도메인 주소로 접속을 시도하면 DNS 질의 결과인 유동 공인 IP로 번갈아 가며 접속
다음으로 curl 명령어 입력 결과 확인
# MyEC2dml SSH 터미널
# curl 접속 테스트 - ALB는 기본 라운드 로빈 방식으로 대상 분산
[root@MyEC2 ~]# curl $ALB
<h1>ELB LAB Web Server-2</h1>
[root@MyEC2 ~]# curl $ALB
<h1>ELB LAB Web Server-3</h1>
# 반복문을 활용하여 curl 접속 테스트
# for 문으로 20번 반복 접속을 수행한 후 동일한 결과 값을 모아 출력
[root@MyEC2 ~]#
[root@MyEC2 ~]# for i in {1..20}; do curl $ALB --silent ; done | sort | uniq -c | sort -nr
7 <h1>ELB LAB Web Server-3</h1>
7 <h1>ELB LAB Web Server-2</h1>
6 <h1>ELB LAB Web Server-1</h1>
# for 문으로 90번 반복 접속을 수행한 후 동일한 결과 값을 모아 출력
[root@MyEC2 ~]# for i in {1..90}; do curl $ALB --silent ; done | sort | uniq -c | sort -nr
30 <h1>ELB LAB Web Server-3</h1>
30 <h1>ELB LAB Web Server-2</h1>
30 <h1>ELB LAB Web Server-1</h1>
ALB 도메인 주소로 접속을 시도하면 세 대의 웹 서버가 배치된 대상 그룹으로 거의 33% 비중으로 균등하게 로드 밸런싱

ALB 경로 기반 라우팅 기능을 구성하고 확인하기
# MyEC2의 SSH 터미널
# /dev/index.html 접근 -> 로드 밸런싱 기능으로 SERVER-1만 접근 가능
[root@SERVER1 ~]# curl $ALB/dev/index.html --silent
<h1>ELB LAB Dev Web Page</h1>
[root@MyEC2 ~]# curl $ALB/dev/index.html --silent
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
# /mgt/index.html 접근 -> 로드 밸런싱 기능으로 SERVER-2,3 만 접근 가능
[root@SERVER2 ~]# curl $ALB/dev/index.html --silent
<h1>ELB LAB Dev Web Page</h1>
[root@MyEC2 ~]# curl $ALB/dev/index.html --silent
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
ALB 경로 기반 라우팅 기능 동작 그림

EC2 - 로드 밸런싱 - 대상 그룹
DEV-TG

서버 1 선택

MGT-TG

서버 2,3 선택

ALB 리스너 규칙 추가
EC2 - 로드 밸런서 , 리스너 및 규칙 탭, 라우팅 규칙 체크, 오른쪽에서 규칙 관리 - 규칙 추가

Name에 dev

조건 추가 클릭 후 규칙 조건 유형에서 경로 선택
값 영역에 '/dev/*' 입력 후 확인 - 다음
작업 유형 대상 그룹으로 전달
대상 그룹으로 전달 DEV-TG

ALB 리스너 규칙 생성 확인
