다음을 통해 공유


자동 설치 및 구성(AppFabric 1.1 캐싱)

이 섹션에서는 Windows Server용 AppFabric 1.1 캐싱 기능의 자동 설치 및 구성 단계에 대해 설명합니다. 무인 설치에서는 모든 옵션이 명령줄에서 지정되기 때문에 사용자에게는 아무런 사용자 인터페이스가 표시되지 않습니다. 캐시 호스트를 캐시 클러스터에 추가하거나 캐시 클러스터에서 캐시 호스트를 제거하는 데 필요한 일련의 특정 명령이 있습니다. 이 섹션에서는 두 시나리오에서 사용되는 명령에 대해 설명합니다. 또한 AppFabric 구성 마법사를 통해 사용자 인터페이스를 사용하여 캐싱 기능을 구성할 수 있습니다. AppFabric 구성 마법사에 대한 자세한 내용은 Windows Server AppFabric 구성을 참조하십시오.

이 섹션에서는 자동 설치 단계를 다섯 개의 작업으로 나눕니다.

  • Windows Server AppFabric 캐싱 기능 설치

  • 새 캐시 클러스터 만들기

  • 캐시 호스트 추가

  • 캐시 호스트 제거

  • 캐시 클러스터 제거

이러한 단계를 자동화하는 PowerShell 스크립트에 대해서는 아래 예를 참조하십시오.

Windows PowerShell 명령 시작 및 실행에 대한 기본 사항은 Windows PowerShell을 사용하여 Windows Server AppFabric 캐싱 기능 관리를 참조하십시오. 이러한 명령을 실행하기 전에 Import-Module을 사용하여 관리(DistributedCacheAdministration) 또는 구성(DistributedCacheConfiguration)용 Windows PowerShell을 가져와야 할 수도 있습니다.

다음 명령 중 일부는 대상 캐시 호스트에서 로컬로 실행되어야 하긴 하지만 Windows PowerShell은 원격 컴퓨터에서의 명령 실행을 지원합니다. 자세한 내용은 원격 명령 실행을 참조하십시오.

Windows Server용 AppFabric 1.1 캐싱 기능 설치

캐시 호스트에서 새 캐시 클러스터를 만들거나 AppFabric 캐싱을 구성하기 전에 먼저 Windows Server용 AppFabric 1.1 캐싱 기능을 설치해야 합니다. AppFabric을 자동으로 설치하는 방법에 대한 자세한 내용은 자동 설치를 참조하십시오. 캐싱 기능에는 다음이 포함됩니다.

  • CachingService

  • CacheClient

  • CacheAdmin

예를 들어 설치 이진의 이름이 Setup.exe인 경우의 시나리오를 고려해 보겠습니다. 실제로 이진 이름은 선택한 플랫폼에 따라 다릅니다. 다음 예에서는 AppFabric 캐싱 기능을 서버에 자동으로 설치하는 방법을 보여줍니다.

Setup.exe /install /i cachingservice,cacheclient,cacheadmin /l:c:\temp\setup.log

또한 이 예에서는 로그 파일을 c:\temp\setup.log로 디렉션합니다. 이 로그 파일을 검토하여 설치 결과를 조사할 수 있습니다. Windows Server용 Microsoft AppFabric 1.1에는 AppFabric의 설치 경로를 지정하는 p 옵션도 새로 추가되었습니다.

컴퓨터에 AppFabric 캐싱 기능을 설치한 후 구성해야 합니다. 다음 섹션에서는 이 프로세스 자동화에 필요한 단계에 대해 설명합니다.

새 캐시 클러스터 만들기

새 캐시 클러스터를 만드는 경우 먼저 New-CacheCluster Windows PowerShell 명령을 호출해야 합니다. 새 캐시 클러스터를 만들 때 클러스터 구성 설정을 저장할 위치를 결정해야 합니다. System.Data.SqlClient 공급자, XML 공급자 또는 사용자 지정 공급자를 사용하도록 선택할 수 있습니다. 자세한 내용은 구성 모델을 참조하십시오.

다음 예에서는 소규모 캐시 클러스터를 만듭니다. 또한 CacheClusterConfigurationDB라는 기존 데이터베이스가 있는 SQLServer1이라는 SQL Server 컴퓨터에 구성 설정을 저장합니다.

