티스토리 뷰
ALB 경로 기반 라우팅 기능 구성 및 확인
- 웹 접근 시 사용되는 경로가 다를 경우
해당 경로를 갖지 않는 서버는 로드 밸런싱이 요청한 응답을 오류 메시지로 전달하는 것을 확인
► 로드 밸런싱의 기본 동작이 라운드 로빈 방식으로 동작함
► ALB 생성할 때 동일한 대상 그룹에 묶여 있는 서버에 순차적으로 응답 요청
- 위 문제 해결을 위해 동일한 경로 서비스를 하는 서버를 각 대상 그룹으로 묶고, ALB의 경로 기반 라우팅 기능을 이용하여 웹에 접근할 때 HTML 경로에 해당하는 그룹으로 접근하는 규칙 생성
# MyEC2의 SSH 터미널
## /dev/index.html 접근 -> 로드 밸런싱 기능으로 SERVER-1만 접근 가능
> curl $ALB/dev/index.html --silent
<h1>ELB LAB Web Page</h1>
> curl $ALB/dev/index.html --silent
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
> curl $ALB/dev/index.html --silent
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
## /mgt/index.html 접근 -> 로드 밸런싱 기능 때문에 SERVER-2, 3만 접근 가능
> curl $ALB/mgt/index.html --silent
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL was not found on this server.</p>
</body></html>
> curl $ALB/mgt/index.html --silent
<h1>ELB LAB Mgt Web Page</h1>
> curl $ALB/mgt/index.html --silent
<h1>ELB LAB Mgt Web Page</h1>
1. DEV-TG 대상 그룹 생성을 위해 EC2 > 로드 밸런싱 > 대상 그룹에 들어가서 '대상 그룹 생성' 버튼 클릭
2. 그룹 세부 정보 지정 페이지에서 아래와 같이 설정한 후 '다음' 버튼 클릭
1) 대상 그룹 이름에 'DEV-TG' 입력
2) VPC에서 'ELB-VPC' 선택
3. 대상 등록 페이지에서 사용할 SERVER-1 인스턴스를 체크한 후 '아래에 보류 중인 것으로 포함' 버튼 클릭
4. 앞 단계에서 선택한 인스턴스가 대상으로 이동된 것을 확인한 후 '대상 그룹 생성' 버튼 클릭
5. 대상 그룹 생성된 것을 확인
6. DEV-TG 대상 그룹을 생성한 방법으로 'MGT-TG' 대상 그룹 생성하여, 두 개의 대상 그룹으로 분리함
1) 대상 그룹 이름에 'MGT-TG' 입력
2) VPC에서 ELB-VPC 선택
3) 대상 등록에서 실습에 사용할 SERVER-2, 3 인스턴스 선택
4) '아래에 보류 중인 것으로 포함' 버튼 클릭
5) '대상 그룹 생성' 버튼 클릭
경로 기반 라우팅 설정을 위한 ALB 리스너 규칙 추가
1. EC2 > 로드 밸런서에서 생성된 ALB를 체크한 후 '리스너 및 규칙 탭'을 클릭
생성된 라우팅 규칙에 체크하고 '규칙 관리 > 규칙 추가' 선택
2. 규칙 추가에서는 Name에 'dev'을 입력한 후 '다음' 버튼 클릭
3. 규칙 조건 정의와 규칙 작업 정의에서 아래와 같이 설정함
1) '조건 추가' 클릭한 후 규칙 조건 유형에서 '경로' 선택
2) 값 영역에 '/dev/*' 입력 후 순서대로 '확인' 버튼과 '다음' 버튼 클릭
3) 작업 유형에서 '대상 그룹으로 전달' 선택
4) 대상 그룹으로 전달에서 'DEV-TG' 선택한 후 '다음' 버튼 클릭
4. 규칙 우선순위 설정에서는 임의로 우선순위를 설정한 후 순서대로 '다음' 버튼과 '생성' 버튼 클릭하면 규칙 생성 확인
5. /dev/ 경로 규칙을 생성한 방법으로 /mgt 경로 규칙도 생성함
1) 리스너 및 규칙 탭에서 '규칙 관리 > 규칙 추가' 선택
2) 규칙 추가에서 Name에 'mgt'를 입력한 후 '다음' 버튼 클릭
3) 규칙 조건 정의에서 '조건 추가' 클릭한 후 규칙 조건 유형에서 '경로' 선택
4) 값 영역에 '/mgt/*' 입력 후 순서대로 '확인' 버튼과 '다음' 버튼 클릭
5) 규칙 작업 정의에서 '대상 그룹으로 전달' 선택
6) 대상 그룹으로 전달에서 MGT-TG 선택 후 '다음' 버튼 클릭
7) 우선순위는 임의로 설정하고 순서대로 '다음' 버튼과 '생성' 버튼 클릭
8) 규칙 생성된 것을 확인
6. 명령어를 입력하여 결과 확인
# MyEC2의 SSH 터미널
## /dev/index.html 접근
> curl $ALB/dev/index.html --silent
<h1>ELB LAB Web Page</h1>
> for i in {1 2 3}; do curl $ALB/dev/index.html --silent; done | sort | uniq -c|sort -nr
3 <h1>ELB LAB Web Page</h1>
## /mgt/index.html 접근
> curl $ALB/mgt/index.html --silent
<h1>ELB LAB Mgt Web Page</h1>
> curl $ALB/mgt/index.html --silent
<h1>ELB LAB Mgt Web Page-1</h1>
> for i in {1 2 3 4}; do curl $ALB/mgt/index.html --silent; done | sort | uniq -c|sort -nr
2 <h1>ELB LAB Mgt Web Page</h1>
2 <h1>ELB LAB Mgt Web Page-1</h1>
'개인공부 > AWS' 카테고리의 다른 글
[AWS] NLB 생성 및 동작 확인 (0) | 2024.01.26 |
---|---|
[AWS] ALB 생성 및 동작 과정 확인 (0) | 2024.01.26 |
[AWS] CloudFormation 기본 인프라 배포 및 환경 검증 (0) | 2024.01.26 |
[AWS] CloudFormation 기초 내용 정리 (0) | 2024.01.25 |
[AWS] 데이터베이스 서비스 (0) | 2024.01.25 |