Konfigurieren der Bereitstellung für horizontales Skalieren für Berichtsserver im nativen Modus

Gilt für: SQL Server Reporting Services Enterprise Edition (2017 und höher) Power BI-Berichtsserver

Der einheitliche Modus von Reporting Services unterstützt ein Bereitstellungsmodell für horizontales Skalieren, das die Ausführung mehrerer Berichtsserverinstanzen ermöglicht, die eine einzelne Berichtsserver-Datenbank gemeinsam nutzen. Die Bereitstellung für horizontales Skalieren wird verwendet, um die Skalierbarkeit von Berichtsservern zu erhöhen, sodass diese mehr gleichzeitige Benutzer und größere Berichtsausführungslasten unterstützen. Darüber hinaus können damit bestimmte Server für die Verarbeitung von interaktiven oder geplanten Berichten reserviert werden.

Wichtig

Für Power BI-Berichtsserver müssen Sie Clientaffinität (auch als beständige Sitzungen oder Persistenz bekannt) im Lastenausgleichsmodul für jede horizontal skalierte Umgebung konfigurieren, um eine ordnungsgemäße Leistung und einheitliche Power BI-Berichtsfunktionalität (PBIX) zu gewährleisten.

Für SQL Server 2016 Reporting Services verwenden Berichtsserver im SharePoint-Modus die SharePoint-Produktinfrastruktur für die horizontale Skalierung. Der SharePoint-Modus für horizontales Skalieren wird durch das Hinzufügen weiterer Berichtsserver im SharePoint-Modus zur SharePoint-Farm ausgeführt. Informationen zur horizontalen Skalierung im SharePoint-Modus finden Sie unter Hinzufügen eines weiteren Berichtsservers zu einer Farm (Horizontales Skalieren für SSRS).

Hinweis

Die Integration von Reporting Services in SharePoint ist nach SQL Server 2016 nicht mehr möglich.

Eine Bereitstellung für horizontales Skalieren wird in den folgenden Szenarien verwendet:

  • Als erforderliche Komponente für den Lastenausgleich mehrerer Berichtsserver in einem Servercluster. Bevor Sie einen Lastenausgleich für mehrere Berichtsserver ausführen können, müssen Sie sie zunächst für dieselbe Berichtsserver-Datenbank konfigurieren.

  • Um Berichtsserver-Anwendungen auf verschiedenen Computern zu segmentieren, indem ein Server für die interaktive Berichtsverarbeitung und ein zweiter Server für die Planung der Berichtsverarbeitung verwendet wird. In diesem Szenario verarbeitet jede Serverinstanz verschiedene Anforderungen für denselben Berichtsserver-Inhalt, der in der freigegebenen Berichtsserver-Datenbank gespeichert ist.

Bereitstellungen für horizontales Skalieren bestehen aus folgenden Komponenten:

  • Zwei oder mehr Berichtsserverinstanzen, die eine Berichtsserver-Datenbank gemeinsam nutzen

  • Optional: Ein NLB-Cluster (Network Load Balancing, Netzwerklastenausgleich), um interaktive Benutzerlasten auf die Berichtsserverinstanzen zu verteilen

Wenn Sie Reporting Services auf einem NLB-Cluster bereitstellen, müssen Sie bei der Konfiguration von Berichtsserver-URLs den Namen des virtuellen NLB-Servers verwenden, und die Server müssen für die Verwendung desselben Anzeigestatus konfiguriert sein.

Reporting Services ist nicht Teil von MSCS-Clustern (Microsoft Clusterdienste). Sie können die Berichtsserver-Datenbank jedoch auf einer Datenbank-Engine-Instanz erstellen, die Teil eines Failover-Clusters ist.

