웹 팜 프레임워크를 사용하여 서버 팜 만들기
작성자: Jason Lee
이 항목에서는 WFF(Web Farm Framework) 2.0을 사용하여 서버 컬렉션에서 웹 서버 팜을 만들고 구성하는 방법을 설명합니다.
WFF를 사용하면 여러 부하 분산된 웹 서버에서 웹 플랫폼 제품 및 구성 요소, 웹 애플리케이션, 웹 사이트 및 구성 설정을 동기화할 수 있습니다. 스테이징 및 프로덕션 환경과 같이 둘 이상의 웹 서버가 필요한 시나리오에서는 배포 및 구성 프로세스를 크게 간소화할 수 있습니다. 단일 서버(주 서버)에 웹 애플리케이션을 배포할 수 있으며 WFF는 서버 팜의 다른 모든 웹 서버에서 해당 웹 애플리케이션을 자동으로 복제합니다.
웹 팜 프레임워크 이해
WFF 2.0을 사용하여 웹 서버 그룹에 콘텐츠를 프로비전, 관리 및 배포할 수 있습니다. WFF 배포는 세 가지 주요 서버 역할로 구성됩니다.
- 컨트롤러 서버입니다. 이 서버를 사용하여 WFF 서버 팜을 만들고 구성합니다. 컨트롤러 서버는 서버 팜의 웹 서버 간에 웹 플랫폼 구성 요소, 구성 설정 및 애플리케이션의 동기화를 관리합니다. 컨트롤러 서버에 WFF 2.0을 설치하면 컨트롤러 서버가 서버 팜의 각 서버에 WFF 에이전트를 설치합니다. 컨트롤러 서버는 개념적으로 WFF 서버 팜에 속하지 않으며 단일 컨트롤러 서버는 여러 서버 팜을 관리할 수 있습니다. 이 시나리오에서는 단일 WFF 컨트롤러 서버를 사용하여 스테이징 서버 팜 및 프로덕션 서버 팜을 만들고 관리합니다.
- 주 서버입니다. 각 WFF 서버 팜에는 단일 주 서버가 포함됩니다. 웹 플랫폼 구성 요소를 설치하거나 주 서버에 애플리케이션을 배포하는 경우 WFF는 변경 내용을 서버 팜의 다른 모든 서버와 동기화합니다.
- 보조 서버입니다. 각 WFF 서버 팜에는 하나 이상의 보조 서버가 포함됩니다. 주 서버에 대한 변경 내용은 서버 팜 내의 모든 보조 서버에 복제됩니다.
다음은 이러한 서버 역할이 Fabrikam, Inc. 스테이징 및 프로덕션 환경과 어떻게 관련되어 있는지 보여줍니다.
이 시나리오에서는 스테이징 환경과 프로덕션 환경이 모두 WFF 서버 팜으로 구성됩니다. 단일 WFF 컨트롤러 서버는 두 팜을 모두 관리합니다. 각 서버 팜 내에서 주 서버에 대한 모든 변경 내용은 모든 보조 서버에 복제됩니다.
스테이징 및 프로덕션 환경 구성을 시작하기 전에 WFF 2.0의 주요 개념을 숙지하려면 다음 문서를 읽어보는 것이 좋습니다.
작업 개요
이 항목의 작업 및 연습을 완료하려면 세 개 이상의 서버(WFF 컨트롤러 1개, 서버 팜의 기본 웹 서버 1개 및 서버 팜용 하나 이상의 보조 웹 서버)가 필요합니다. 언제든지 WFF 서버 팜에 보조 서버를 더 추가할 수 있습니다. 높은 수준에서 스테이징 또는 프로덕션 환경에 대한 WFF 서버 팜을 만들고 구성하려면 다음을 수행해야 합니다.
- IIS(인터넷 정보 서비스) 7.5 및 WFF 2.0을 설치하여 컨트롤러 서버를 만듭니다.
- 일반 관리자 계정을 만들고 방화벽 예외를 구성하여 기본 및 보조 서버를 준비합니다.
- 컨트롤러 서버에서 IIS 관리자를 사용하여 서버 팜을 구성합니다.
- IIS ARR(애플리케이션 요청 라우팅) 또는 대체 부하 분산 기술을 사용하여 부하 분산을 구성합니다.
이 항목의 작업 및 연습에서는 Windows Server 2008 R2를 실행하는 클린 서버 빌드부터 시작한다고 가정합니다. 시작하기 전에 각 서버에 대해 다음을 확인합니다.
- Windows Server 2008 R2 서비스 팩 1 및 사용 가능한 모든 업데이트가 설치됩니다.
- 서버가 도메인에 가입되어 있습니다.
- 서버에 고정 IP 주소가 있습니다.
참고 항목
컴퓨터를 도메인에 조인하는 방법에 대한 자세한 내용은 도메인에 컴퓨터 조인 및 로그온을 참조하세요. 고정 IP 주소 구성에 대한 자세한 내용은 고정 IP 주소 구성을 참조 하세요.
WFF 컨트롤러 서버 만들기
WFF 컨트롤러 서버를 만들려면 IIS 7 이상과 WFF 2.0 이상을 모두 설치해야 합니다. WFF는 IIS 웹 배포 도구(웹 배포) 2.x를 사용하여 팜의 서버를 동기화합니다. 웹 플랫폼 설치 관리자를 사용하여 WFF를 설치하는 경우 설치 관리자가 자동으로 웹 배포를 다운로드하고 설치합니다.
WFF 컨트롤러 서버를 만들려면
웹 플랫폼 설치 프로그램을 다운로드하고 설치합니다.
웹 플랫폼 설치 관리자 3.0 창의 맨 위에서 제품을 클릭합니다.
창 왼쪽의 탐색 창에서 서버를 클릭합니다.
IIS 7 권장 구성 행에서 추가를 클릭합니다.
웹 팜 프레임워크 2에서x 행, 추가를 클릭합니다.
설치를 클릭합니다. 웹 플랫폼 설치 관리자가 다른 다양한 종속성과 함께 웹 배포 도구를 설치 목록에 추가했습니다.
사용 조건을 검토하고 조건에 동의하는 경우 동의를 클릭합니다.
설치가 완료되면 마침을 클릭한 다음 웹 플랫폼 설치 관리자 3.0 창을 닫습니다.
주 및 보조 서버 구성
WFF 서버 팜을 만들기 전에 팜을 구성하는 웹 서버에서 몇 가지 준비 작업을 완료해야 합니다.
- 핵심 네트워킹, 원격 관리 및 파일 및 프린터 공유 기능이 WFF 컨트롤러 서버와 통신할 수 있도록 방화벽 예외를 추가합니다.
- Active Directory에서 도메인 계정(예: FABRIKAM\stagingfarm)을 만들고 각 서버의 로컬 관리자 그룹에 추가합니다. 서버 팜을 만들 때 이 계정을 서버 팜 관리자 계정으로 사용합니다.
Windows 방화벽에서 이러한 방화벽 예외를 구성하는 방법에 대한 자세한 내용은 IIS 7용 웹 팜 프레임워크 2.0에 대한 시스템 및 플랫폼 요구 사항을 참조하세요. 다른 방화벽 시스템의 경우 제품 설명서를 참조하세요.
다음 절차를 사용하여 Windows Server 2008 R2의 로컬 관리자 그룹에 도메인 계정을 추가할 수 있습니다. 서버 팜에 추가하려는 모든 서버에서 이 절차를 수행해야 합니다. 즉, 주 서버 및 각 보조 서버의 로컬 관리자 그룹에 동일한 도메인 계정을 추가합니다.
로컬 관리자 그룹에 도메인 계정을 추가하려면
시작 메뉴에서 관리 도구를 가리킨 다음 서버 관리자 클릭합니다.
서버 관리자 창의 트리 뷰 창에서 구성을 확장하고 로컬 사용자 및 그룹을 확장한 다음 그룹을 클릭합니다.
그룹 창에서 관리자를 두 번 클릭합니다.
관리자 속성 대화 상자에서 추가를 클릭합니다.
사용자, 컴퓨터, 서비스 계정 또는 그룹 선택 대화 상자에서 도메인 계정(예: FABRIKAM\stagingfarm)을 입력(또는 찾아보기)한 다음 확인을 클릭합니다.
관리자 속성 대화 상자에서 확인을 클릭합니다.
이제 서버를 서버 팜에 추가할 준비가 되었습니다. 주 서버의 경우 서버 팜을 만들기 전이나 후에 애플리케이션 요구 사항을 충족하도록 서버를 구성할 수 있습니다. 두 경우 모두 WFF는 동일한 제품, 구성 요소 또는 구성을 보조 서버에 배포하여 서버를 동기화합니다. 간단히 하기 위해 이 자습서에서는 서버 팜 만들기를 마쳤을 때 주 서버를 구성한다고 가정합니다.
WFF 서버 팜 만들기
이 시점에서 모든 서버를 WFF 서버 팜에 추가할 준비가 됩니다.
- 컨트롤러 서버에 WFF를 설치했습니다.
- 기본 및 보조 웹 서버에서 방화벽 예외를 구성했습니다.
- 기본 및 보조 웹 서버의 로컬 관리자 그룹에 도메인 계정을 추가했습니다.
다음 단계는 WFF에서 서버 팜을 만드는 것입니다. WFF 컨트롤러 서버의 IIS 관리자에서 이 작업을 수행할 수 있습니다.
WFF 서버 팜을 만들려면
WFF 컨트롤러 서버의 시작 메뉴에서 관리 도구를 가리킨 다음 iiS(인터넷 정보 서비스) 관리자를 클릭합니다.
연결 창에서 로컬 서버 노드를 확장하고 서버 팜을 마우스 오른쪽 단추로 클릭한 다음 서버 팜 만들기를 클릭합니다.
서버 팜 만들기 대화 상자에서 서버 팜의 의미 있는 이름(예: 스테이징 팜)을 입력한 다음 서버 팜 프로비저닝을 선택합니다.
각 서버의 로컬 관리자 그룹에 추가한 도메인 계정의 사용자 이름과 암호를 입력합니다.
다음을 클릭합니다.
서버 추가 페이지에서 주 서버의 FQDN(정규화된 도메인 이름)을 입력하고 주 서버를 선택한 다음 추가를 클릭합니다.
이 시점에서 WFF는 사용자가 제공한 자격 증명을 사용하여 주 서버에 연결하려고 시도합니다. 연결에 성공하면 주 서버가 서버 추가 페이지의 테이블에 추가됩니다.
참고 항목
부하 분산에 사용할 수 있는 서버가 기본적으로 선택되어 있음을 알 수 있습니다. WFF는 IIS ARR 모듈을 사용하여 부하 분산을 구현하여 서버 팜의 웹 서버에 요청을 분산합니다. 대부분의 시나리오 에서는 타사 부하 분산 솔루션을 대신 사용하려는 경우에만 서버 부하 분산 옵션을 사용할 수 있습니다.
서버 추가 페이지에서 첫 번째 보조 서버의 FQDN을 입력한 다음 추가를 클릭합니다.
팜의 추가 보조 서버에 대해 7단계를 반복한 다음 마침을 클릭합니다.
이제 WFF 서버 팜이 실행 중입니다. 주 서버에 설치하는 모든 웹 플랫폼 제품 또는 구성 요소와 주 서버에 배포하는 모든 웹 애플리케이션 또는 콘텐츠는 모든 보조 서버에 자동으로 프로비전됩니다.
WFF는 광범위하고 복잡한 항목이며, IIS 7용 Microsoft Web Farm Framework 2.0 웹 사이트에서 자세히 알아볼 수 있습니다. 그러나 당분간은 다음 두 가지 기능 영역을 알아야 합니다.
- 애플리케이션 프로비전 은 서버 팜의 모든 보조 서버에서 웹 애플리케이션 및 구성 설정과 같은 기본 서버에서 콘텐츠를 복제하는 프로세스입니다. 예를 들어 연락처 관리자 샘플 솔루션을 기본 스테이징 서버에 배포하는 경우 WFF 애플리케이션 프로비저닝 프로세스는 이 솔루션을 모든 보조 준비 서버에 배포합니다. 기본적으로 애플리케이션 프로비저닝 프로세스는 30초마다 실행됩니다.
- 플랫폼 프로비전 은 주 서버에서 서버 팜의 모든 보조 서버로 웹 플랫폼 제품 및 구성 요소를 동기화하는 프로세스입니다. 예를 들어 주 스테이징 서버에 ASP.NET MVC 3을 설치하는 경우 플랫폼 프로비전 프로세스는 웹 플랫폼 설치 관리자를 사용하여 모든 보조 준비 서버에 ASP.NET MVC 3을 설치합니다. 기본적으로 플랫폼 프로비저닝 프로세스는 5분마다 실행됩니다.
WFF 컨트롤러 서버의 IIS 관리자에서 기본 애플리케이션 및 플랫폼 프로비저닝 설정을 관리할 수 있습니다.
애플리케이션 및 플랫폼 프로비저닝 설정 살펴보기
IIS 관리자의 연결 창에서 서버 팜을 선택합니다.
서버 팜 창에서 애플리케이션 프로비저닝을 두 번 클릭합니다.
볼 수 있듯이 서버 팜은 현재 30초마다 주 서버와 보조 서버 간에 웹 콘텐츠 및 구성 설정을 동기화하도록 구성됩니다.
뒤로를 클릭한 다음 플랫폼 프로비저닝을 두 번 클릭합니다.
볼 수 있듯이 서버 팜은 현재 5분마다 주 서버와 보조 서버 간에 웹 플랫폼 제품 및 구성 요소를 동기화하도록 구성됩니다.
뒤로를 클릭합니다.
서버 팜이 웹 플랫폼 제품을 즉시 동기화하도록 강제하려면 작업 창에서 플랫폼 프로비저닝을 클릭합니다.
참고 항목
플랫폼 프로비저닝에는 다소 시간이 걸릴 수 있습니다. 설치 관리자 프로세스는 서버 팜의 보조 서버에서 백그라운드로 실행됩니다.
프로비전 프로세스가 완료될 수 있는 충분한 시간을 허용했으면 주 서버에 추가한 제품 및 구성 요소가 이제 보조 서버에서 복제되었는지 확인할 수 있습니다. 예를 들어 보조 서버에 로그온하고 서버 관리자 창을 사용하여 웹 서버 역할이 설치되었는지 확인할 수 있습니다.
설치된 프로그램 목록을 확인하여 다양한 웹 플랫폼 구성 요소가 추가되었는지 확인할 수도 있습니다.
부하 분산 구성
웹 팜을 만들 때 웹 서버 간에 HTTP 요청을 분산하도록 부하 분산의 형식을 설정해야 합니다. Windows Server 2008 네트워크 부하 분산, IIS ARR 또는 타사 소프트웨어 기반 또는 하드웨어 기반 부하 분산 솔루션일 수 있습니다.
WFF는 IIS ARR과 긴밀하게 통합되도록 설계되었습니다. 이 통합을 활용하려면 WFF 컨트롤러 서버에 ARR 모듈을 설치해야 합니다. 그런 다음, 일반적으로 DNS(도메인 이름 시스템) 레코드를 구성하여 모든 웹 트래픽을 컨트롤러 서버로 전달합니다. 그러면 컨트롤러 서버는 서버 가용성 및 기타 다양한 기준에 따라 팜의 서버 간에 들어오는 요청을 배포합니다.
참고 항목
WFF에서 ARR을 사용할 필요가 없습니다. 타사 부하 분산 솔루션에서 작동하도록 WFF를 구성할 수 있습니다. 자세한 내용은 IIS 7용 웹 팜 프레임워크 2.0 개요를 참조하세요.
ARR을 사용한 부하 분산은 복잡한 항목이며, 대부분은 이 자습서의 범위를 벗어납니다. 그러나 다음 절차를 사용하여 ARR 모듈을 설치하고 부하 분산을 시작할 수 있습니다.
WFF 컨트롤러 서버에서 부하 분산을 설정하려면
WFF 컨트롤러 서버에서 웹 플랫폼 설치 관리자를 시작합니다.
웹 플랫폼 설치 관리자 3.0 창의 맨 위에서 제품을 클릭합니다.
창 왼쪽의 탐색 창에서 서버를 클릭합니다.
애플리케이션 요청 라우팅 2.5 행에서 추가를 클릭합니다.
설치를 클릭한 다음 웹 플랫폼 설치 창의 지침을 따릅니다.
설치가 완료되면 IIS 관리자를 시작하고 연결 창에서 서버 팜 노드를 클릭합니다. 서버 팜 창에 몇 가지 새 아이콘이 추가되었습니다.
서버 팜 창에서 부하 분산을 두 번 클릭합니다.
부하 분산 창에서 부하 분산 알고리즘(예: 최소 현재 요청)을 선택합니다.
참고 항목
부하 분산 알고리즘 및 기타 구성 설정에 대한 자세한 내용은 애플리케이션 요청 라우팅 모듈을 참조 하세요.
작업 창에서 적용을 클릭합니다.
이제 서버 팜의 서버에 대한 기본 부하 분산을 구성했습니다. 모든 웹 팜 트래픽을 컨트롤러 서버로 전송하는 경우 요청은 가용성 및 선택한 부하 분산 알고리즘에 따라 팜의 서버 간에 분산됩니다.
ARR을 사용하여 부하 분산을 구성하는 방법에 대한 자세한 내용은 애플리케이션 요청 라우팅 모듈을 참조 하세요.
서버 팜 모니터링
컨트롤러 서버의 IIS 관리자를 통해 언제든지 서버 팜의 상태를 모니터링할 수 있습니다. 연결 창에서 서버 팜을 확장한 다음 서버를 클릭합니다. 가운데 창에는 팜의 각 서버에 대한 요약과 최근 활동의 추적 로그가 표시됩니다.
결론
이제 WFF 서버 팜이 실행 중이어야 합니다. 원하는 배포 방법을 지원하도록 주 서버를 구성할 수 있습니다. 자세한 내용은 추가 읽기 섹션을 참조하세요. 그러면 구성이 서버 팜의 각 보조 서버에 복제됩니다.
추가 정보
WFF 구성 및 사용의 모든 측면에 대한 자세한 지침은 IIS 7용 Microsoft Web Farm Framework 2.0 웹 사이트를 참조하세요.