기본 모드 보고서 서버 스케일 아웃 배포 구성
적용 대상: SQL Server Reporting Services Enterprise Edition(2017 이상) Power BI Report Server
Reporting Services 기본 모드에서는 단일 보고서 서버 데이터베이스를 공유하는 여러 보고서 서버 인스턴스 실행을 허용하는 스케일 아웃 배포 모델을 사용할 수 있습니다. 확장 배포는 더 많은 동시 사용자와 보고서 실행 부하를 처리할 수 있도록 보고서 서버의 확장성을 개선하는 데 사용됩니다. 또한 특정 서버가 대화형 보고서나 예약된 보고서를 처리하도록 지정하는 데도 사용할 수 있습니다.
중요
Power BI Report Server의 경우 적절한 성능과 일관된 Power BI(PBIX) 보고서 기능을 보장하려면 모든 확장 환경의 부하 분산 장치에서 클라이언트 선호도(고정 세션 또는 지속성이라고도 함)를 구성해야 합니다.
SQL Server 2016 Reporting Services 이전 버전의 경우 SharePoint 모드 보고서 서버는 확장을 위해 SharePoint 제품 인프라를 이용합니다. SharePoint 모드 확장은 SharePoint 팜에 SharePoint 모드 보고서 서버를 추가하여 수행됩니다. SharePoint 모드의 스케일 아웃에 대한 자세한 내용은 팜에 다른 보고서 서버 추가(SSRS 스케일아웃)를 참조하세요.
참고 항목
SQL Server 2016 이후부터 SharePoint와의 Reporting Services 통합을 사용할 수 없습니다.
스케일 아웃 배포 는 다음과 같은 시나리오에서 사용됩니다.
서버 클러스터에 있는 여러 보고서 서버의 부하 분산을 위한 선행 조건. 여러 보고서 서버의 부하를 분산하려면 먼저 같은 보고서 서버 데이터베이스를 공유하도록 구성해야 합니다.
한 서버는 대화형 보고서 처리에 사용하고 다른 서버는 예약된 보고서 처리에 사용하는 방식으로 보고서 서버 애플리케이션을 여러 컴퓨터에 분할하려는 경우. 이 시나리오에서 각 서버 인스턴스는 공유 보고서 서버 데이터베이스에 저장된 같은 보고서 서버 내용에 대해 각기 다른 유형의 요청을 처리합니다.
확장 배포는 다음과 같은 항목으로 구성됩니다.
단일 보고서 서버 데이터베이스를 공유하는 두 개 이상의 보고서 서버 인스턴스
(선택 사항) 대화형 사용자 부하를 여러 보고서 서버 인스턴스에 분산하기 위한 NLB(네트워크 로드 균형 조정) 클러스터
NLB 클러스터에 Reporting Services를 배포하는 경우에는 보고서 서버 URL의 구성에 NLB 가상 서버 이름을 사용하고 해당 서버가 같은 뷰 상태를 공유하도록 구성해야 합니다.
Reporting Services는 Microsoft Cluster Services 클러스터에 참여하지 않습니다. 그러나 장애 조치(Failover) 클러스터의 일부인 데이터베이스 엔진 인스턴스에 보고서 서버 데이터베이스를 만들 수는 있습니다.
스케일 아웃 배포를 계획, 설치 및 구성하려면 다음 단계를 수행합니다.
보고서 서버 인스턴스를 설치하는 방법은 설치 마법사에서 SQL Server 설치(설치 프로그램)를 참조하세요.
NLB(네트워크 로드 균형 조정) 클러스터에 스케일 아웃 배포를 호스트하려는 경우 스케일 아웃 배포를 구성하기 전에 MLB 클러스터를 구성해야 합니다. 자세한 내용은 네트워크 부하 분산 클러스터에서 보고서 서버 구성을 참조하세요.
보고서 서버 데이터베이스를 공유하고 보고서 서버를 스케일아웃에 조인하는 방법에 대한 지침은 이 문서의 절차를 검토하세요.
절차에서는 두 개의 노드로 구성된 보고서 서버 스케일 아웃 배포를 구성하는 방법에 대해 설명합니다. 배포에 보고서 서버 노드를 더 추가하려면 이 문서에 설명된 단계를 반복합니다.
설정을 사용하여 스케일아웃 배포에 참여하려는 각 보고서 서버 인스턴스를 설치합니다.
서버 인스턴스를 공유 데이터베이스에 연결할 때 데이터베이스 호환성 오류가 발생하지 않도록 하려면 모든 인스턴스가 동일한 버전인지 확인합니다. 예를 들어 SQL Server 2016 보고서 서버 인스턴스를 사용하여 보고서 서버 데이터베이스를 만드는 경우 동일한 배포 내의 다른 모든 인스턴스도 SQL Server 2016이어야 합니다.
보고서 서버 구성 관리자를 사용하여 각 보고서 서버를 공유 데이터베이스에 연결합니다. 한 번에 하나의 보고서 서버에만 연결하여 구성할 수 있습니다.
보고서 서버 데이터베이스에 이미 연결된 첫 번째 보고서 서버 인스턴스에 새 보고서 서버 인스턴스를 조인하여 확장 배포를 완료하려면 Reporting Services 구성 도구를 사용합니다.
SQL Server Reporting Services Enterprise Edition을 사용합니다. 자세한 내용은 버전별로 지원되는 SQL Server Reporting Services 기능을 참조하세요.
보고서 서버 데이터베이스를 호스팅하는 SQL Server 인스턴스 설치
보고서 서버 데이터베이스를 호스트할 컴퓨터에 SQL Server 인스턴스를 설치합니다. 최소한 SQL Server 데이터베이스 엔진과 Reporting Services를 설치합니다.
필요한 경우 원격 연결을 사용할 수 있도록 보고서 서버를 설정합니다. 일부 버전의 SQL Server에서는 기본적으로 원격 TCP/IP 및 명명된 파이프 연결을 활성화하지 않습니다. 원격 연결이 허용되는지 여부를 확인하려면 SQL Server 구성 관리자 도구를 사용하여 대상 인스턴스의 네트워크 구성 설정을 확인합니다. 원격 인스턴스도 명명된 인스턴스인 경우 SQL Server Browser 서비스가 대상 서버에서 활성화되어 실행되고 있는지 확인합니다. SQL Server Browser는 명명된 인스턴스에 연결할 때 사용되는 포트 번호를 제공합니다.
참고 항목
SQL Server Reporting Services 2017 이상 또는 Power BI Report Server에서는 구성 가능한 명명된 인스턴스를 사용할 수 없습니다. SQL Server Reporting Services 2017 이상에서는 항상 인스턴스 이름 SSRS를 사용합니다. Power BI Report Server의 인스턴스 이름은 항상 PBIRS입니다.
서비스 계정
Reporting Services 인스턴스에 대해 사용되는 서비스 계정은 확장 배포를 처리할 때 중요합니다. Reporting Services 인스턴스를 배포할 때는 다음 옵션 중 하나를 수행해야 합니다.
옵션 1: 모든 Reporting Services 인스턴스는 서비스 계정에 대해 동일한 도메인 사용자 계정으로 구성되어야 합니다.
옵션 2: 각 개별 서비스 계정, 도메인 계정 여부는 ReportServer 카탈로그 데이터베이스를 호스팅하는 SQL Server 데이터베이스 인스턴스 내에서 dbadmin 권한을 부여 받아야 합니다.
위의 옵션 중 하나와 다른 구성을 선택한 경우 SQL 에이전트로 작업을 수정하는 데 일시적인 오류가 발생할 수 있습니다. 이러한 오류는 보고서 구독을 편집할 때 Reporting Services 로그와 웹 포털 모두에 오류로 표시됩니다.
An error occurred within the report server database. This may be due to a connection failure, timeout or low disk condition within the database.
SQL Server 작업을 만드는 서버에만 항목을 보거나 삭제하거나 편집할 수 있는 권한이 있기 때문에 이 문제는 간헐적으로 발생합니다. 위의 옵션 중 하나를 수행하지 않으면 로드 밸런서가 해당 구독에 대한 모든 요청을 SQL 에이전트 작업을 생성하는 서버로 전송할 때만 작업이 성공합니다.
첫 번째 보고서 서버 인스턴스 설치
배포에 포함할 첫 번째 보고서 서버 인스턴스를 설치합니다. Reporting Services를 설치할 때 보고서 서버 설치 옵션 페이지에서 서버 구성 없이 설치 옵션을 선택합니다.
Reporting Services 구성 도구를 시작합니다.
보고서 서버 웹 서비스 URL, 웹 포털 URL 및 보고서 서버 데이터베이스를 구성합니다. 자세한 내용은 보고서 서버 구성(Reporting Services 기본 모드)을 참조하세요.
보고서 서버가 작동하는지 확인합니다. 자세한 내용은 Reporting Services 설치 확인을 참조하세요.
두 번째 보고서 서버 인스턴스 설치 및 구성
설치 프로그램을 실행하여 두 번째 Reporting Services 인스턴스를 다른 컴퓨터에 설치하거나 같은 컴퓨터에 명명된 인스턴스로 설치합니다. Reporting Services를 설치할 때 보고서 서버 설치 옵션 페이지에서 서버 구성 없이 설치 옵션을 선택합니다.
Reporting Services 구성 도구를 시작하고 설치한 새 인스턴스에 연결합니다.
첫 번째 보고서 서버 인스턴스에 사용한 것과 같은 데이터베이스에 보고서 서버를 연결합니다.
데이터베이스 를 선택하여 데이터베이스 페이지를 엽니다.
데이터베이스 변경을 선택합니다.
기존 보고서 서버 데이터베이스 선택을 선택합니다.
사용할 보고서 서버 데이터베이스를 호스팅하는 SQL Server 데이터베이스 엔진 인스턴스의 서버 이름을 입력합니다. 이 이름은 이전 지침에서 연결한 서버와 동일한 서버여야 합니다.
연결 테스트를 선택한 후 다음을 선택합니다.
보고서 서버 데이터베이스에서 첫 번째 보고서 서버용으로 만든 데이터베이스를 선택한 후 다음을 선택합니다. 기본 이름은 ReportServer입니다. ReportServerTempDB를 선택하지 않아야 합니다. 이는 보고서를 처리할 때 임시 데이터를 저장하는 용도로만 사용됩니다. 데이터베이스 목록이 비어 있는 경우 이전 네 단계를 반복하여 서버에 대한 연결을 설정합니다.
자격 증명 페이지에서 보고서 서버 데이터베이스에 연결하는 데 사용할 보고서 서버의 계정 유형과 자격 증명을 선택합니다. 첫 번째 보고서 서버 인스턴스와 같은 자격 증명을 사용하거나 다른 자격 증명을 사용할 수 있습니다. 다음을 선택합니다.
요약을 선택한 다음 종료를 선택합니다.
보고서 서버 웹 서비스 URL을 구성합니다. 아직 URL을 테스트하지 마세요. 보고서 서버가 스케일아웃 배포에 조인할 때까지 확인할 수 없습니다.
웹 포털 URL을 구성합니다. 아직 URL을 테스트하거나 배포를 확인하지 마세요. 보고서 서버가 스케일아웃 배포에 조인할 때까지 보고서 서버를 사용할 수 없습니다.
스케일 아웃 배포에 두 번째 보고서 서버 인스턴스 조인
Reporting Services 구성 도구를 열고 첫 번째 보고서 서버 인스턴스에 다시 연결합니다. 첫 번째 보고서 서버는 이미 해독 가능한 암호화 작업을 위해 초기화되어 있으므로 더 많은 보고서 서버 인스턴스를 스케일아웃 배포에 참여하는 데 사용할 수 있습니다.
확장 배포를 선택하여 확장 배포 페이지를 엽니다. 보고서 서버 데이터베이스에 연결되어 있는 각 보고서 서버 인스턴스당 하나씩 두 개의 항목이 표시되어야 합니다. 첫 번째 보고서 서버 인스턴스는 조인되어야 하고 두 번째 보고서 서버는 "조인 대기 중"이어야 합니다. 배포에 대해 유사한 항목이 표시되지 않으면 보고서 서버 데이터베이스를 사용하도록 이미 구성 및 초기화된 첫 번째 보고서 서버에 연결되어 있는지 확인하세요.
확장 배포 페이지에서 배포에 조인되기를 기다리고 있는 보고서 서버 인스턴스를 선택한 다음 서버 추가를 선택합니다.
참고 항목
문제: Reporting Services 보고서 서버 인스턴스를 스케일 아웃 배포에 조인하려고 할 때 ‘액세스가 거부되었습니다.’와 유사한 오류 메시지가 표시될 수 있습니다.
해결 방법: 첫 번째 Reporting Services 인스턴스에서 Reporting Services 암호화 키를 백업하고 이 키를 두 번째 Reporting Services 보고서 서버에 복원합니다. 그런 다음, 두 번째 서버를 Reporting Services 스케일 아웃 배포에 조인합니다.
이제 두 보고서 서버 인스턴스가 작동하는지 확인할 수 있습니다. 두 번째 인스턴스를 확인하려면 Reporting Services 구성 도구를 사용하여 보고서 서버에 연결한 다음 웹 서비스 URL 또는 웹 포털 URL을 선택합니다.
로드 균형이 조정된 서버 클러스터에서 보고서 서버를 실행하려는 경우 추가 구성이 필요합니다. 자세한 내용은 네트워크 부하 분산 클러스터에서 보고서 서버 구성을 참조하세요.