New-CacheCluster -Provider System.Data.SqlClient -ConnectionString  "Data Source=SQLServer1;Initial Catalog=CacheClusterConfigurationDB;Integrated Security=True" -Size Small

참고

캐시 클러스터의 가용성을 높이기 위해 SQL Server 데이터베이스 미러링을 사용하는 경우 연결 문자열에 장애 조치(failover) 파트너를 지정해야 합니다. 자세한 내용은 SQL Server 기반 클러스터 구성을 참조하십시오.

다음 예에서는 대규모 캐시 클러스터를 만듭니다. 또한 \\Server1\CacheConfigShare라는 네트워크 공유에 있는 XML 파일에 구성 설정을 저장합니다.

New-CacheCluster -Provider XML -ConnectionString  "\\Server1\CacheConfigShare" -Size Large

두 예 모두에서 호출자는 구성 저장소 위치에 대한 적절한 권한을 가지고 있어야 합니다. System.Data.SqlClient의 경우 호출자는 대상 데이터베이스에서 db_owner이거나 SQL Server 인스턴스에서 sysadmin 역할의 멤버여야 합니다. XML의 경우 호출자는 공유 폴더에 대한 소유자 권한을 가지고 있어야 합니다.

캐시 호스트 추가

캐시 호스트를 기존 캐시 클러스터에 추가하려면 다음 단계를 순서대로 수행해야 합니다.

명령/단계 설명

Register-CacheHost

캐시 호스트를 캐시 클러스터에 등록합니다.

Add-CacheHost

캐시 호스트를 캐시 클러스터의 일부로 구성합니다.

Add-CacheAdmin

선택적으로 현재 캐시 호스트에 캐시 관리를 구성합니다.

방화벽 구성

방화벽을 통한 AppFabricCachingService 서비스를 허용합니다. 또한 원격 서비스 관리를 허용합니다.

Start-CacheHost

새 캐시 호스트를 시작합니다.

Register-CacheHost

기존 캐시 클러스터에 캐시 호스트를 등록하려면 Register-CacheHost 명령을 사용합니다. 여기에는 캐싱 서비스에 대한 포트 번호 및 Windows 계정을 지정하는 작업이 포함됩니다. ProviderConnectionString 매개 변수는 새 캐시 호스트에 대한 대상 캐시 클러스터를 지정합니다.

다음 예에서는 구성 저장소가 파일 공유 \\Server1\CacheConfigShare에 있는 XML 파일에 위치해 있는 캐시 클러스터에 캐시 호스트 컴퓨터 CacheServer1을 추가합니다. 기본 제공 NT Authority\Network Service 계정은 캐싱 서비스의 ID에 대해 지정되어 있습니다.

Register-CacheHost -Provider XML -ConnectionString "\\Server1\CacheConfigShare"  -Account "NT Authority\Network Service" -CachePort 22233 -ClusterPort 22234  -ArbitrationPort 22235 -ReplicationPort 22236 -HostName  CacheServer1

XML 공급자의 경우 호출자는 대상 네트워크 공유에 대한 모든 권한을 가지고 있어야 합니다. System.Data.SqlClient 공급자의 경우 호출자는 읽기, 쓰기, SQL 로그인 만들기 및 대상 데이터베이스에 권한 추가 권한을 가지고 있어야 합니다.

다른 많은 구성 명령과 달리 Register-CacheHost 명령에는 HostName 매개 변수를 사용할 수 있으므로 이 명령을 원격으로 실행할 수 있습니다.

Add-CacheHost

Add-CacheHost 명령은 캐시 호스트가 기존 캐시 클러스터의 일부로 되도록 구성합니다. ProviderConnectionString 매개 변수는 새 캐시 호스트에 대한 대상 캐시 클러스터를 지정합니다.

다음 예에서는 Add-CacheHost 호출 방법을 보여줍니다.

Add-CacheHost -Provider XML -ConnectionString "\\Server1\CacheConfigShare" -Account "NT Authority\Network Service"

이 명령은 구성할 캐시 호스트에서 로컬로 실행해야 합니다. 또한 관리자 권한으로 상승된 Windows PowerShell 세션에서 이 명령을 실행해야 합니다.

경고

Add-CacheHost 명령에 대한 Account 매개 변수 값을 제공해야 합니다. 계정을 지정하지 않은 경우 캐싱 서비스에 대해 권한이 올바르게 구성되지 않습니다. 보안이 사용하도록 설정된 도메인 환경에서는 NT Autority\Network Service 계정을 사용해야 합니다.

