Configuration Manager SQL Server Always On 가용성 그룹 사용 준비

적용 대상: Configuration Manager(현재 분기)

이 문서를 사용하여 사이트 데이터베이스에 대한 SQL Server Always On 가용성 그룹을 사용하도록 Configuration Manager 준비합니다. 이 기능은 고가용성 및 재해 복구 솔루션을 제공합니다.

Configuration Manager 가용성 그룹 사용을 지원합니다.

  • 기본 사이트 및 중앙 관리 사이트에서.
  • 온-프레미스 또는 Microsoft Azure에서.

Microsoft Azure에서 가용성 그룹을 사용하는 경우 Azure 가용성 집합을 사용하여 사이트 데이터베이스의 가용성 더욱 높일 수 있습니다. Azure 가용성 집합에 대한 자세한 내용은 가상 머신의 가용성 관리를 참조하세요.

중요

계속하기 전에 SQL Server 및 가용성 그룹을 구성하는 데 익숙해야 합니다. 이 문서에서는 자세한 정보와 절차를 사용하여 SQL Server 설명서 라이브러리를 참조합니다.

지원되는 시나리오

다음 시나리오는 Configuration Manager 가용성 그룹을 사용하는 데 지원됩니다. 각 시나리오에 대한 자세한 내용 및 절차는 Configuration Manager 대한 가용성 그룹 구성을 참조하세요.

필수 조건

다음 필수 구성 요소는 모든 시나리오에 적용됩니다. 특정 시나리오에 추가 필수 구성 요소가 적용되는 경우 해당 시나리오에 대해 자세히 설명합니다.

계정 및 권한 Configuration Manager

설치 계정

설치 Configuration Manager 실행하는 데 사용하는 계정은 다음이어야 합니다.

  • 가용성 그룹의 구성원인 각 컴퓨터에서 로컬 관리자 그룹의 구성원입니다.
  • 사이트 데이터베이스를 호스트하는 SQL Server 각 인스턴스의 sysadmin입니다.

사이트 서버에서 복제본 멤버 액세스로

사이트 서버의 컴퓨터 계정은 가용성 그룹의 구성원인 각 컴퓨터에서 로컬 관리자 그룹의 구성원이어야 합니다.

SQL Server

버전

가용성 그룹의 각 복제본은 Configuration Manager 버전에서 지원하는 SQL Server 버전을 실행해야 합니다. SQL Server 지원되는 경우 가용성 그룹의 다른 노드에서 다른 버전의 SQL Server 실행할 수 있습니다. 자세한 내용은 Configuration Manager 지원되는 SQL Server 버전을 참조하세요.

에디션

Enterprise 버전의 SQL Server 사용합니다.

Account

SQL Server 각 인스턴스는 도메인 사용자 계정(서비스 계정) 또는 비 도메인 계정으로 실행할 수 있습니다. 그룹의 각 복제본은 다른 구성을 가질 수 있습니다.

Database

새 복제본에서 데이터베이스 구성

주 복제본에서만 이러한 구성을 만듭니다. 보조 복제본을 구성하려면 먼저 주 복제본을 보조 복제본으로 장애 조치합니다. 이 작업을 수행하면 보조 복제본이 새 주 복제본이 됩니다.

다음 설정을 사용하여 각 복제본의 데이터베이스를 구성합니다.

  • CLR 통합 사용:

    sp_configure 'show advanced options', 1;  
    GO  
    RECONFIGURE;  
    GO  
    sp_configure 'clr enabled', 1;  
    GO  
    RECONFIGURE;  
    GO
    

    자세한 내용은 CLR 통합을 참조하세요.

  • 최대 텍스트 리플 크기를2147483647설정합니다.

    EXECUTE sp_configure 'max text repl size (B)', 2147483647
    
  • 데이터베이스 소유자를 SA 계정으로 설정합니다. 이 계정을 사용하도록 설정할 필요가 없습니다.

  • TRUSTWORTHY설정을 켭니다.

    ALTER DATABASE [CM_xxx] SET TRUSTWORTHY ON;
    

    자세한 내용은 TRUSTWORTHY 데이터베이스 속성을 참조하세요.

  • Service Broker를 사용하도록 설정합니다.

    ALTER DATABASE [CM_xxx] SET ENABLE_BROKER
    

    참고

    가용성 그룹의 일부인 데이터베이스에서는 Service Broker 옵션을 사용하도록 설정할 수 없습니다. 가용성 그룹에 추가하기 전에 해당 옵션을 사용하도록 설정해야 합니다.

  • Service Broker 우선 순위를 구성합니다.

    ALTER DATABASE [CM_xxx] SET HONOR_BROKER_PRIORITY ON;
    ALTER DATABASE [CM_xxx] SET ENABLE_BROKER WITH ROLLBACK IMMEDIATE
    

