티스토리 뷰

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>
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/06   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
글 보관함