Add-CacheAdmin

선택적으로 Add-CacheAdmin 명령을 사용하여 캐시 호스트에 캐시 관리 기능을 구성할 수 있습니다. 이렇게 하면 Windows PowerShell 명령을 사용하여 이 컴퓨터에서 캐시 클러스터를 관리할 수 있습니다. 컴퓨터에 캐시 관리 기능을 설치해야 합니다.

다음 예에서는 Add-CacheAdmin 호출 방법을 보여줍니다.

Add-CacheAdmin -Provider XML -ConnectionString  "\\Server1\CacheConfigShare"

이 명령은 구성할 캐시 호스트에서 로컬로 실행해야 합니다. 또한 관리자 권한으로 상승된 Windows PowerShell 세션에서 이 명령을 실행해야 합니다.

방화벽 구성

AppFabric 캐싱 기능을 성공적으로 사용하려면 DistributedCacheService.exe 서비스에 대해 구성해야 합니다. 기본적으로 이 서비스는 "C:\Program Files\Windows Server AppFabric" 디렉터리에 설치됩니다.

Windows 방화벽을 사용하고 있는 경우 자동으로 AppFabric에 설치되는 방화벽 정책 그룹을 사용하도록 설정할 수 있습니다. 다음 Windows Powershell 명령은 "Windows Server용 Microsoft AppFabric 1.1: AppFabric 캐싱 서비스"라는 방화벽 정책 그룹을 사용하도록 설정합니다. 또한 원격으로 제어할 AppFabric 캐싱 서비스를 사용하도록 설정하기 위해 "원격 서비스 관리" 방화벽 규칙을 사용하도록 설정해야 합니다.

netsh advfirewall firewall set rule group="Windows Server AppFabric: AppFabric Caching Service" new enable=Yes
netsh advfirewall firewall set rule name="Remote Service Management (RPC)" profile=domain new enable=Yes
netsh advfirewall firewall set rule name="Remote Service Management (RPC-EPMAP)" profile=domain new enable=Yes
netsh advfirewall firewall set rule name="Remote Service Management (NP-In)" profile=domain new enable=Yes

Start-CacheHost

새 캐시 호스트가 캐시 클러스터에 참여하도록 하려면 캐시 호스트를 시작해야 합니다. 캐시 클러스터가 다운 상태가 되면 전체 캐시 클러스터를 시작해야 합니다. 모든 호스트가 다운 상태가 되면 캐시 클러스터가 다운 상태가 됩니다. Get-CacheHost를 매개 변수 없이 호출하면 이렇게 평가할 수 있습니다.

Get-CacheHost

모든 호스트의 서비스가 상태가 DOWN인 경우 Start-CacheCluster 명령을 사용하여 캐시 클러스터를 시작합니다.

Start-CacheCluster

그러나 하나 이상의 호스트 서비스 상태가 UP인 경우 캐시 클러스터가 실행 중입니다. 이 경우 Start-CacheHost 명령을 사용합니다.

Start-CacheHost -Hostname CacheServer2 -CachePort 22233

캐시 호스트 컴퓨터를 다시 부팅한 후 캐싱 서비스가 자동으로 시작되지 않으면 캐시 클러스터 상태에 따라 Start-CacheHost 또는 Start-CacheCluster를 사용해야 합니다.

또한 관리자 권한으로 상승된 Windows PowerShell 세션에서 이 명령을 실행해야 합니다.

경고

항상 Windows PowerShell 명령을 사용하여 캐싱 서비스를 시작 및 중지합니다. 관리 도구의 서비스 프로그램에서 직접 AppFabricCachingService 서비스를 시작하거나 중지하지 마십시오.

캐시 호스트 제거

캐시 클러스터에서 캐시 호스트를 제거하려면 다음 단계를 순서대로 수행해야 합니다.

명령/단계 설명

Stop-CacheHost

캐시 호스트가 실행 중인 경우 중지합니다.

Unregister-CacheHost

캐시 클러스터에서 캐시 호스트를 등록 취소합니다.

Remove-CacheHost

컴퓨터에서 캐시 호스트 구성을 제거합니다.

Remove-CacheAdmin

선택적으로 캐시 관리 기능의 구성을 제거합니다.

방화벽 구성

