다음을 통해 공유


계획 3단계: IIS 웹 팜 부하 분산 계획

키스 뉴먼과 로버트 맥머레이

IIS 서버를 사용하여 웹 팜을 계획하는 과정의 이 단계에서는 부하 분산에 대해 알아봅니다. 또한 ARR(애플리케이션 요청 라우팅)을 사용하여 부하 분산을 구성하는 방법도 알아봅니다. ARR은 IIS용 프록시 기반 요청 라우팅 및 부하 분산 모듈입니다.

이러한 작업을 완료한 후에는 Step 4: Plan SSL Central Certificate Store을 진행하기 전에 디자인 관련 결정 사항을 기록합니다.

3.1. ARR을 사용한 부하 분산 계획

부하 분산은 여러 웹 서버로 워크로드를 분산시키는 방법입니다. 부하 분산의 목적은 리소스 사용률을 최적화하고, 요청 처리량을 극대화하고, 응답 시간을 최소화하고, 서버 오버로드를 방지하는 데 있습니다.

부하 분산 장치는 이러한 목적을 달성하기 위해 다양한 알고리즘을 사용합니다. 가장 간단한 알고리즘 중 하나인 라운드 로빈에서는 모든 서버의 부하를 동등하게 유지하기 위해 새로운 각 요청을 서로 다른 웹 서버로 보냅니다. 응답 시간을 줄이기 위해 특정 유형의 요청을 특정 서버로 보내는 알고리즘도 있습니다.

ARR(애플리케이션 요청 라우팅)은 HTTP 헤더, 서버 변수 및 부하 분산 알고리즘을 사용하여 콘텐츠 서버로 요청을 전달하는 방법을 결정하는 프록시 기반 라우팅 모듈입니다. ARR은 URL 재작성 모듈을 활용하여 들어오는 요청을 검사합니다.

ARR의 핵심 기능은 호스트 이름 선호도라고 합니다. 호스트 이름 선호도는 요청과 지정된 서버(또는 서버 집합) 간에 선호도(근접 연결)를 만듭니다. 그러면 지정된 사이트가 정의된 수의 서버에서만 리소스를 사용하게 됩니다.

팜의 모든 서버에 대한 IP 주소 목록을 준비합니다. ARR 부하 분산을 구성하려면 해당 목록이 필요합니다.

3.2. ARR의 다른 기능 설문 조사

이 시나리오에서는 다루지 않지만 ARR은 부하 분산 외에도 다양한 기능을 제공합니다. 다음 표에는 ARR에서 제공하는 기능이 요약되어 있습니다.

기능 Description
UI를 사용하여 캐시된 콘텐츠 찾아보기 캐시된 디렉터리 및 파일을 포함하여 여러 드라이브에서 캐시된 콘텐츠는 IIS 관리자에서 볼 수 있습니다.
바이트 범위 지원 ARR은 바이트 범위 요청을 작은 부분으로 분할하여 응답 시간에 영향을 주지 않고 캐시 적중/누락 비율을 높일 수 있도록 합니다.
캐시 계층 구조 관리 ARR을 사용하면 캐시 노드 간의 관계를 정의 및 관리할 수 있습니다. ARR이 CARP(Cache Array Routing Protocol)를 지원하므로 ARR을 에지 캐시 노드로 구성할 수 있습니다.
CDN/ECN 환경의 캐시 프록시 노드 ARR은 CDN(콘텐츠 배달 네트워크) 또는 ECN(에지 캐시 네트워크) 배포에서 캐시 프록시로 사용할 수 있습니다. ARR이 디스크 캐시 및 CARP를 지원하는 프록시 기반 HTTP 요청 라우팅 모듈이기 때문입니다.
압축된 개체 캐싱 ARR은 디스크 기반 캐시에 개체를 압축하여 저장하므로 이러한 개체가 모든 요청에 대해 실시간 비압축 상태로 유지됩니다.
응답을 처리하는 동안 캐싱 ARR은 실시간으로 응답을 처리하는 동안 큰 파일을 캐시할 수 있습니다.
클라이언트 선호도 ARR은 쿠키를 사용하여 클라이언트에서 콘텐츠 서버로의 모든 요청에 대해 선호도를 지정할 수 있습니다.
디스크 기반 캐싱 ARR은 사용자가 지정한 주 캐시 드라이브와 네트워크 기반 보조 캐시 드라이브에서 캐시된 콘텐츠를 지원합니다.
실패한 요청 추적 규칙 ARR은 추적 규칙을 사용하여 실패한 요청을 진단하고 문제를 해결합니다.
상태 모니터링 ARR은 실시간 트래픽 및 특정 URL 테스트에서 콘텐츠 서버의 상태를 확인하는 데 사용할 수 있는 구성 매개 변수를 제공합니다.
호스트 이름 선호도 호스트 이름 선호도-공유 호스트와 관련된 기능- 호스트가 선호하는 서버를 결정하기 위해 두 공급자(라운드 로빈 및 메모리)를 제공하여 배포 토폴로지를 변경합니다.
HTTP 기반 라우팅 결정 애플리케이션 요청 라우팅은 URL 재작성 모듈과 연동되어 HTTP 헤더 및 서버 변수를 기반으로 하는 라우팅 규칙을 작성하고 애플리케이션 수준에서 라우팅 결정을 수행합니다.
실시간 요청 지원 ARR은 요청을 원본 서버로 전달하기 전에 통합한 다음 캐시 누락 요청을 확인하여 실시간 콘텐츠 요청을 지원합니다.
부하 분산 알고리즘 ARR은 HTTP 요청 처리에 사용할 콘텐츠 서버를 확인하는 데 사용할 수 있는 6가지 부하 분산 알고리즘을 제공합니다.
UI를 사용한 관리 및 모니터링 ARR 구성 설정 및 런타임 통계는 IIS 관리자에서 볼 수 있습니다.
여러 서버 그룹 ARR은 파일럿 관리 및 A/B 테스트 시나리오에서 여러 콘텐츠 서버 그룹을 관리할 수 있습니다.
캐시 제어 지시문 재정의 ARR을 사용하면 캐시 기능, 캐시 기간 등의 캐싱 동작을 제어하는 캐시 제어 지시문을 재정의할 수 있습니다.
캐시된 콘텐츠 제거 ARR을 사용하면 URL 패턴 일치를 통해 캐시된 콘텐츠를 삭제할 수 있습니다.
캐시 노드 준비 ARR을 사용하면 콘텐츠를 미리 캐시하여 콘텐츠 요청 전에 수요를 예측할 수 있습니다. 부모 캐시 계층만 미리 캐시하거나 부모와 자식 캐시 계층을 모두 미리 캐시할 수 있습니다.

참고 항목