'Application Request Routing'에 해당되는 글 3건
로드밸런서는 Health Test 결과를 바탕으로 서버의 상태를 파악하고 있고 설정된 로드밸런싱 알고리즘에 따라서 정상적인 서버로 트래픽을 연결합니다.
따라서 로드밸런서가 하는 역할중 가장 기초가 되는것이 어떤 서버가 살아있고 어떤 서버가 죽었는지를 파악하는겁니다.
각 서버의 작동상태를 제대로 파악하지 못하면 멈춰있거나 문제가 있는 서버에 계속해서 트래픽을 보내주게 되고
그러면 정상적으로 서비스를 제공받지 못하는 클라이언트가 생기게 되죠.
ARR은 아래의 두가지 방법으로 웹서의 정상작동 유무를 파악합니다.
- URL Test
지정한 URL로 정해진 시간간격으로 리퀘스트를 보내서 정해진 응답코드를 정해진 시간내에 반환하는지를 체크해서 응답에 이상이 있을경우에는 서버가 Unhealthy로 변경됩니다.
Unhealthy로 체크된 서버는 다음 체크때 정상응답을 하면 Healthy로 되돌아갑니다.
- Live Traffic Test
모든 응답의 상태코드를 파악해서 정해진 허용범위를 벗어났을경우에 서버가 Unhealthy로 변경됩니다. 웹어플리케이션의 시스템에러가 연쇄적으로 발생하여 관리자의 확인이 필요한 경우등에 유용하게 사용됩니다.
Unhealthy로 체크된 서버는 자동적으로 Healthy로 되돌아 가지않습니다. Healthy로 되돌리려면 관리자가 수동으로 되돌리거나 다음 URL Test때 응답이 성공하면 Healthy로 되돌아감.
아래의 설정페이지의 각 설정값을 봐가면서 자세히 알아보도록 하겠습니다.
| 설정 | 설명 |
| URL | 테스트를 할 URL입니다. 이미지 파일이나 텍스트 파일 또는 정적인 HTML파일등 서버에 부담이 적은 요청을 테스트할 수 있는 URL을 지정합니다. |
| Interval (초) | 테스트할 시간간격입니다. |
| Time-Out (초) | 응답 timeout을 지정합니다. 10으로 지정하면 응답이 10초이상 지연되면 실패한것으로 판단합니다. |
| Acceptable status codes | 정상으로 인식할 응답코드입니다. |
| Response match | 응답에서 특정 문자열을 검색하여 성공실패 여부를 판단합니다. 예를들어 success를 지정하면 응답되는 내용에 success가 있어야만 성공한걸로 판단합니다. |
| Failure codes | 요청 실패로 인식할 응답코드입니다. |
| Maximum failures | 허용할 최대 요청실패 수입니다. |
| Failover period(초) | 설정한 시간동안 위의 Maximum failures에 설정한 실패가 발생한 경우 서버를 Unhealthy로 체크합니다. 0으로 설정하면 이 기능을 사용하지 않습니다. |
| Minimum severs | 정상가동중이어야 할 최소 서버수입니다. 3으로 설정했는데 정상인 서버가 2대라면 ARR서버에서 일부 유저의 요청을 거절합니다. (라고는 되어있는데 실제 확인해보기가 어렵더군요. 혹시 성공하신분이 계시면 알려주세요) |
Health Test를 위한 프로퍼티를 입력한 후에 Verify URL Test를 클릭하여 정상적으로 수행되는지를 확인해보고 Action Pane의 저장을 클릭하여 설정을 저장합니다.
'IIS' 카테고리의 다른 글
| ARR을 사용하여 간단 로드밸런싱 웹팜 구성하기 3 - 로드밸런싱을 위한 Health Test의 이해 (0) | 2011/11/27 |
|---|---|
| ARR(Application Request Rounting) 사용하여 간단 로드밸런싱 웹팜 구성하기 2 - ARR 설정하기 (0) | 2011/11/24 |
| ARR(Application Request Rounting) 사용하여 간단 로드밸런싱 웹팜 구성하기 1 - ARR 설치하기 (0) | 2011/10/31 |
| IIS 확장기능(부하분산) ARR - Application Request Routing 이란 (0) | 2011/10/24 |
ARR(Application Request Rounting) 사용하여 간단 로드밸런싱 웹팜 구성하기 2 - ARR 설정하기