캐싱 서비스에 대한 모든 방화벽 예외를 제거합니다.

Stop-CacheHost

기존 클러스터에서 캐시 호스트를 제거하려는 경우 먼저 캐시 호스트를 중지해야 합니다. Get-CacheHost 명령을 호출하여 캐시 호스트가 실행 중인지를 확인할 수 있습니다. 다음 예에서는 로컬 캐시 호스트에 대한 캐시 호스트 정보 확인 방법을 보여줍니다.

Get-CacheHost -HostName localhost -CachePort 22233

이전 명령이 특정 캐시 호스트에 대한 정보를 제공하기는 하지만 원하는 캐시 호스트 하나를 중지하기 전에 전체 캐시 클러스터의 상태를 항상 고려해야 합니다. Get-CacheHost를 매개 변수 없이 호출하면 이렇게 수행할 수 있습니다.

Get-CacheHost

다음에서는 2 서버 캐시 클러스터에 대한 이 명령의 출력 예를 보여줍니다.

HostName : CachePort      Service Name            Service Status Version Info
--------------------      ------------            -------------- ------------
CacheServer1:22233        AppFabricCachingService UP             1 [1,1][1,1]
CacheServer2:22233        AppFabricCachingService UP             1 [1,1][1,1]

이 예에서는 CacheServer1CacheServer2가 모두 실행되고 있습니다. 이러한 캐시 호스트 중 하나를 중지하고 다른 캐시 호스트를 통해 캐시 클러스터가 작동 상태를 유지하도록 시도할 수 있습니다. 다음 예에서는 Stop-CacheHost 명령을 사용하여 CacheServer2를 중지하는 방법을 보여줍니다.

Stop-CacheHost -HostName CacheServer2 -CachePort 22233 -Graceful

여기에서 Graceful 스위치의 사용에 유의하십시오. 이 스위치는 종료되기 전에 캐시 서버의 데이터를 다른 캐시 호스트로 이동하기 위해 v1.1 릴리스에 추가되었습니다. Graceful 스위치가 없으면 중지된 캐시 호스트에 캐시된 모든 데이터가 손실됩니다. 또한 리드 호스트 또는 보조의 쿼럼 손실을 초래하는 경우 캐시 호스트를 중지하려는 시도는 실패합니다. 리드 호스트에 대한 자세한 내용은 리드 호스트 및 클러스터 관리를 참조하십시오. 보조에 대한 자세한 내용은 고가용성을 참조하십시오. 이러한 경우 Stop-CacheCluster 명령을 사용하여 전체 클러스터를 중지해야 합니다.

캐시 클러스터를 중지하기 위해 캐시 호스트를 중지하는 경우 대신 Stop-CacheCluster 명령을 사용합니다. 예를 들어 Get-CacheHost 명령의 다음 샘플 출력을 고려해 봅시다.

HostName : CachePort      Service Name            Service Status Version Info
--------------------      ------------            -------------- ------------
CacheServer1:22233        AppFabricCachingService DOWN           1 [1,1][1,1]
CacheServer2:22233        AppFabricCachingService UP             1 [1,1][1,1]

이 예에서 CacheServer1은 중지되고 CacheServer2는 실행되고 있습니다. CacheServer2를 중지하면 클러스터가 다운 상태가 됩니다. CacheServer2를 중지하기 위해 Stop-CacheHost 명령을 사용하는 대신 Stop-CacheCluster 명령을 사용합니다.

Stop-CacheCluster

관리자 권한으로 상승된 Windows PowerShell 세션에서 이 명령을 실행해야 합니다.

Unregister-CacheHost

Unregister-CacheHost 명령은 캐시 클러스터에서 캐시 호스트를 제거합니다.

경고

등록을 해제하기 전에 Stop-CacheHost를 호출하여 캐시 호스트를 중지해야 합니다. 이 작업을 수행하지 않으면 서비스가 충돌할 수 있습니다.

Remove-CacheHost 전에 이 명령이 실행된 경우 Provider 또는 ConnectionString 매개 변수에 대한 값을 지정할 필요가 없습니다. 명령을 로컬로 실행한 경우에도 HostName 매개 변수에 대한 값을 지정할 필요가 없습니다.

Unregister-CacheHost -RemoveServicePermissions

