응용 프로그램 요청 라우팅 서버들의 다중 인스턴스 이용하기

등록일시: 2011-07-14 14:18,  수정일시: 2013-11-26 14:46
조회수: 4,122
이 문서는 IIS 기술을 널리 알리고자 하는 개인적인 취지로 제공되는 번역문서입니다. 이 문서에 대한 모든 저작권은 마이크로소프트에 있으며 요청이 있을 경우 언제라도 게시가 중단될 수 있습니다. 번역 내용에 오역이 존재할 수 있고 주석은 번역자 개인의 의견일 뿐이며 마이크로소프트는 이에 관한 어떠한 보장도 하지 않습니다. 번역이 완료된 이후에도 대상 제품 및 기술이 개선되거나 변경됨에 따라 원문의 내용도 변경되거나 보완되었을 수 있으므로 주의하시기 바랍니다.

개요

본문에서는 여러 개의 응용 프로그램 요청 라우팅 서버 인스턴스들 간의 호스트 이름 친화성 데이터를 관리하는데 사용할 수 있는 IIS 7.0용 마이크로소프트 외부 캐시(Microsoft External Cache)를 구성하는 과정들을 살펴봅니다.

IIS 7.0용 외부 캐시는 오직 다음과 같은 조건들을 만족하는 경우에만 필요하다는 점에 유의하시기 바랍니다:

  1. 호스트 이름 친화성 기능이 사용되고 있으며,
  2. 여러 개의 응용 프로그램 요청 라우팅 서버가 사용되고 있는 환경인 경우입니다.

외부 캐시는 IIS 7.0용 디스크 기반 캐시 모듈입니다.

목표

IIS 7.0용 마이크로소프트 외부 캐시를 구성해서 응용 프로그램 요청 라우팅과 함께 사용하는 것이 본문의 목표입니다:

전제조건

본문의 과정을 정상적으로 따라해보기 위해서는 먼저 다음과 같은 조건들을 만족해야만 합니다:

  • 최소한 두 개 이상의 IIS 7.0이 설치되어 있는 윈도우 2008(모든 SKU 가능) 이상의 시스템
  • 마이크로소프트 응용 프로그램 요청 라우팅 버전 1 및 관련 모듈들 (마이크로소프트 외부 캐시 버전 1 포함)
  • 사이트 및 응용 프로그램이 실행되고 있는 최소한 두 개 이상의 응용 프로그램 서버
  • 응용 프로그램 요청 라우팅이 파일들을 읽거나 쓸수 있는 파일 공유

만약, 아직 응용 프로그램 요청 라우팅 버전 1을 설치하지 않았다면, 다음 링크에서 다운로드가 가능합니다: *

응용 프로그램 요청 라우팅을 설치하는 보다 자세한 방법은 응용 프로그램 요청 라우팅 설치하기를 참고하시기 바랍니다.

최소한 두 개의 응용 프로그램 요청 라우팅 서버와 두 개의 응용 프로그램 서버가 준비되어 있어야 합니다. 응용 프로그램 요청 라우팅 서버들을 동일하게 구성하기 위해서 공유 구성을 활용할 수 있으며, 응용 프로그램 서버들 간의 동기화를 유지하기 위해서 또 다른 공유 구성을 사용할 수 있습니다. 공유 구성에 관한 보다 자세한 정보는 이 문서를 참고하시기 바랍니다.

그리고, 마지막으로 응용 프로그램 요청 라우팅 모듈 서버 팜 정의 및 구성하기 문서에서 설명하는 과정을 참고하여 정의 및 구성된 서버 팜이 준비되어 있어야 합니다.

* 이전 문서에서 설명했던 것처럼 현재 ARR의 최신 버전은 2.5로(2011년 7월 14일 현재), 두 링크 중 어떤 것을 선택하더라도 그 결과는 같습니다. 결론적으로 웹 플랫폼 설치 관리자에 의해서 모든 설치 과정이 이뤄지도록 변경되었습니다.

단계 1 - 외부 캐시 활성화시키기

UI를 이용해서 외부 캐시를 활성화시키려면:

  1. IIS 관리자를 실행합니다.
  2. 좌측 트리뷰에서 본문을 위해서 준비한 서버 팜을 선택합니다.
  3. 그러면, 다음과 같은 아이콘들이 나타납니다.
  4. "Server Affinity" 아이콘을 마우스로 더블 클릭합니다.
  5. 이미 설명한 바와 같이, 외부 캐시는 호스트 이름 친화성 기능을 사용하고 있으면서 여러 개의 응용 프로그램 요청 라우팅 인스턴스가 존재하는 경우에만 필요합니다. 따라서, "Use host name" 체크 박스가 체크되어 있는지 다시 한 번 확인합니다.
  6. "Use external cache" 체크 박스를 체크해서 외부 캐시를 활성화시킵니다. "File share path" 텍스트 박스 항목은 필수 항목으로, 응용 프로그램 요청 라우팅 서버들 간의 호스트 이름 친화성 상태를 관리하기 위해 응용 프로그램 요청 라우팅 서버들이 접근하게 되는 위치를 지정합니다.
  7. 이상의 과정들을 모든 응용 프로그램 요청 라우팅 서버들에 반복합니다.
  8. 기능이 정상적으로 동작하는지 확인해보려면 호스트 이름을 지정해서 응용 프로그램 요청 라우팅 서버들 중 한 서버로 요청을 전송해봅니다. 그리고, 해당 호스트 이름에 대한 친화성이 어떤 응용 프로그램 서버에 부여되는지 기록해두십시오. 그런 다음, 동일한 요청을 다른 응용 프로그램 요청 라우팅 서버들로 전송해봅니다. 그러면, 호스트 이름을 지정해서 전송한 요청이 어떤 응용 프로그램 요청 라우팅 서버에 의해서 처리되던지 항상 동일한 응용 프로그래 서버로 전달되는 것을 확인할 수 있습니다.
  9. 필요한 경우 데이터가 기록되는 파일 공유를 확인해 볼 수도 있습니다.

명령 프롬프트를 이용해서 외부 캐시를 활성화시키려면:

  1. 관리자 권한으로 명령 프롬프트를 엽니다.
  2. %windir%\system32\inetsrv로 이동합니다.
  3. 다음의 명령어를 입력해서 호스트 이름 친화성을 활성화시킵니다 (여기에서는 서버 팜의 이름이 "myServerFarm" 이라고 가정합니다):
    appcmd.exe set config -section:webFarms 
        /[name='myServerFarm'].applicationRequestRouting.affinity.useHostName:"True" 
        /commit:apphost
  4. 다음 스크립트를 입력해서 외부 캐시를 활성화시키고 구성합니다 (여기에서는 앞의 UI를 이용한 설명에서와 동일한 값을 사용합니다). 그리고, ******** 부분에는 비밀번호를 입력합니다:
    appcmd.exe set config -section:system.webServer/externalCache/diskCache 
        /[name='ARRCache'].path:"\\wonyoo-w2k8-3\IISShared" /[name='ARRCache'].userName:"redmond\wonyoo" 
        /[name='ARRCache'].password:"********" /commit:apphost

요약

본문에서는 응용 프로그램 요청 라우팅 환경에서 호스트 이름 친화성 기능과 IIS 7.0용 마이크로소프트 외부 캐시를 함께 사용할 수 있도록 외부 캐시를 활성화시키고 구성해봤습니다. 응용 프로그램 요청 라우팅 계층에서 보다 높은 가용성을 얻기 위해 필요한 더 자세한 정보는 다음의 문서들을 참고하시기 바랍니다:

관련 자료