정상적으로 작동되는지 확인하기 위하여 다음두가지를 사전에 실시해주세요.
- 웹서버1과 웹서버2에 IIS설치
- 부하분산이 제대로 이루어지는지 동작확인을 위해 각 서버의 Default Web Site의 iisstart.htm에 서버명을 추가합니다
1. AppPool의 유휴 시간 설정을 0으로 변경
ARR서버는 웹서버와 다르게 사용자 접속이 없어서 중지되어서는 안됩니다.
유휴시간 제한을 0으로 변경해서 항시 기동되는 상태로 전화해줍니다.
2. 서버팜 추가
제일 하단의 Server Farm에서 우측버튼 클릭후 Create Server Farm을 선택하고 서버팜의 이름을 정하고 다음을 누릅니다.
3. 서버팜에 서버추가
1) 웹서버IP주소를 넣습니다.
2) Advanced Settings에서 ARR서버가 웹서버와 통신할 포트랑 weight정보를 입력한후 Add 를 클릭합니다.
httpPort는 ARR서버와 웹서버가 http통신할때 사용하는 포트번호, httpsPorts는 https통신할 포트번호입니다.
weight는 로드밸런싱할때 어느 서버로 요청을 많이보낼지를 지정하는 가중치입니다.
3) 반복해서 웹서버2도 추가합니다.
4. 잘되나 확인해봅니다.
ARR서버의 주소(저는 192.168.0.90으로 설정했습니다.)로 IE를 열고 접속해봅니다.
접속하면 아래와 같이 서버명이 표시된 IIS초기화면이 표시됩니다.
근데 몇번 새로고침하면 아시겠지만 계속 동일한 서버만 표시됩니다. 정말 로드밸런싱 되고 있는것일까요?
수십번정도 새로고침해보세요. 어느샌가 Server2로 변경되어있을겁니다..^^;
왜 이런현상이 일어나는가 하면..다음회에 로드밸런싱 옵션에 대하여 다룰테니 그때 설명하도록 하겠습니다.
'IIS' 카테고리의 다른 글
| ARR을 사용하여 간단 로드밸런싱 웹팜 구성하기 3 - 로드밸런싱을 위한 Health Test의 이해 (0) | 2011/11/27 |
|---|---|
| ARR(Application Request Rounting) 사용하여 간단 로드밸런싱 웹팜 구성하기 2 - ARR 설정하기 (0) | 2011/11/24 |
| ARR(Application Request Rounting) 사용하여 간단 로드밸런싱 웹팜 구성하기 1 - ARR 설치하기 (0) | 2011/10/31 |
| IIS 확장기능(부하분산) ARR - Application Request Routing 이란 (0) | 2011/10/24 |
ARR(Application Request Rounting) 사용하여 간단 로드밸런싱 웹팜 구성하기 1 - ARR 설치하기

이 예제를 따라하기위해선 ARR서버, 웹서버1, 웹서버2의 서버가 필요합니다.
(2대만 가지고 ARR을 이용한 꼼수도 있지만 그건 나중에 따로 다루도록 하겠습니다.)
각 서버에는 IIS와 .Net프레임워크등 기본적인 웹사이트 구동을 위한 프로그램들도 설치되어야 하고요..
그리고 실질적인 ARR서버 설치를 위해서는 ARR서버에서만 설정을 해주면 됩니다.
불필요하게 ARR2.5를 웹서버에 인스톨 안하셔도 됩니다.
1. IIS.Net (http://www.iis.net/download/ApplicationRequestRouting)사이트에서 Install버튼을 누릅니다.
2. 다음 화면에서 웹플랫폼 다운로드를 눌러 웹플랫폼 설치관리자를 설치합니다.
IIS의 확장기능은 독립설치파일이 아니라 전부 웹플랫폼을 통해서 설치를 하게되더군요.
관련제품들을 간단하게 설치할수 있도록 일부러 마련해놓은거 같습니다.
3. 설치정보가 표시되면 좌측하단의 설치할 항목을 눌러보시기 바랍니다.
ARR은 단독으로 설치되는게 아니라 몇개의 확장기능이 같이 설치됩니다.
4. 다음목록은 같이 설치되는 확장기능들인데 눈여겨 볼것이 Web Farm Framework, External Cache, URL 재작성2.0 입니다.
Web Farm Framework는 다중웹서버를 구현하여 부하분산을 하고 있는 웹사이트 환경을 쉽게 관리할수 있게 해주는 기능이고,
External Cache는 ARR서버의 캐쉬를 메모리가 아닌 하드디스크에 저장해주는 역할과 캐쉬된 리소스를 관리하는 역할을 해줍니다.(IIS는 원래 메모리캐쉬밖에 지원을 안해서 그렇습니다.)
URL재작성(URL Rewrite)은 요청한 URL과 리퀘스트파라메터를 기초로 정해진 규칙으로 URL변환을 하여 각 서버로 연결해줍니다.
그리고 핵심이 되는 ARR은 설치되는 3개의 확장기능을 통합하여 대규모 부하분산 시스템을 구축할 수 있도록 해주는 거죠.
5. 다 보셨으면 설치를 눌러 진행합니다.
6. 설치완료화면이 나오면 설치가 완료된 것입니다. 설치후에는 IIS재기동 하시면 됩니다.
참고자료
Web Farm Framework - http://www.iis.net/download/webfarmframework
URL 재작성 - http://www.iis.net/download/URLRewrite
External Cache - http://learn.iis.net/page.aspx/575/configure-and-enable-disk-cache-in-application-request-routing/
'IIS' 카테고리의 다른 글
| ARR을 사용하여 간단 로드밸런싱 웹팜 구성하기 3 - 로드밸런싱을 위한 Health Test의 이해 (0) | 2011/11/27 |
|---|---|
| ARR(Application Request Rounting) 사용하여 간단 로드밸런싱 웹팜 구성하기 2 - ARR 설정하기 (0) | 2011/11/24 |
| ARR(Application Request Rounting) 사용하여 간단 로드밸런싱 웹팜 구성하기 1 - ARR 설치하기 (0) | 2011/10/31 |
| IIS 확장기능(부하분산) ARR - Application Request Routing 이란 (0) | 2011/10/24 |
![]() |
![]() |
|
![]() |
![]() |
![]() |

Prev