Führen Sie folgende Schritte aus, um eine Bereitstellung für horizontales Skalieren zu planen, zu installieren und zu konfigurieren:

  • Anweisungen zum Installieren von Berichtsserverinstanzen finden Sie unter Installieren von SQL Server über den Installations-Assistenten (Setup).

  • Wenn Sie vorhaben, die Bereitstellung für horizontales Skalieren auf einem NLB-Cluster (Network Load Balancing, Netzwerklastenausgleich) zu hosten, müssen Sie den NLB-Cluster zuerst konfigurieren. Weitere Informationen finden Sie unter Konfigurieren eines Berichtsservers auf einem Netzwerklastenausgleich-Cluster.

  • Machen Sie sich mit den Verfahren in diesem Artikel vertraut. Hier finden Sie Anweisungen zum Freigeben einer Berichtsserver-Datenbank und zum Verknüpfen von Berichtsservern für das horizontale Skalieren.

    In den Verfahren wird erläutert, wie eine Bereitstellung für horizontales Skalieren mit Zwei-Knoten-Berichtsserver konfiguriert wird. Wiederholen Sie die Schritte in diesem Artikel, um weitere Berichtsserverknoten zur Skalierung hinzuzufügen.

    • Über das Setup können Sie jede Berichtsserverinstanz installieren, die Sie mit der horizontalen Skalierung verbinden möchten.

      Damit Datenbank-Kompatibilitätsfehler vermieden werden, wenn Sie die Serverinstanzen mit der freigegebenen Datenbank verbinden, müssen Sie sicherstellen, dass alle Instanzen dieselbe Version aufweisen. Wenn Sie beispielsweise die Berichtsserverdatenbank mithilfe einer SQL Server 2016-Berichtsserverinstanz erstellen, müssen alle anderen Instanzen in dieser Anwendung auch SQL Server 2016-Instanzen sein.

    • Mit dem Berichtsserver-Konfigurations-Manager stellen Sie eine Verbindung von den einzelnen Berichtsservern zu der gemeinsamen Datenbank her. Sie können nur jeweils eine Verbindung zu einem Berichtsserver herstellen und diesen Berichtsserver konfigurieren.

    • Mit dem Konfigurationstool für Reporting Services können Sie die horizontale Skalierung durchführen, indem Sie eine Verbindung von den neuen Berichtsserverinstanzen zur ersten Berichtsserverinstanz herstellen, die bereits an die Berichtsserverdatenbank angeschlossen ist.

    • Verwenden Sie die Enterprise Edition von SQL Server Reporting Services. Weitere Details finden Sie unter Von den SQL Server-Editionen unterstützte SQL Server Reporting Services-Features.

Installieren einer SQL Server-Instanz zum Hosten der Berichtsserver-Datenbanken

  1. Installieren Sie eine SQL Server-Instanz auf einem Computer, der die Berichtsserver-Datenbanken hosten soll. Installieren Sie mindestens die SQL Server Datenbank-Engine und die Reporting Services.

  2. Falls notwendig, aktivieren Sie Remoteverbindungen auf dem Berichtsserver. In einigen Versionen von SQL Server sind Remoteverbindungen über TCP/IP und Named Pipes standardmäßig nicht aktiviert. Verwenden Sie den SQL Server-Konfigurations-Manager, und zeigen Sie die Einstellungen für die Netzwerkkonfiguration der Zielinstanz an, um festzustellen, ob Remoteverbindungen zugelassen sind. Wenn die Remoteinstanz zudem eine benannte Instanz ist, müssen Sie sicherstellen, dass der SQL Server-Browser-Dienst auf dem Zielserver aktiviert ist und ausgeführt wird. Der SQL Server-Browser stellt die Portnummer bereit, mit der die Verbindung zur benannten Instanz hergestellt wird.

Hinweis

Konfigurierbare benannte Instanzen sind in SQL Server Reporting Services 2017 und höher oder Power BI-Berichtsserver nicht verfügbar. SQL Server Reporting Services 2017 und höher verwenden immer den Instanznamen SSRS. Power BI-Berichtsserver wird immer der Instanzname PBIRS sein.

Dienstkonten

Die für die Reporting Services-Instanz verwendeten Dienstkonten sind wichtig für den Umgang mit der Bereitstellung für horizontales Skalieren. Sie sollten sich für eine der folgenden Optionen entscheiden, wenn Sie Ihre Reporting Services-Instanz bereitstellen.

