Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
von Won Yoo
Dieser Abschnitt des Dokuments gilt für Microsoft Application Request Routing Version 2 für IIS 7 und höher.
Ziel
So konfigurieren Sie erfolgreich einen untergeordneten Edge-Cache-Knoten und einen übergeordneten Cache-Knoten in der Bereitstellung einer 2-stufigen Cache-Hierarchie in einer Netzwerkumgebung mit Edge-Caching (CDN/ECN). Der Schwerpunkt dieser Anleitung besteht darin, die URL-Umschreibungsregeln für den untergeordneten Edge-Cacheknoten und den übergeordneten Cacheknoten zu verstehen. In diesem Leitfaden werden Schritt-für-Schritt-Anleitungen zum Einrichten der folgenden Konfiguration bereitgestellt:
Einige der Highlights dieser Konfiguration sind:
Die Ursprungssuche erfolgt durch den untergeordneten Rand-Cacheknoten.
- Die Liste der Kunden (also die Liste der zulässigen Ursprungsserver) wird explizit mit einer Rewrite-Karte in URL Rewrite verwaltet.
- Die Hostnamen, die in der Rewrite Map nicht gefunden werden, werden blockiert.
Der übergeordnete Cacheknoten ist größtenteils als Weiterleitungsproxy konfiguriert.
SAN ist so konfiguriert, dass es von den untergeordneten und Randcacheknoten gemeinsam genutzt werden kann.
Effektiv gibt es drei Cacheebenen:
- Untergeordneter/Edge-Cache-Knoten.
- SAN.
- Übergeordneter Cache-Knoten.
Voraussetzungen
In dieser exemplarischen Vorgehensweise wird davon ausgegangen, dass Sie mit den Konfigurationen für die Datenträgercache- und Cachehierarchieverwaltung in ARR Version 2 vertraut sind. Wenn dies noch nicht geschehen ist, wird dringend empfohlen, die folgenden exemplarischen Vorgehensweisen zu überprüfen, bevor Sie fortfahren:
- Konfigurieren und Aktivieren des Datenträgercaches im Anwendungsanforderungsrouting
- Cachehierarchieverwaltung mit Anwendungsanforderungsrouting
Wenn Anwendungsanforderungsrouting Version 2 nicht installiert wurde, können Sie es herunterladen unter:
- Microsoft Application Request Routing Version 2 für IIS 7 (x86) hier (
https://download.microsoft.com/download/4/D/F/4DFDA851-515F-474E-BA7A-5802B3C95101/ARRv2_setup_x86.EXE). - Microsoft Application Request Routing Version 2 für IIS 7 (x64) hier (
https://download.microsoft.com/download/3/4/1/3415F3F9-5698-44FE-A072-D4AF09728390/ARRv2_setup_x64.EXE).
Führen Sie die im Artikel " Install Application Request Routing Version 2 " beschriebenen Schritte aus, um ARR Version 2 zu installieren.
Konfiguration von Kind/Edge-Cacheknoten
Schritt 1: Konfigurieren des Datenträgercaches
Konfigurieren und aktivieren Sie den Festplattencache, indem Sie dem Artikel „Install Application Request Routing Version 2“ folgen. In diesem Artikel wird auch erläutert, wie Sie ein SAN so konfigurieren, dass es als sekundärer Cachelaufwerkspeicherort verwendet wird.
Schritt 2: Definieren einer Serverfarm für übergeordnete Cacheknoten
Definieren Sie eine Serverfarm, und fügen Sie übergeordnete Cacheknoten hinzu, indem Sie dem Artikel " Cachehierarchieverwaltung mithilfe des Anwendungsanforderungsrouting " folgen.
Schritt 3 - Erstellen zusätzlicher URL-Neuschreiberegeln für untergeordnete/Edge-Cacheknoten
Zu diesem Zeitpunkt wurde mit myParentCacheNodes als Name der Serverfarm die folgende URL-Umschreibungsregel in der Datei applicationHost.config geschrieben, die sich unter %windir%\system32\inetsrv\config\:
<rewrite>
<globalRules>
<rule name="ARR_myParentCacheNodes_loadbalance" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<action type="Rewrite" url="http://myParentCacheNodes/{R:0}" />
</rule>
</globalRules>
</rewrite>
Die oben genannte Regel reicht nicht für eine CDN/ECN-Bereitstellung aus, da die Cacheknoten gestuft sind und die nächste Ebene von Cacheknoten (d. h. die übergeordneten Cacheknoten) nicht wissen, wie die Ursprungsserver gefunden werden, wenn ein Cachefehler auf der übergeordneten Cacheebene auftritt.
In dieser exemplarischen Vorgehensweise wird das Problem behoben, indem der untergeordnete Cacheknoten dem Ursprungsserver zugeordnet wird, bevor die Anforderung an den übergeordneten Cacheknoten weitergeleitet wird. Es gibt zwei häufigste Methoden, auf denen die Ursprungsserver basierend auf der URL zugeordnet werden, die der untergeordnete Cacheknoten empfängt:
- Der Kunde des CDN/ECN wird als Unterdomäne angegeben. In diesem Fall kann es viele Hostnamenbindungen an dieselbe IP-Adresse des untergeordneten Cacheknotens geben.
Beispiel:http://customer1.mycnd.net/,http://customer2.mycdn.net/usw. - Der Kunde des CDN/ECN wird als erster Pfad in der URL angegeben.
Beispiel:http://static.mycdn.net/customer1/,http://static.mycdn.net/customer2/usw.
In dieser Anleitung wird das erste Beispiel zur Veranschaulichung verwendet. Ähnliche Regeln können auch geschrieben werden, um das zweite Szenario zu aktivieren.
Definieren Sie die URL-Umschreibungszuordnungen, die zum Nachschlagen des Hostnamens des Ursprungsservers verwendet werden können. Starten Sie DEN IIS-Manager.
Wählen Sie das Stammverzeichnis des Servers aus, und erweitern Sie es. Dies ist Ihr untergeordneter Cacheknoten (Edge).
Doppelklicken Sie auf "URL neu schreiben".
Klicken Sie im Bereich "Aktionen " auf "Karten neu schreiben" anzeigen.
Klicken Sie im Bereich Aktionen auf Add Rewrite Map.
Geben Sie im Dialogfeld "Rewrite Map hinzufügen" den Namen "OriginServers" ein.
In der Umschreibungszuordnung identifizieren Sie explizit die Zuordnung zwischen dem Hostnamen, den der untergeordnete Cacheknoten empfängt, und den entsprechenden Ursprungshostnamen. Klicken Sie im Bereich "Aktionen " auf " Zuordnungseintrag hinzufügen...".
Fügen Sie im Dialogfeld " Zuordnungseintrag hinzufügen " den Hostnamen hinzu, den der untergeordnete Cacheknoten empfängt, und den Ursprungshostnamen. Im folgenden Beispiel empfängt der untergeordnete ARR-Cacheknoten customer1.mycdn.net als Hostnamenheader. Der entsprechende Ursprungsserver ist images.customer1.com.
Wiederholen Sie Schritt 8 so oft wie nötig, um alle Kunden einzuschließen, für die Ihr CDN/ECN Dienste bereitstellt. So können Sie die explizite Liste Ihrer Kunden verwalten, um sicherzustellen, dass Ihr Dienst nur ihren Kunden zur Verfügung gestellt wird.
Wenn Sie die Kunden blockieren möchten, die sich nicht in der Umschreibungszuordnungsliste befinden, legen Sie den Standardwert dieser Umschreibungszuordnung auf # fest, bei der es sich um ein unzulässiges Zeichen handelt, das nicht als Teil des Hostname-Headers verwendet werden kann, laut RFC. Klicken Sie im Bereich "Aktionen " auf "Karteneinstellungen bearbeiten...".
Geben Sie im Dialogfeld # bearbeiten" den Standardwert für diese Neuschreibungszuordnung ein.
Schreiben Sie den Hostname-Header mit den Regeln neu, die in der OriginServers-Umschreibungsmap konfiguriert wurden. Wenn ein Cachefehler auftritt und die Anforderung an den übergeordneten Cacheknoten weitergeleitet wird, weist die Anforderung den Hostnamen auf, der dem Ursprungsserver entspricht. Aus diesem Grund wird der übergeordnete Cacheknoten größtenteils als Weiterleitungsproxy konfiguriert. Wenn beim übergeordneten Cacheknoten ein Cachefehler auftritt, wird die Anforderung einfach basierend auf dem Hostnamenheader, den der übergeordnete Cacheknoten empfängt, an den Ursprungsserver weitergeleitet.
Suchen Sie in der URL-Rewrite-Benutzeroberfläche nach der Regel. In dieser Anleitung sollte der Name der Regel ARR_myParentCacheNodes_loadbalance lauten.
Wählen Sie die Regel aus, und klicken Sie im Bereich "Aktionen " auf "Bearbeiten".
Klicken Sie auf "Bedingungen hinzufügen ", um zwei Regeln hinzuzufügen.
Die erste Regel verwendet die OriginServers-Umleitungskarte, die Sie in Schritt 6 erstellt haben. Die folgende Regel entspricht dem Hostheader als Schlüssel, um den Einträgen in OriginServers zu entsprechen:
Die zweite Regel legt den Standardwert so fest, als # wenn der Hostheader nicht mit den Einträgen in OriginServers übereinstimmt. Wie oben erwähnt, # ist kein gültiges Zeichen und kann nicht als Hostname verwendet werden. Die folgende Regel wird später verwendet, um sicherzustellen, dass nur die Kunden (wie durch Hostnamen dargestellt) in OriginServers von ARR gewartet werden:
Wählen Sie "Erfassungsgruppen nachverfolgen" für bedingungenübergreifend aus.
Klicken Sie auf Servervariablen, um die HTTP_HOST Werte festzulegen, die den oben genannten Bedingungen entsprechen sollen.
Geben Sie die folgenden Werte ein, um HTTP_HOST zurückzusetzen:
Klicken Sie auf OK, um die Änderungen zu speichern.
Klicken Sie im Bereich Aktionen auf Übernehmen, um die Änderungen zu speichern.
Um zu überprüfen, ob die richtigen Regeln geschrieben wurden, öffnen Sie die Datei applicationHost.config mit dem Editor. Die Konfigurationsdatei befindet sich unter
%windir%\system32\inetsrv\config\.Suchen Sie die URL-Neuschreibregel für die Serverfarm " myParentCacheNodes". Die Anzeige sollte folgendermaßen aussehen:
<rewrite> <globalRules> <rule name="ARR_myParentCacheNodes_loadbalance" patternSyntax="Wildcard" stopProcessing="true"> <match url="*" /> <conditions trackAllCaptures="true"> <add input="{OrigServers:{HTTP_HOST}}" pattern="*" /> <add input="{C:1}" negate="true" pattern="#" /> </conditions> <serverVariables> <set name="HTTP_HOST" value="{C:1}" replace="true" /> </serverVariables> <action type="Rewrite" url="http://myParentCacheNodes/{R:0}" /> </rule> </globalRules> </rewrite>Dringend empfohlen. Um Anforderungen zu blockieren, die nicht mit den in der obigen Umschreibungszuordnung definierten Hostnamen übereinstimmen, erstellen Sie eine Standard-URL-Neuschreibregel, die eine 400-Antwort an solche Anforderungen sendet.
Starten Sie DEN IIS-Manager.
Wählen Sie das Stammverzeichnis des Servers aus, und erweitern Sie es. Dies ist Ihr untergeordneter Cacheknoten (Edge).
Doppelklicken Sie auf "URL neu schreiben".
Klicken Sie im Bereich "Aktionen " auf " Regeln hinzufügen".
Wählen Sie im Dialogfeld " Regel hinzufügen " die Option "Leere Regel" aus.
Geben Sie die folgenden Werte ein, und speichern Sie die Regel:
Namen: Nicht mein Kunde
Verwendung von: Platzhaltern
Muster: *
Aktionstyp: Benutzerdefinierte Antwort
Statuscode: 400
Unterstatuscode: 0
Die Reihenfolge der Regeln ist wichtig. Die URL-Umschreibregeln werden von oben nach unten verarbeitet. In diesem Beispiel wird die erste Regel, ARR_myParentCacheNodes_Loadbalance, ausgeführt, wenn der ankommende Hostname mit einem der Hostnamen übereinstimmt, die in der obigen Rewrite-Karte angegeben sind. Wenn der Name des eingehenden Hosts keinem der Hostnamen in der obigen Umschreibungszuordnung entspricht, wird die zweite Regel Nicht mein Kunde ausgeführt.
Die Konfiguration des Child/Edge-Cache-Knotens ist abgeschlossen.
Um die Konfiguration zusätzlicher untergeordneter Cacheknoten zu optimieren, kann eine freigegebene Konfiguration verwendet werden, sodass nur ein Ort zum Verwalten der Konfiguration des untergeordneten Cacheknotens vorhanden ist. Andernfalls müssen die oben genannten Konfigurationsänderungen einzeln auf allen untergeordneten Cacheknoten in der CDN/ECN-Umgebung vorgenommen werden. Weitere Informationen zur freigegebenen Konfiguration finden Sie im Artikel " Freigegebene Konfiguration" .
Konfigurieren des übergeordneten Cacheknotens
Es gibt zwei Möglichkeiten, ARR als übergeordneten Cacheknoten zu konfigurieren:
- Richten Sie ARR als Weiterleitungsproxy ein.
- Richten Sie ARR als "Reverse"-Proxy mit der Umschreibungszuordnung ein.
Selbst bei der zweiten oben genannten Option schreiben die Umschreibungsregeln einfach den eingehenden Hostnamen mit demselben Wert um und machen ihn daher effektiv zu einem Weiterleitungsproxy. Die Rewrite-Karte wird verwendet, um die Liste der Hostnamen explizit zu konfigurieren, die der übergeordnete Cache akzeptiert, ähnlich wie der untergeordnete Cacheknoten, der weiter oben konfiguriert wird. In diesem zweiten Teil der Anleitung wird der übergeordnete Cacheknoten mithilfe der ersten Option als einfacher Forward-Proxy konfiguriert.
Schritt 1: Konfigurieren des Datenträgercaches
Konfigurieren und aktivieren Sie den Datenträgercache, indem Sie den Artikel "Konfigurieren und Aktivieren des Datenträgercaches" im Artikel "Anwendungsanforderungsrouting " ausführen.
Schritt 2: Konfigurieren von ARR als Weiterleitungsproxy
Aktivieren Sie ARR als Proxy. Starten Sie DEN IIS-Manager.
Diese Konfiguration umfasst keine Serverfarmen. Alle Einstellungen werden auf Serverebene ausgeführt.
Doppelklicken Sie auf den Application Request Routing-Cache.
Klicken Sie im Bereich "Aktionen " auf "Serverproxyeinstellungen".
Aktivieren Sie das Kontrollkästchen "Proxy aktivieren", und klicken Sie dann auf "Übernehmen". Sie haben ARR gerade als Proxy auf Serverebene aktiviert.
Um ARR in einen Vorwärtsproxy umzuwandeln, klicken Sie im Navigationsbereich auf den Serverknoten.
Doppelklicken Sie auf "URL neu schreiben".
Klicken Sie im Bereich "Aktionen " auf " Regeln hinzufügen...".
Wählen Sie im Dialogfeld " Regel hinzufügen " die Option "Leere Regel" aus.
Geben Sie die folgenden Werte ein, und speichern Sie die Regel:
Namen: Weiterleitungsproxy
Verwendung von: Platzhaltern
Muster: *
Bedingungen:
Eingabe: {HTTP_HOST}
Typ: Entspricht dem Muster
Muster: *
Aktionstyp: Umschreiben
URL neu schreiben: http://{C:1}/{R:0}
Die Konfiguration des übergeordneten Cache-Knotens ist abgeschlossen.
Um die Konfiguration zusätzlicher übergeordneter Cacheknoten zu optimieren, kann eine freigegebene Konfiguration verwendet werden, sodass nur ein Ort zum Verwalten der Konfiguration des übergeordneten Cacheknotens vorhanden ist. Andernfalls müssen die oben genannten Konfigurationsänderungen einzeln auf allen übergeordneten Cacheknoten in der CDN/ECN-Umgebung vorgenommen werden. Weitere Informationen zur freigegebenen Konfiguration finden Sie im folgenden Artikel .
Zusammenfassung
Sie haben jetzt erfolgreich untergeordnete Cacheknoten und übergeordnete Cacheknoten in einer 2-stufigen Cachehierarchie-CDN/ECN-Umgebung mit erweiterten URL-Umschreibungsregeln konfiguriert. Um die Funktionalität zu überprüfen, können Sie Schritt 4 und Schritt 5 im Artikel " Konfigurieren und Aktivieren des Datenträgercaches" im Artikel "Anwendungsanforderungsrouting" befolgen. Wenn Fehler auftreten, aktivieren Sie die Fehlgeschlagene Anfrageverfolgung, indem Sie die Schritte im Artikel Verwenden von Fehlgeschlagene Anfragenverfolgung zur Problembehandlung von Application Request Routing ausführen.
Weitere exemplarische Vorgehensweisen für ARR Version 2 finden Sie in den Dokumenten im Artikel "Application Request Routing Version 2 Overview ".