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 Eintrittspunkt 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 Eintrittspunkts ü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

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 virtuelle Server-IP-Adresse gerichtet sind. Sie wird erst in einem späteren Schritt so konfiguriert, dass die virtuelle Server-IP-Adresse verwendet wird, und zwar nach dem Konfigurieren der Anzeigestatusüberprüfung.

Vorgehensweise: Konfigurieren der Berichtsserver-Bereitstellung für horizontales Skalieren (Reporting Services-Konfiguration)

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 virtuelle Server-IP-Adresse 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.

  1. 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"/>
    
  2. Ö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.MSSQLSERVER\Reporting Services\ReportManager\Web.config.

  3. Speichern Sie die Datei.

  4. Wiederholen Sie den vorherigen Schritt für alle Berichtsserver in der Bereitstellung für horizontales Skalieren.

  5. Ü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 Eintrittspunkt 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.

VorsichtshinweisVorsicht

Die UrlRoot-Eigenschaft wirkt sich auf die URL aus, die Benutzern in von einem Reporting Services-Abonnement versendeten E-Mails angezeigt wird. Wenn die UrlRoot-Eigenschaft in der Datei RSReportServer.config leer bleibt, enthält die in E-Mails angezeigte URL den Namen des physischen Computers anstelle der URL des virtuellen NLB-Servers. Um zu verhindern, dass böswilligen Benutzern, die möglicherweise das Abonnement erhalten, der Name des physischen Computers angezeigt wird, sollten Sie die UrlRoot-Eigenschaft in einen entsprechenden virtuellen NLB-Servernamen ändern.

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.

  1. Öffnen Sie RSReportServer.config in einem Text-Editor.

  2. 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>
    
  3. 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.

  4. 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>.

  5. Speichern Sie die Datei.

  6. Wiederholen Sie diese Schritte jeweils in der Datei RSReportServer.config für alle Berichtsserver in der Bereitstellung für horizontales Skalieren.

VorsichtshinweisVorsicht

Ü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.

Wenn keine Verbindung mit dem Berichtsserver hergestellt werden kann, überprüfen Sie den NLB, um sicherzustellen, dass Anforderungen an 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:

  1. Öffnen Sie die Datei RSReportServer.config in einem Text-Editor.

  2. 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.