Option 1: Alle Reporting Services-Instanzen sollten mit demselben Domänenbenutzerkonto für das Dienstkonto konfiguriert werden.

Option 2: Jedem einzelnen Dienstkonto, ganz gleich, ob es sich um ein Domänenkonto handelt oder nicht, müssen dbadmin-Berechtigungen innerhalb der SQL Server-Datenbankinstanz erteilt werden, die die ReportServer-Katalogdatenbank hostet.

Wenn Sie sich für eine Konfiguration entschieden haben, die von den beiden vorstehenden Optionen abweicht, treten möglicherweise zeitweilig Fehler beim Ändern von Tasks mit dem SQL-Agent auf. Diese Fehler äußern sich als Fehler sowohl im Reporting Services-Protokoll als auch im Webportal, wenn Sie ein Berichtsabonnement bearbeiten.

An error occurred within the report server database.  This may be due to a connection failure, timeout or low disk condition within the database.

Der Fehler tritt zeitweilig auf, weil nur der Server, der den SQL-Agent-Task erstellt, Rechte zum Anzeigen, Löschen oder Bearbeiten des Elements hat. Wenn Sie keine der vorstehenden Optionen ausführen, werden die Vorgänge nur erfolgreich ausgeführt, wenn der Load Balancer alle Anforderungen für dieses Abonnement an den Server sendet, der den SQL-Agent-Task erstellt.

Installieren der ersten Berichtsserverinstanz

  1. Installieren Sie die erste Berichtsserverinstanz, die Teil der Bereitstellung ist. Wenn Sie Reporting Services installieren, wählen Sie auf der Seite Berichtsserver-Installationsoptionen die Option Server installieren, jedoch nicht konfigurieren .

  2. Starten Sie das Reporting Services-Konfigurationstool.

  3. Konfigurieren Sie die URLs für den Berichtsserver-Webdienst und das Webportal sowie die Berichtsserver-Datenbank. Weitere Informationen finden Sie unter Konfigurieren eines Berichtsservers (nativer Reporting Services-Modus)

  4. Überprüfen Sie, ob der Berichtsserver betriebsbereit ist. Weitere Informationen finden Sie unter Verify a Reporting Services Installation

Installieren und Konfigurieren der zweiten Berichtsserverinstanz

  1. Führen Sie das Setup aus, um eine zweite Instanz von Reporting Services auf einem anderen Computer oder als benannte Instanz auf demselben Computer zu installieren. Wenn Sie Reporting Services installieren, wählen Sie auf der Seite Berichtsserver-Installationsoptionen die Option Server installieren, jedoch nicht konfigurieren .

  2. Starten Sie das Reporting Services-Konfigurationstool, und stellen Sie eine Verbindung mit der installierten neuen Instanz her.

  3. Stellen Sie eine Verbindung zwischen dem Berichtsserver und der Datenbank her, die Sie für die erste Berichtsserverinstanz verwendet haben:

    1. Wählen Sie Datenbank aus, um die Datenbankseite zu öffnen.

    2. Wählen Sie Datenbank ändernaus.

    3. Wählen Sie Vorhandene Berichtsserver-Datenbank auswählenaus.

    4. Geben Sie den Servernamen für die Instanz der SQL Server-Datenbank-Engine ein, auf der die gewünschte Berichtsserver-Datenbank gehostet wird. Bei diesem Namen muss es sich um denselben Server handeln, zu dem Sie in den vorherigen Schritten eine Verbindung hergestellt haben.

    5. Wählen Sie Verbindung testen und dann Weiter aus.

    6. Wählen Sie unter Berichtsserver-Datenbank die Datenbank, die Sie für den ersten Berichtsserver erstellt haben, und dann Weiter aus. Der Standardname lautet "ReportServer". Wählen Sie nicht „ReportServerTempDB“ aus. Dieser Eintrag wird nur zum Speichern temporärer Daten während der Berichtsverarbeitung verwendet. Wiederholen Sie die letzten vier Schritte, um eine Verbindung zum Server herzustellen, wenn die Datenbank leer ist.

    7. Wählen Sie auf der Seite Anmeldeinformationen den Typ des Kontos und der Anmeldeinformationen aus, die der gewünschte Berichtsserver für die Verbindung zur Berichtsserver-Datenbank verwendet. Sie können dieselben Anmeldeinformationen verwenden, die von der ersten Berichtsserverinstanz verwendet werden, oder andere. Wählen Sie Weiter aus.

    8. Wählen Sie Zusammenfassung und dann Fertigstellen aus.

  4. Konfigurieren Sie die Webdienst-URLfür den Berichtsserver. Testen Sie die URL noch nicht. Sie kann erst aufgelöst werden, wenn der Berichtsserver mit der horizontalen Skalierung verbunden wird.

  5. Konfigurieren Sie die Webportal-URL. Testen Sie die URL noch nicht, und versuchen Sie noch nicht, die Anwendung zu überprüfen. Der Berichtsserver steht erst zur Verfügung, wenn er mit der horizontalen Skalierung verbunden wird.