데이터베이스 확인 스크립트

다음 SQL 스크립트를 실행하여 주 복제본과 보조 복제본 모두에 대한 데이터베이스 구성을 확인합니다. 보조 복제본에서 문제를 해결하려면 보조 복제본을 주 복제본으로 변경합니다.

    SET NOCOUNT ON

    DECLARE @dbname NVARCHAR(128)

    SELECT @dbname = sd.name FROM sys.sysdatabases sd WHERE sd.dbid = DB_ID()

    IF (@dbname = N'master' OR @dbname = N'model' OR @dbname = N'msdb' OR @dbname = N'tempdb' OR @dbname = N'distribution' ) BEGIN
    RAISERROR(N'ERROR: Script is targeting a system database.  It should be targeting the DB you created instead.', 0, 1)
    GOTO Branch_Exit;
    END ELSE
    PRINT N'INFO: Targeted database is ' + @dbname + N'.'

    PRINT N'INFO: Running verifications....'

    IF NOT EXISTS (SELECT * FROM sys.configurations c WHERE c.name = 'clr enabled' AND c.value_in_use = 1)
    PRINT N'ERROR: CLR is not enabled!'
    ELSE
    PRINT N'PASS: CLR is enabled.'

    DECLARE @repltable TABLE (
    name nvarchar(max),
    minimum int,
    maximum int,
    config_value int,
    run_value int )

    INSERT INTO @repltable
    EXEC sp_configure 'max text repl size (B)'

    IF NOT EXISTS(SELECT * from @repltable where config_value = 2147483647 and run_value = 2147483647 )
    PRINT N'ERROR: Max text repl size is not correct!'
    ELSE
    PRINT N'PASS: Max text repl size is correct.'

    IF NOT EXISTS (SELECT db.owner_sid FROM sys.databases db WHERE db.database_id = DB_ID() AND db.owner_sid = 0x01)
    PRINT N'ERROR: Database owner is not sa account!'
    ELSE
    PRINT N'PASS: Database owner is sa account.'

    IF NOT EXISTS( SELECT * FROM sys.databases db WHERE db.database_id = DB_ID() AND db.is_trustworthy_on = 1 )
    PRINT N'ERROR: Trustworthy bit is not on!'
    ELSE
    PRINT N'PASS: Trustworthy bit is on.'

    IF NOT EXISTS( SELECT * FROM sys.databases db WHERE db.database_id = DB_ID() AND db.is_broker_enabled = 1 )
    PRINT N'ERROR: Service broker is not enabled!'
    ELSE
    PRINT N'PASS: Service broker is enabled.'

    IF NOT EXISTS( SELECT * FROM sys.databases db WHERE db.database_id = DB_ID() AND db.is_honor_broker_priority_on = 1 )
    PRINT N'ERROR: Service broker priority is not set!'
    ELSE
    PRINT N'PASS: Service broker priority is set.'

    PRINT N'Done!'

    Branch_Exit:

가용성 그룹 구성

복제본 멤버

Configuration Manager 비동기 커밋 복제본의 상태를 확인하여 현재 상태인지 확인하지 않습니다. 사이트 데이터베이스로 비동기 커밋 복제본을 사용하면 사이트 및 데이터의 무결성이 위험할 수 있습니다. 이 복제본은 의도적으로 동기화되지 않을 수 있습니다. 자세한 내용은 SQL Server Always On 가용성 그룹 개요를 참조하세요.