다음 예에서는 공급자, 연결 문자열 및 호스트 이름을 지정하여 캐시 호스트를 등록 취소합니다. 또한 캐시 클러스터에서 CacheServer2라는 캐시 호스트를 제거합니다. 이 캐시 클러스터는 System.Data.SqlClient 공급자를 사용하므로 연결 문자열이 SQLServer1이라는 데이터베이스 서버 및 CacheClusterConfigurationDB라는 구성 데이터베이스에 대한 SQL Server 연결 문자열입니다.

Unregister-CacheHost -Provider System.Data.SqlClient -ConnectionString "Data Source=SQLServer1;Initial Catalog=CacheClusterConfigurationDB;Integrated Security=True"  + -HostName CacheServer2 -RemoveServicePermissions

XML 공급자의 경우 호출자는 대상 네트워크 공유에 대한 모든 권한을 가지고 있어야 합니다. System.Data.SqlClient 공급자의 경우 호출자는 읽기, 쓰기, SQL 로그인 제거 및 대상 데이터베이스에 권한 제거 권한을 가지고 있어야 합니다.

다른 많은 구성 명령과 달리 Unregister-CacheHost 명령에는 HostName 매개 변수를 사용할 수 있으므로 이 명령을 원격으로 실행할 수 있습니다.

Remove-CacheHost

Remove-CacheHost 명령은 서버에서 캐시 호스트 구성을 제거합니다.

Remove-CacheHost

이 명령은 구성할 캐시 호스트에서 로컬로 실행해야 합니다. 또한 관리 자격 증명으로 상승된 Windows PowerShell 세션에서 이 명령을 실행해야 합니다.

Remove-CacheAdmin

캐시 관리 기능이 캐시 호스트에 구성된 경우 Remove-CacheAdmin 명령을 사용하여 이러한 기능을 제거할 수 있습니다.

Remove-CacheAdmin

이 명령은 구성할 캐시 호스트에서 로컬로 실행해야 합니다. 또한 관리 자격 증명으로 상승된 Windows PowerShell 세션에서 이 명령을 실행해야 합니다.

방화벽 구성

캐싱 서비스 DistributedCacheService.exe에 대한 방화벽에서 모든 예외를 제거하거나 사용하지 않도록 설정해야 합니다. Windows 방화벽을 사용하고 있는 경우 설치된 방화벽 그룹 "Windows Server용 Microsoft AppFabric 1.1: AppFabric 캐싱 서비스"를 이전에 사용하도록 설정했어야 합니다. 그렇게 한 경우 다음 PowerShell 명령을 사용하여 이 정책 그룹을 사용하지 않도록 설정할 수 있습니다. 또한 "원격 서비스 관리" 규칙을 사용하도록 설정한 경우 이 규칙도 사용하지 않도록 설정할 수 있습니다. 그러나 다른 서비스 또는 응용 프로그램에서 "원격 서비스 관리" 규칙을 사용하도록 설정했을 수 있습니다. 이 시나리오에서는 "원격 서비스 관리" 규칙을 사용하지 않도록 설정하지 않습니다.

netsh advfirewall firewall set rule group="Windows Server AppFabric: AppFabric Caching Service" new enable=No
netsh advfirewall firewall set rule name="Remote Service Management (RPC)" profile=domain new enable=No
netsh advfirewall firewall set rule name="Remote Service Management (RPC-EPMAP)" profile=domain new enable=No
netsh advfirewall firewall set rule name="Remote Service Management (NP-In)" profile=domain new enable=No

캐시 클러스터 제거

클러스터에서 최종 캐시 호스트를 제거한 경우 캐시 클러스터 구성 저장소도 제거하도록 선택할 수 있습니다. 이렇게 하려면 Remove-CacheCluster 명령을 사용합니다. 캐시 클러스터가 XML 공급자를 사용하는 경우 이 명령은 구성 설정이 포함된 XML 파일을 삭제합니다. 캐시 클러스터가 System.Data.SqlClient 공급자를 사용하는 경우 이 명령은 지정된 데이터베이스에서 테이블을 삭제합니다. 파일 공유 및 데이터베이스는 제거되지 않습니다.

Remove_CacheCluster -Provider System.Data.SqlClient -ConnectionString  "Data Source=SQLServer1;Initial Catalog=CacheClusterConfigurationDB;Integrated Security=True"

참고 항목

개념

AppFabric 캐싱 기능 배포 및 구성(AppFabric 1.1 캐싱)

  2012-03-05