Verbinden der zweiten Berichtsserverinstanz mit der Bereitstellung für horizontales Skalieren

  1. Öffnen Sie das Reporting Services-Konfigurationstool, und stellen Sie erneut eine Verbindung mit der ersten Berichtsserverinstanz her. Der erste Berichtsserver ist bereits für umkehrbare Verschlüsselungsvorgänge initialisiert. Daher kann er verwendet werden, um weitere Berichtsserverinstanzen mit der Bereitstellung für horizontales Skalieren zu verbinden.

  2. Wählen Sie Bereitstellung für horizontales Skalieren aus, um die Seite „Bereitstellung für horizontales Skalieren“ zu öffnen. Hier sollten zwei Einträge angezeigt werden, einer für jede Berichtsserverinstanz, die mit der Berichtsserver-Datenbank verbunden ist. Für die erste Berichtsserverinstanz sollte bereits eine Verbindung bestehen. Der zweite Berichtsserver sollte auf den Join warten. Wenn Sie keine entsprechenden Einträge für die Bereitstellung sehen, sollten Sie sich vergewissern, dass Sie mit dem ersten Berichtsserver verbunden sind, der bereits für die Verwendung der Berichtsserver-Datenbank konfiguriert und initialisiert wurde.

    Screenshot that partially shows the scale-out deployment page.

  3. Wählen Sie auf der Seite „Bereitstellung für horizontales Skalieren“ die Berichtsserverinstanz aus, die auf den Join mit der Bereitstellung wartet, und wählen Sie Server hinzufügen aus.

    Hinweis

    Problem: Wenn Sie versuchen, eine Reporting Services-Berichtsserverinstanz mit der Bereitstellung für die horizontale Skalierung zu verknüpfen, wird möglicherweise eine Fehlermeldung vom Typ „Zugriff verweigert“ angezeigt.

    Problemumgehung: Sichern Sie den Reporting Services-Verschüsselungsschlüssel der ersten Reporting Services-Instanz und stellen Sie ihn für den zweiten Reporting Services-Berichtsserver wieder her. Versuchen Sie dann, den zweiten Server mit der Reporting Services-Bereitstellung für horizontales Skalieren zu verknüpfen.

  4. Sie sollten jetzt feststellen können, dass beide Berichtsserverinstanzen funktionstüchtig sind. Zur Überprüfung der zweiten Instanz können Sie über das Reporting Services-Konfigurationstool eine Verbindung mit dem Berichtsserver herstellen und die Webdienst-URL oder die Webportal-URL auswählen.

Wenn Sie die Berichtsserver in einem Servercluster mit Lastenausgleich ausführen möchten, sind ergänzende Konfigurationsschritte erforderlich. Weitere Informationen finden Sie unter Konfigurieren eines Berichtsservers auf einem Netzwerklastenausgleich-Cluster.

Weitere Fragen? Stellen Sie eine Frage im Reporting Services-Forum.