각 복제본 멤버에는 다음 구성이 있어야 합니다.

  • 기본 인스턴스 또는 명명된 인스턴스를 사용합니다.

    참고

    서버에 SQL Server 인스턴스 이름과 동일한 이름의 파일 공유가 없습니다.

  • 기본 역할의 연결 설정은 모든 연결 허용입니다.

  • 읽기 가능한 보조 설정은 입니다.

  • 수동 장애 조치(failover) 사용

    참고

    Configuration Manager 자동 장애 조치(failover)로 설정된 경우 가용성 그룹 동기 복제본 사용을 지원합니다. 다음과 같은 경우 수동 장애 조치(failover) 를 설정합니다.

    • Configuration Manager 설치 프로그램을 실행하여 가용성 그룹에서 사이트 데이터베이스 사용을 지정합니다.
    • Configuration Manager 대한 업데이트를 설치합니다. (사이트 데이터베이스에 적용되는 업데이트뿐만 아니라).
  • 모든 멤버는 동일한 시드 모드가 필요합니다.Configuration Manager 설치에는 설치 또는 복구를 통해 데이터베이스를 만들 때 이 구성을 확인하기 위한 필수 구성 요소 검사가 포함되어 있습니다.

    참고

    설치 프로그램에서 데이터베이스를 만들고 자동 시드를 구성하면 가용성 그룹에 데이터베이스를 만들 수 있는 권한이 있어야 합니다. 이 요구 사항은 새 데이터베이스 또는 복구 모두에 적용됩니다. 자세한 내용은 보조 복제본에 대한 자동 시드를 참조하세요.

복제본 멤버 위치

온-프레미스 가용성 그룹의 모든 복제본을 호스트하거나 Microsoft Azure에서 모두 호스트합니다. 온-프레미스 멤버와 Azure의 멤버를 포함하는 그룹은 지원되지 않습니다.

참고

SQL Server Azure 가상 머신을 사용하는 경우 부동 IP를 사용하도록 설정합니다. 자세한 내용은 Azure 가상 머신에서 SQL Server Always On 가용성 그룹에 대한 부하 분산 장치 구성을 참조하세요.

Configuration Manager 설정은 각 복제본에 연결해야 합니다. Azure에서 가용성 그룹을 설정하고 그룹이 내부 또는 외부 부하 분산 장치 뒤에 있는 경우 다음 기본 포트를 엽니다.

  • RPC 엔드포인트 매퍼: TCP 135

  • SQL Server Service Broker: TCP 4022

  • SQL over TCP: TCP 1433

설치가 완료되면 이러한 포트는 Configuration Manager 및 복제 링크 분석기를 위해 열려 있어야 합니다.

이러한 구성에 사용자 지정 포트를 사용할 수 있습니다. 엔드포인트 및 가용성 그룹의 모든 복제본에서 동일한 사용자 지정 포트를 사용합니다.

SQL Server 사이트 간에 데이터를 복제하려면 Azure 부하 분산 장치의 각 포트에 대한 부하 분산 규칙을 만듭니다. 자세한 내용은 내부 부하 분산 장치에 대한 고가용성 포트 구성을 참조하세요.

수신기

가용성 그룹에는 하나 이상의 가용성 그룹 수신기가 있어야 합니다. 가용성 그룹에서 사이트 데이터베이스를 사용하도록 Configuration Manager 구성할 때 이 수신기의 가상 이름을 사용합니다. 가용성 그룹에는 여러 수신기가 포함될 수 있지만 Configuration Manager 하나만 사용할 수 있습니다. 자세한 내용은 SQL Server 가용성 그룹 수신기 만들기 또는 구성을 참조하세요.

파일 경로

Configuration Manager 설치 프로그램을 실행하여 가용성 그룹의 데이터베이스를 사용하도록 사이트를 구성하는 경우 각 보조 복제본 서버에는 현재 주 복제본의 사이트 데이터베이스 파일에 대한 파일 경로와 동일한 SQL Server 파일 경로가 있어야 합니다. 동일한 경로가 없는 경우 설치 프로그램에서 가용성 그룹의 인스턴스를 사이트 데이터베이스의 새 위치로 추가하지 못합니다.

로컬 SQL Server 서비스 계정에는 이 폴더에 대한 모든 권한이 있어야 합니다.

보조 복제본 서버는 Configuration Manager 설정을 사용하여 가용성 그룹에서 데이터베이스 인스턴스를 지정하는 동안에만 이 파일 경로가 필요합니다. 가용성 그룹에서 사이트 데이터베이스의 구성을 완료한 후 보조 복제본 서버에서 사용되지 않는 경로를 삭제할 수 있습니다.

