Vorgehensweise: Konfigurieren eines Berichtsservers in einem NLB-Cluster (Network Load Balancing, Netzwerklastenausgleich)
Wenn Sie einen Berichtsserver für horizontales Skalieren für die Ausführung in einem NLB-Cluster (Network Load Balancing, Netzwerklastenausgleich) konfigurieren möchten, müssen Sie folgende Schritte ausführen:
Stellen Sie sicher, dass der Zugriff auf den NLB-Cluster über den Namen eines virtuellen Servers möglich ist, der der IP-Adresse des virtuellen Servers zugeordnet ist. Der Name eines virtuellen Servers ist erforderlich, damit Sie einen einzelnen Zugriffspunkt für den NLB-Cluster konfigurieren können. Wenn Sie für jede Berichtsserverinstanz eine URL konfigurieren, geben Sie den Namen des virtuellen Servers als Host an.
Konfigurieren Sie die Anzeigestatusüberprüfung, um das Anzeigen interaktiver Berichte zu unterstützen. Interaktive Berichte werden i. d. R. in einer Benutzersitzung mehrfach gerendert, um als Reaktion auf Benutzeraktionen neue oder andere Daten anzuzeigen. Durch das Konfigurieren der Anzeigestatusüberprüfung wird die Kontinuität in Benutzersitzungen unabhängig davon gewahrt, welcher Berichtsserver die Anforderung tatsächlich bearbeitet.
Reporting Services bietet keine Funktionalität für den Lastenausgleich einer Bereitstellung für horizontales Skalieren oder zum Definieren eines einzelnen Zugriffspunkts über eine freigegebene URL. Sie müssen eine separate Software oder eine Hardware-NLB-Clusterlösung implementieren, um eine Reporting Services-Bereitstellung für horizontales Skalieren zu unterstützen.
Sie können Reporting Services auf Knoten installieren, die bereits zu einem NLB-Cluster gehören, oder Sie können eine Bereitstellung für horizontales Skalieren konfigurieren und anschließend die Clustersoftware installieren.
Schritte zur Berichtsserverbereitstellung in einem NLB-Cluster
Beachten Sie beim Installieren und Konfigurieren der Bereitstellung die folgenden Richtlinien:
Schritt |
Beschreibung |
Weitere Informationen |
---|---|---|
1 |
Überprüfen Sie vor der Installation von Reporting Services auf Serverknoten in einem NLB-Cluster die Anforderungen für die Bereitstellung für horizontales Skalieren. |
Planen einer Bereitstellung für horizontales Skalieren in der SQL Server-Onlinedokumentation |
2 |
Konfigurieren Sie den NLB-Cluster, und überprüfen Sie, ob er ordnungsgemäß arbeitet. Ordnen Sie unbedingt der virtuellen Server-IP-Adresse des NLB-Clusters einen Hostheadernamen zu. Der Hostheadername wird in der Berichtsserver-URL verwendet, und er ist leichter zu behalten als eine IP-Adresse. |
Weitere Informationen finden Sie in der Windows Server-Produktdokumentation für die Version des verwendeten Windows-Betriebssystems. |
4 |
Installieren Sie Reporting Services im Dateimodus auf Knoten, die bereits zu einem NLB-Cluster gehören, oder konfigurieren Sie die Berichtsserverinstanzen für die Bereitstellung für horizontales Skalieren. Die konfigurierte Bereitstellung für horizontales Skalieren antwortet möglicherweise nicht auf Anforderungen, die an die IP des virtuellen Servers gerichtet sind. Sie wird erst in einem späteren Schritt so konfiguriert, dass die IP des virtuellen Servers verwendet wird, und zwar nach dem Konfigurieren der Anzeigestatusüberprüfung. |
|
5 |
Konfigurieren der Anzeigestatusüberprüfung Optimale Ergebnisse erzielen Sie, wenn Sie diesen Schritt nach dem Konfigurieren der Bereitstellung für horizontales Skalieren und vor dem Konfigurieren der Berichtsserverinstanzen für die Verwendung der virtuellen Server-IP-Adresse ausführen. Indem Sie zuerst die Anzeigestatusüberprüfung konfigurieren, können Sie Ausnahmen für fehlgeschlagene Statusüberprüfungen vermeiden, wenn Benutzer versuchen, auf interaktive Berichte zuzugreifen. |
Vorgehensweise: Konfigurieren der Anzeigestatusüberprüfung in diesem Thema |
6 |
Konfigurieren Sie Hostname und UrlRoot so, dass die IP des virtuellen Servers des NLB-Clusters verwendet wird. |
So konfigurieren Sie HostName und UrlRoot in diesem Thema. |
7 |
Überprüfen Sie, ob der Zugriff auf die Server mit dem angegebenen Hostnamen möglich ist. |
Überprüfen des Zugriffs auf Berichtsserver in diesem Thema. |
Vorgehensweise: Konfigurieren der Anzeigestatusüberprüfung
Zum Ausführen einer Bereitstellung für horizontales Skalieren in einem NLB-Cluster müssen Sie die Anzeigestatusüberprüfung konfigurieren, sodass Benutzer interaktive HTML-Berichte anzeigen können. Sie müssen dies für den Berichtsserver und den Berichts-Manager ausführen.
Die Anzeigestatusüberprüfung wird von ASP.NET gesteuert. Sie ist standardmäßig aktiviert und verwendet die Identitätsinformationen des Webdiensts zum Ausführen der Überprüfung. In einem Szenario mit NLB-Cluster sind jedoch mehrere Dienstinstanzen und Webdienstidentitäten, die auf unterschiedlichen Computern ausgeführt werden, vorhanden. Da die Dienstidentität von Knoten zu Knoten variiert, können Sie die Überprüfung nicht nur anhand einer einzigen Prozessidentität ausführen.
Zum Umgehen dieses Problems können Sie einen willkürlichen Validierungsschlüssel generieren, um die Anzeigestatusüberprüfung zu unterstützen, und anschließend jeden Berichtsserverknoten zum Verwenden desselben Schlüssels manuell konfigurieren. Sie können eine beliebige nach dem Zufallsprinzip generierte hexadezimale Sequenz verwenden. Der Überprüfungsalgorithmus (z. B. SHA1) bestimmt, wie lang die hexadezimale Sequenz sein muss.
Generieren Sie mithilfe der von .NET Framework bereitgestellten Funktionalität zum automatischen Generieren einen Überprüfungsschlüssel und einen Entschlüsselungsschlüssel. Letztlich benötigen Sie einen einzigen <machineKey>-Eintrag, den Sie für jede Berichts-Manager-Instanz in der Bereitstellung für horizontales Skalieren in die Datei Web.config einfügen können.
Das folgende Beispiel zeigt den Wert, den Sie benötigen. Kopieren Sie das Beispiel nicht in die Konfigurationsdateien, denn die Schlüsselwerte sind ungültig.
<machineKey validationKey="123455555" decryptionKey="678999999" validation="SHA1" decryption="AES"/>
Öffnen Sie die Datei Web.config für den Berichts-Manager, und fügen Sie im Abschnitt <system.web> das <machineKey>-Element ein, das Sie generiert haben. Standardmäßig befindet sich die Datei Web.config für den Berichts-Manager unter \Programme\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportManager\Web.config.
Speichern Sie die Datei.
Wiederholen Sie den vorherigen Schritt für alle Berichtsserver in der Bereitstellung für horizontales Skalieren.
Überprüfen Sie, ob alle Web.Config-Dateien in den \Reporting Services\Report Manager-Ordnern identische <machineKey>-Elemente im Abschnitt <system.web> enthalten.
So konfigurieren Sie HostName und UrlRoot
Wenn Sie eine Berichtsserverbereitstellung für horizontales Skalieren in einem NLB-Cluster konfigurieren möchten, müssen Sie den Namen eines einzelnen virtuellen Servers definieren, der einen einzelnen Zugriffspunkt für den Servercluster bietet. Registrieren Sie den Namen dieses virtuellen Servers dann beim DNS-Server in der Umgebung.
Nachdem Sie den Namen des virtuellen Servers definiert haben, können Sie die Hostname-Eigenschaft und die UrlRoot-Eigenschaft in der Datei RSReportServer.config so konfigurieren, dass sie den Namen des virtuellen Servers in der Berichtsserver-URL enthalten.
Vorsicht |
---|
Die UrlRoot-Eigenschaft wirkt sich auf die URL aus, die Benutzern in der E-Mail angezeigt wird, die ihnen im Zuge eines Reporting Services-Abonnements zugesendet wird. Bleibt die UrlRoot-Eigenschaft in der RSReportServer.config-Datei unausgefüllt, enthält die in der E-Mail angezeigte URL den physikalischen Computernamen statt der URL des virtuellen NLB-Servers. Um die Weitergabe des physikalischen Computernamens an böswillige Benutzer zu unterbinden, die ggf. das Abonnement empfangen, ändern Sie die UrlRoot-Eigenschaft in den entsprechenden virtuellen NLB-Servernamen um. |
Konfigurieren Sie die Hostname-Eigenschaft, wenn Sie Platzhalter-URL-Reservierungen in der Berichtsumgebung verwenden. Wenn Sie in der Hostname-Eigenschaft den virtuellen Servernamen des NLB-Servers angeben, dann wird der Netzwerkverkehr für die Berichtsumgebung an den NLB-Server geleitet. Der NLB verteilt die Anforderungen dann an die Berichtsserverknoten.
Konfigurieren Sie außerdem die UrlRoot-Eigenschaft, damit Berichtslinks in Berichten funktionieren, die in statische Berichte, z. B. in das Excel- oder PDF-Format, exportiert wurden, oder in Berichten, die von Abonnements erzeugt werden, beispielsweise E-Mail-Abonnements.
Wenn Sie Reporting Services in Windows SharePoint Services 3.0 oder Office SharePoint Server 2007 integrieren oder Ihre Berichte in einer benutzerdefinierten Webanwendung hosten, müssen Sie unter Umständen nur die UrlRoot-Eigenschaft konfigurieren. In diesem Fall legen Sie die UrlRoot-Eigenschaft auf die URL der SharePoint-Site oder Webanwendung fest. Damit wird der Netzwerkverkehr für die Berichtsumgebung an die Anwendung geleitet, welche die Berichte handhabt, statt an den Berichtsserver oder NLB-Cluster.
Ändern Sie ReportServerUrl nicht. Wenn Sie diese URL ändern, führt dies dazu, dass jedes Mal, wenn eine interne Anforderungen verarbeitet wird, ein zusätzlicher Roundtrip über den virtuellen Server ausgeführt wird. Weitere Informationen finden Sie unter URLs in Konfigurationsdateien (Reporting Services). Weitere Informationen zum Bearbeiten der Konfigurationsdatei finden Sie unter Vorgehensweise: Ändern einer Reporting Services-Konfigurationsdatei in der SQL Server-Onlinedokumentation.
Öffnen Sie RSReportServer.config in einem Text-Editor.
Suchen Sie nach dem <Service>-Abschnitt, und fügen Sie der Konfigurationsdatei die folgenden Informationen hinzu, womit der Hostname-Wert durch den Namen des virtuellen Servers für den NLB-Server ersetzt wird:
<Hostname>virtual_server</Hostname>
Suchen Sie UrlRoot. Das Element ist in der Konfigurationsdatei nicht angegeben, aber als Standardwert wird eine URL in folgendem Format verwendet: http:// oder https://<Computername>/<Berichtsserver>, wobei <Berichtsserver> der Name des virtuellen Verzeichnisses des Report Server-Webdiensts ist.
Geben Sie für UrlRoot einen Wert ein, der den virtuellen Namen des Clusters im folgenden Format enthält: http:// oder https://<virtual_server>/<Berichtsserver>.
Speichern Sie die Datei.
Wiederholen Sie diese Schritte jeweils in der Datei RSReportServer.config für alle Berichtsserver in der Bereitstellung für horizontales Skalieren.
Überprüfen des Zugriffs auf Berichtsserver
Überprüfen Sie, ob Sie über den Namen des virtuellen Servers auf die Bereitstellung für horizontales Skalieren zugreifen können (z. B. https://MyVirtualServerName/reportserver und https://MyVirtualServerName/reports).
Sie können überprüfen, welcher Knoten tatsächlich Berichte verarbeitet, indem Sie die Berichtsserver-Protokolldateien untersuchen oder indem Sie das RS-Ausführungsprotokoll überprüfen (die Ausführungsprotokolltabelle enthält eine Spalte namens InstanceName, die anzeigt, welche Instanz eine bestimmte Anforderung verarbeitet hat). Weitere Informationen finden Sie unter Reporting Services-Protokolldateien in der SQL Server-Onlinedokumentation.
Wenn keine Verbindung mit dem Berichtsserver hergestellt werden kann, überprüfen Sie den NLB, um sicherzustellen, dass Anforderungen an den Berichtsserver gesendet werden, und zeigen Sie die HTTP-Protokolldatei des Berichtsservers an, um sich davon zu überzeugen, dass der Server die Anforderungen empfängt.
Problembehandlung bei fehlgeschlagenen Anforderungen
Wenn Anforderungen die Berichtsserverinstanzen nicht erreichen, überprüfen Sie die Datei RSReportServer.config, um festzustellen, ob der Name des virtuellen Servers als Hostname für die Berichtsserver-URLs angegeben wurde:
Öffnen Sie die Datei RSReportServer.config in einem Text-Editor.
Suchen Sie nach <Hostname>, <ReportServerUrl> und <UrlRoot>, und überprüfen Sie den Hostnamen in jeder Einstellung. Wenn der Wert nicht dem erwarteten Hostnamen entspricht, ersetzen Sie ihn durch den richtigen Hostnamen.
Wenn Sie das Reporting Services-Konfigurationstool starten, nachdem Sie diese Änderungen vorgenommen haben, ändert das Tool möglicherweise die Einstellungen für <ReportServerUrl> in den Standardwert. Bewahren Sie immer eine Sicherungskopie der Konfigurationsdateien für den Fall auf, dass Sie diese durch die Version ersetzen müssen, die die gewünschten Einstellungen enthält.
Siehe auch