예를 들어 다음과 같은 경우를 생각해볼 수 있습니다.

  • 세 개의 SQL Server를 사용하는 가용성 그룹을 만듭니다.

  • 주 복제본 서버는 SQL Server 2014의 새로운 설치입니다. 기본적으로 데이터베이스 MDF 및 LDF 파일을 에 저장합니다 C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA.

  • 두 보조 복제본 서버를 모두 이전 버전에서 SQL Server 2014로 업그레이드했습니다. 업그레이드를 통해 이러한 서버는 데이터베이스 파일을 저장할 원래 파일 경로를 유지합니다 C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA.

  • 사이트 데이터베이스를 이 가용성 그룹으로 이동하기 전에 각 보조 복제본 서버에서 파일 경로를 C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA만듭니다. 이 경로는 보조 복제본이 이 파일 위치를 사용하지 않더라도 주 복제본에서 사용 중인 경로의 중복 경로입니다.

  • 그런 다음 각 보조 복제본의 SQL Server 서비스 계정에 해당 서버에서 새로 만든 파일 위치에 대한 모든 권한을 부여합니다.

  • 이제 Configuration Manager 설치 프로그램을 성공적으로 실행하여 가용성 그룹의 사이트 데이터베이스를 사용하도록 사이트를 구성할 수 있습니다.

다중 서브넷 장애 조치(failover)

SQL Server MultiSubnetFailover 연결 문자열 키워드를 사용하도록 설정할 수 있습니다. 또한 사이트 서버의 Windows 레지스트리에 다음 값을 수동으로 추가해야 합니다.

HKLM:\SOFTWARE\Microsoft\SMS\Identification
HKLM:\SOFTWARE\Microsoft\SMS\SQL Server

MSF Enabled : 1 (DWORD)

경고

다중 서브넷 장애 조치(failover)가 있는 사이트 서버 고가용성 및 SQL Server Always On 가용성 그룹을 사용하면 재해 복구 시나리오에 대한 자동 장애 조치(failover)의 전체 기능이 제공되지 않습니다.

원격 위치에 멤버를 사용하여 가용성 그룹을 만들어야 하는 경우 가장 낮은 네트워크 대기 시간에 따라 우선 순위를 지정합니다. 네트워크 대기 시간이 높으면 복제 오류가 발생할 수 있습니다.

제한 사항 및 알려진 문제

다음 제한 사항은 모든 시나리오에 적용됩니다.

지원되지 않는 SQL Server 옵션 및 구성

추가 가용성 그룹을 호스트하는 SQL Server

SQL Server Configuration Manager 사용하는 그룹 외에 하나 이상의 가용성 그룹을 호스트하는 경우 Configuration Manager 설정을 실행할 때 특정 설정이 필요합니다. 이러한 설정은 Configuration Manager 대한 업데이트를 설치하는 데도 필요합니다. 각 가용성 그룹의 각 복제본에는 다음 구성이 있어야 합니다.

  • 수동 장애 조치(failover)

  • 모든 읽기 전용 연결 허용

참고

Configuration Manager 자동 장애 조치(failover)로 설정된 경우 가용성 그룹 동기 복제본 사용을 지원합니다. 다음과 같은 경우 수동 장애 조치(failover) 를 설정합니다.

  • Configuration Manager 설치 프로그램을 실행하여 가용성 그룹에서 사이트 데이터베이스 사용을 지정합니다.
  • Configuration Manager 대한 업데이트를 설치합니다. (사이트 데이터베이스에 적용되는 업데이트뿐만 아니라).

지원되지 않는 데이터베이스 사용

Configuration Manager 가용성 그룹의 사이트 데이터베이스만 지원합니다.

다음 데이터베이스는 가용성 그룹의 Configuration Manager 지원되지 않습니다.

  • 보고 데이터베이스

  • WSUS 데이터베이스

기존 데이터베이스

복제본에서 만든 새 데이터베이스는 사용할 수 없습니다. 가용성 그룹을 구성할 때 기존 Configuration Manager 데이터베이스의 복사본을 주 복제본으로 복원합니다.

ConfigMgrSetup.log의 설정 오류

Configuration Manager 설치 프로그램을 실행하여 사이트 데이터베이스를 가용성 그룹으로 이동하면 가용성 그룹의 보조 복제본에서 데이터베이스 역할을 처리하려고 합니다. ConfigMgrSetup.log 파일에는 다음 오류가 표시됩니다.

ERROR: SQL Server error: [25000][3906][Microsoft][SQL Server Native Client 11.0][SQL Server]Failed to update database "CM_AAA" because the database is read-only. Configuration Manager Setup 1/21/2016 4:54:59 PM 7344 (0x1CB0)

이러한 오류는 무시해도 안전합니다.

사이트 확장

가용성 그룹을 사용하도록 독립 실행형 기본 사이트에 대한 사이트 데이터베이스를 구성하는 경우 중앙 관리 사이트를 포함하도록 사이트를 확장할 수 없습니다. 이 프로세스를 시도하면 실패합니다. 사이트를 확장하려면 가용성 그룹에서 주 사이트 데이터베이스를 일시적으로 제거합니다.

보조 사이트를 추가할 때 구성을 변경할 필요가 없습니다.

사이트 백업에 대한 변경 내용

데이터베이스 파일 백업

사이트 데이터베이스에서 가용성 그룹을 사용하는 경우 기본 제공 Backup 사이트 서버 유지 관리 작업을 실행하여 일반적인 Configuration Manager 설정 및 파일을 백업합니다. 해당 백업에서 만든 MDF 또는 LDF 파일을 사용하지 마세요. 대신 SQL Server 사용하여 이러한 데이터베이스 파일을 직접 백업합니다.

SQL Server 백업을 사용할 수 있지만 SQL Server Always On 클러스터에 직접 복원할 수는 없습니다. 독립 실행형 서버에서 복원하고 다시 SQL Server Always On 이동해야 합니다.

트랜잭션 로그

사이트 데이터베이스의 복구 모델을 전체로 설정합니다. 이 구성은 가용성 그룹에서 Configuration Manager 사용하기 위한 요구 사항입니다. 사이트 데이터베이스 트랜잭션 로그의 크기를 모니터링하고 유지 관리하도록 계획합니다. 전체 복구 모델에서 트랜잭션은 데이터베이스 또는 트랜잭션 로그의 전체 백업을 만들 때까지 강화되지 않습니다. 자세한 내용은 SQL Server 데이터베이스 백업 및 복원을 참조하세요.

사이트 복구에 대한 변경 내용

가용성 그룹의 하나 이상의 노드가 여전히 작동하는 경우 사이트 복구 옵션을 사용하여 데이터베이스 복구 건너뛰기(사이트 데이터베이스에 영향을 주지 않은 경우 이 옵션 사용).

사이트 복구는 가용성 그룹에서 데이터베이스를 다시 만들 수 있습니다. 이 프로세스는 수동 및 자동 시드 모두에서 작동합니다.

설치/복구 마법사를 실행하는 경우 새 가용성 그룹 데이터베이스 페이지는 수동 시드 구성에만 적용됩니다. 자동 시드를 사용하면 공유 데이터베이스 백업이 없으므로 마법사의 페이지가 표시되지 않습니다.

자세한 내용은 백업 및 복구를 참조하세요.

보고에 대한 변경 내용

보고 서비스 지점 설치

보고 서비스 지점은 가용성 그룹의 수신기 가상 이름을 사용하는 것을 지원하지 않습니다. 또한 가용성 그룹에서 데이터베이스 호스팅을 지원하지 않습니다.

  • 기본적으로 Reporting Services 지점 설치는 사이트 데이터베이스 서버 이름을 수신기로 지정된 가상 이름으로 설정합니다. 이 설정을 변경하여 가용성 그룹에 있는 복제본의 컴퓨터 이름과 인스턴스를 지정합니다.

  • 보고를 오프로드하고 복제본 노드가 오프라인일 때 가용성을 높이려면 각 복제본 노드에 추가 보고 서비스 지점을 설치하는 것이 좋습니다. 그런 다음, 고유한 컴퓨터 이름을 사용하도록 각 보고 서비스 지점을 구성합니다. 가용성 그룹의 각 복제본에 보고 서비스 지점을 설치하는 경우 보고는 항상 활성 보고 지점 서버에 연결할 수 있습니다.

콘솔에서 사용하는 보고 서비스 지점 전환

  1. Configuration Manager 콘솔에서 모니터링 작업 영역으로 이동하여 보고를 확장하고 보고서 노드를 선택합니다.

  2. 리본에서 보고서 옵션을 선택합니다.

  3. 보고서 옵션 대화 상자에서 사용하려는 보고 서비스 지점을 선택합니다.

다음 단계

이 문서에서는 가용성 그룹을 사용할 때 Configuration Manager 필요한 일반적인 작업의 필수 구성 요소, 제한 사항 및 변경 내용을 설명합니다. 가용성 그룹을 사용하도록 사이트를 설정하고 구성하는 절차는 가용성 그룹 구성을 참조하세요.