Dieser Artikel bietet einen Überblick über Konzepte für Schutz und Resilienz, die Anforderungen und unterstützten Konfigurationen für die Nerdio Manager-Plattform sowie bekannte Einschränkungen und Warnhinweise.
Alle Funktionen, die zur Unterstützung einer resilienten Nerdio Manager-Umgebung verwendet werden, sind Azure-nativ; die Möglichkeit, Nerdio Manager in einer resilienten Konfiguration zu konfigurieren, wird jedoch nur für die Premium-Edition des Produkts unterstützt. Vollständige Anleitungen zur Konfiguration der Resilienz finden Sie unten.
Anmerkung
Wir empfehlen dringend, für das Deployment von SQL-Failovergruppen Regionspaare zu verwenden. Weitere Informationen finden Sie unter Konfigurieren der Nerdio Manager-Datenbankresilienz.
Anmerkung
Ab Nerdio Manager v6.5 wird HA nur für die Web-App-Ebene unterstützt. Die SQL-Datenbankebene kann für ein automatisches Failover konfiguriert werden, wie unter Nerdio Manager-Datenbankresilienz konfigurieren beschrieben. Dieses Failover wird jedoch aufgrund der Aktiv/Passiv-Natur von SQL-Failovergruppen als DR-Aufrufaktion eingestuft. Da SQL eine zentrale Funktionskomponente des Dienstes ist, sollten Kunden beachten, dass Nerdio Manager derzeit keine echte HA-Funktionalität unterstützt. Kurze Dienstunterbrechungen sollten erwartet und eingeplant werden. Diese Einschränkung und die damit verbundenen Prozesse sollten in Ihrer Business Continuity-Planung dokumentiert werden.
-
Hochverfügbarkeit (HA) beschreibt ein Szenario, in dem ein Dienst unter Verwendung mehrerer paralleler Instanzen des Dienstes ausgeführt wird. HA geht davon aus, dass der Dienst im Falle eines Ausfalls einer Dienstinstanz ohne Ausfallzeit oder Beeinträchtigung weiterläuft. HA-Lösungen sind im Allgemeinen teurer in der Wartung, da sie erfordern, dass mehrere Dienste gleichzeitig ausgeführt werden, was den Ressourcenverbrauch und die potenziellen Kosten des Dienstes erhöht.
-
Disaster Recovery (DR) beschreibt ein Szenario, in dem ein Dienst mit einer einzelnen Instanz ausgeführt wird. Im Falle eines Ausfalls dieses Dienstes kann jedoch ein Prozess befolgt werden, um den Dienst auf eine andere Instanz des Dienstes umzuschalten. Die sekundäre Instanz ist oft deaktiviert oder gestoppt, bis eine Disaster Recovery oder ein Test erforderlich ist (bekannt als DR-Aufruf).
DR-fähige Dienste erfordern ein manuelles oder automatisches Eingreifen, um die Aufruf- und Failover-Aktionen durchzuführen, was zu Ausfallzeiten und/oder Dienstunterbrechungen führen kann. Die für diese Aktionen erforderliche Zeit variiert je nach Dienst oder Konfiguration, und Unternehmen sind dafür verantwortlich zu entscheiden, welche Dauer eines Ausfalls toleriert werden kann.
Die Nerdio Manager Web-App-Konfigurationsanforderungen für HA- und DR-Szenarien sind im Wesentlichen gleich. Der Hauptunterschied besteht darin, dass der HA-Modus erfordert, dass 2 oder mehr Web-Apps gleichzeitig ausgeführt werden, während der DR-Modus nur erfordert, dass eine einzelne Web-App ausgeführt wird. Der Azure Front Door-Dienst fungiert als Lastverteilungsebene für diese Web-Apps.
Im HA-Modus werden Anforderungen gleichmäßig zwischen den aktiven Web-Apps verteilt. Im DR-Modus erkennt Azure Front Door intelligent, dass eine oder mehrere Web-Apps offline sind, und leitet Anforderungen an eine andere funktionierende Web-App weiter.
Das folgende Diagramm bietet einen allgemeinen Überblick über die resiliente Konfiguration von Nerdio Manager.
Die Dienstkomponenten sind in die folgenden konzeptionellen Ebenen unterteilt:
Last-Ebene
Hier stellen User eine Verbindung mit der Nerdio Manager Web-App-Konsole her. In einem resilienten Szenario werden diese Anforderungen von Azure Front Door (oder einem alternativen Lastverteilungsdienst) verwaltet.
Verbindungen werden dynamisch an eine verfügbare Nerdio Manager Web-App-Instanz in der Web-App-Ebene weitergeleitet.
Speicherebene
Die Speicherebene besteht aus den Azure-Speicherkonten, die Teil der Nerdio Manager-Kernplattform sind. Im obigen Diagramm sind nur 2 Key Storage-Konten dargestellt, und zwar:
-
Das Speicherkonto für skriptgesteuerte Aktionen (standardmäßig mit dem Präfix CSSA), das alle Skripte enthält, die zur Durchführung der Kernbereitstellung von Hosts innerhalb eines Hostpool verwendet werden. Wenn dieses Speicherkonto nicht verfügbar ist, schlagen die Aktivitäten zur Host-Erstellung, einschließlich der Autoscaling-Aufgaben, fehl.
-
Das Data Protection-Speicherkonto (standardmäßig mit DPS vorangestellt), das die Verschlüsselungsschlüssel enthält, die erforderlich sind, um verschlüsselte Geheimnisse zur Datenbank hinzuzufügen und Geheimnisse aus ihr zu lesen.
Anmerkung
Nerdio Manager unterstützt derzeit Zonenresilienz (ZRS) und Georedundanz (GRS) auf der Speicherebene. Überprüfen Sie die Abschnitte Anforderungen und Einschränkungen dieses Dokuments für weitere Informationen. Darüber hinaus sollte diese Einschränkung in der organisatorischen DR/BC-Dokumentation vermerkt werden.
Web-App-Ebene
Die Web-App-Ebene bezieht sich auf die laufenden oder gestoppten Web-Apps, die eine resiliente Anwendungsumgebung bilden. Benutzer, die über Console Connect auf die Web-Apps zugreifen (falls verfügbar), verbinden sich über die Lastausgleichsebene.
In einem HA-Szenario müssen mindestens zwei aktive Nerdio Manager Web-Apps gleichzeitig ausgeführt werden und zugänglich sein. In einem DR-Szenario muss mindestens eine aktive und eine offline Nerdio Manager Web-App vorhanden sein. Um DR aufzurufen, muss ein Administrator eine der Offline-Web-Apps starten, damit die Dienste wieder aufgenommen werden können.
Diese Ebene enthält auch den Nerdio Manager Key Vault, auf den die Web-Apps bei Bedarf zugreifen, um Geheimnisse zu lesen. Da Key Vaults so konzipiert sind, dass sie innerhalb der Azure-Infrastruktur global resilient sind, wurde diesem Element keine zusätzliche Resilienz hinzugefügt.
SQL-Datenbankebene
Die SQL-Datenbankebene bezieht sich auf die Datenbanken, die Nerdio Manager Konfigurationsinformationen speichern. Die Web-Apps senden Daten an die aktive SQL-Datenbank.
Die SQL-Datenbank muss für Ausfallsicherheit konfiguriert sein, bevor mit einer anderen HA- oder DR-Konfiguration fortgefahren wird. Bitte lesen Sie diesen Artikel für weitere Informationen.
Lese- und Schreibanfragen von den aktiven Web-Apps werden an die aktive Datenbank in der SQL-Failover-Gruppe weitergeleitet.
Anmerkung
Die folgenden Abschnitte beschreiben die Anforderungen und Prozesse, die zur Konfiguration der Nerdio Manager for Enterprise Web-App für Ausfallsicherheit erforderlich sind. Dieser Prozess berücksichtigt keine Netzwerk- oder Infrastrukturhärtung, die möglicherweise in Ihrer Umgebung vorhanden ist. Bitte sprechen Sie mit einem Mitglied des Nerdio-Support-Teams oder Ihrem Technical Account Manager, wenn Sie dies weiter besprechen möchten.
Anforderungen
-
Diese Funktion erfordert eine Nerdio Manager Premium Edition-Lizenzierung.
-
Der Microsoft.Cdn-Inhaltsanbieter muss für Ihr Abonnement registriert sein.
-
Datenschutzschlüssel müssen als Teil des Konfigurationsprozesses migriert werden. Überprüfen Sie vor Beginn dieses Prozesses, ob Ihre Umgebung ein Datenschutzschlüssel-Speicherkonto mit dem Präfix dps enthält. Falls dies nicht der Fall ist, befolgen Sie bitte den unten beschriebenen Prozess. Falls dies nicht der Fall ist, lesen Sie bitte den Abschnitt Schlüsselmigrationsprozess (Erforderlich für Nerdio Manager Umgebungen, die vor v5.5 installiert wurden) und kontaktieren Sie das Nerdio-Support-Team wie beschrieben.
-
Stellen Sie außerdem sicher, dass das Erstellungsskript so konfiguriert ist, dass das DPS-Speicherkonto als georedundanter Speicher (GRS) erstellt wird.
-
Bestehende DPS-Konten, die als LRS konfiguriert sind, müssen durch Befolgen des hier beschriebenen Prozesses in GRS konvertiert werden.
-
-
Dieses Feature muss in Kombination mit Nerdio Manager Datenbankresilienz konfiguriert werden. Wir empfehlen Ihnen, ausfallsichere Datenbanken in denselben Regionen wie die Web-Apps zu erstellen, wie hier beschrieben.
-
Zusätzliche Web-Apps und Lastenausgleichsdienste müssen manuell in Azure erstellt werden, um diese Funktion zu unterstützen.
-
Konfigurationsänderungen sollten in jeder Phase getestet werden, um sicherzustellen, dass Nerdio Manager ordnungsgemäß funktioniert, wie in der Anleitung beschrieben. Wenn Probleme festgestellt werden, folgen Sie bitte dem vorgeschlagenen Prozess, um Änderungen rückgängig zu machen, oder kontaktieren Sie den Nerdio-Support.
-
Alle Nerdio Manager Web-App-Instanzen müssen gemeinsam aktualisiert werden und alle müssen dieselbe Version von Nerdio Manager ausführen.
-
Wenn Sie planen, Private Endpoints für Ihre Web-Apps zu verwenden, ist Azure Front Door Premium in Kombination mit der Private Link-Funktion erforderlich. Weitere Details finden Sie unter Sichern Sie Ihren Ursprung mit Private Link in Azure Front Door Premium.
Einschränkungen
-
Für HA oder DR konfigurierte Umgebungen müssen über Cloud Shell (Methode 2) oder Zip Deploy (Methode 4) aktualisiert werden. Einzelheiten finden Sie unter Aktualisieren der Nerdio Manager Anwendung.
-
Alle Nerdio Manager Web-App-Ressourcen müssen sich im selben Abonnement befinden.
-
Alle Nerdio Manager Web-App-Ressourcen müssen sich in einer einzigen Ressourcengruppe befinden.
-
Im DR-Modus kann Azure Front Door Warnungen bezüglich der Web-App-Verfügbarkeit melden. Dies ist zu erwarten.
-
Im DR-Modus erfordert der Aufruf, dass Standby-Web-Apps manuell über das Azure-Portal gestartet werden müssen.
-
Wenn die Konnektivität zum Speicherkonto in den Regionen oder Zonen, die das CSSA-Speicherkonto enthalten, nicht möglich ist, schlagen zugehörige Aktionen, die Nerdio Manager-Skripte nutzen, fehl. Dies umfasst Autoscaling-Vorgänge.
-
Wenn die Konnektivität zum Speicherkonto in den Regionen oder Zonen, die das DPS-Speicherkonto enthalten, nicht möglich ist, ist die Nerdio Manager-Konsole nicht zugänglich, bis die Konnektivität wiederhergestellt ist.
-
GRS-Replikationszonen für die Speicherkonten werden von Azure ausgewählt und die Konfiguration kann nicht geändert werden. Bitte lesen Sie diesen Microsoft-Artikel, der die gekoppelten Regionen beschreibt. Wenn sich die gekoppelte Region von den Regionen unterscheidet, in denen die SQL-Failover-Gruppe oder Web-App-Replikate konfiguriert sind, kann dies die Leistung von Nerdio Manager im Falle eines Failovers beeinträchtigen.
-
Die Nerdio Kostenverteilung nach User Web-App wird derzeit weder für DR- noch für HA-Szenarien unterstützt. Ein Failover kann zu nicht kritischen Konsolenfehlern führen, bis der normale Betrieb wieder aufgenommen wird.
Anmerkung
Stellen Sie sicher, dass alle Ressourcen im selben Abonnement und in derselben Ressourcengruppe wie die ursprüngliche Nerdio Manager Web-App bereitgestellt werden.
So erstellen Sie eine neue App-Konfigurationsressource:
-
Erstellen Sie im Azure-Portal eine neue App-Konfigurationsressource unter Verwendung des Standardplans:
-
Ort: Wählen Sie den Standort aus, der sich in derselben Region wie Ihre Web-App befinden sollte.
-
Name: Geben Sie einen Namen an.
-
Tarif: Wählen Sie Standard aus.
-
Replikation aktivieren: Aktivieren Sie diese Option und geben Sie dann im rechten Bereich, der sich öffnet, einen Namen in das Feld Replikatname ein. Dies kann ein beliebiger Name sein, zum Beispiel Replikat. Wählen Sie Erstellen aus.
-
-
Ändern Sie die folgenden Optionen:
-
Legen Sie im Bereich Zugriffseinstellungen den Authentifizierungsmodus auf Pass-Through (Vorschau) fest.
-
Wählen Sie im Bereich Netzwerkmanagement die Option Azure Resource Manager-Zugriff auf privates Netzwerk aktivieren aus.
-
-
Wählen Sie Überprüfen + erstellen und anschließend Erstellen aus.
-
Öffnen Sie die neue App Configuration-Ressource.
-
Wählen Sie im Blade Operations die Option Importieren/Exportieren aus.
-
Ändern Sie die folgenden Optionen:
-
Quelltyp: Wählen Sie App Services aus.
-
Ressourcengruppe: Wählen Sie Ihren vorhandenen Nerdio Manager App Service aus.
-
-
Nachdem Sie alle Änderungen vorgenommen haben, wählen Sie Anwenden aus.
-
Wählen Sie im Blade Operations die Option Configuration explorer aus.
-
Notieren Sie sich für jeden der folgenden Schlüssel den Schlüssel und den Wert aus dem Tool „Advanced edit“. Diese sind nur in einem Szenario zum rückgängig machen erforderlich.
-
ApplicationInsights:ConnectionString
-
ApplicationInsights:InstrumentationKey
-
Deployment:WebAppName
-
-
Wählen Sie die folgenden Schlüssel aus:
-
ApplicationInsights:ConnectionString
-
ApplicationInsights:InstrumentationKey
-
Deployment:WebAppName
-
-
Sobald Sie die Auswahl getroffen haben, wählen Sie Löschen aus.
-
Erstellen Sie den folgenden Schlüsselwert:
Deployment:SqlServerId
Der Schlüsselwert sollte die Ressourcen-ID des primären SQL Servers sein.
-
Wählen Sie im Blade Zugriffssteuerung (IAM) die Option +Add > Add role assignment aus.
-
Ändern Sie im Bereich Members Folgendes:
-
Ausgewählte Rolle: Wählen Sie App Configuration Data Reader aus.
-
Zugewiesener Zugriff auf: Wählen Sie ID verwalten aus.
-
Members: Wählen Sie +Mitglieder auswählen aus und fügen Sie dann das Nerdio Manager App Service-Objekt hinzu.
-
-
Wenden Sie die Änderungen an.
-
Wählen Sie im Blade Settings die Option Zugriffseinstellungen aus.
-
Kopieren Sie den Wert des Felds Endpoint und speichern Sie ihn.
-
Öffnen Sie die Nerdio Manager App Service-Ressource (nmw-app-#############).
-
Wählen Sie im Blade Settings die Option Umgebungsvariablen aus.
-
Löschen Sie alle Variablen außer für die folgenden:
-
ApplicationInsights:ConnectionString
-
ApplicationInsights:InstrumentationKey
-
Deployment:WebAppName
-
-
Erstellen Sie auf derselben Seite eine neue Einstellung mit dem Namen AppConfiguration:Endpoint.
-
Fügen Sie den zuvor gespeicherten Endpoint-Wert ein.
-
Wenden Sie die Änderungen an.
-
Starten Sie den Nerdio Manager App Service neu.
-
Überprüfen Sie, ob der Dienst wie erwartet funktioniert, und fahren Sie dann mit dem nächsten Abschnitt dieser Anleitung fort. Falls Probleme auftreten, wenden Sie sich bitte an den Nerdio-Support.
So ändern Sie das Speicherkonto für den Datenschutz:
Anmerkung
Wenn das unten beschriebene dps-Speicherkonto in Ihrer Umgebung nicht vorhanden ist, fahren Sie mit den ergänzenden Hinweisen im Prozess zur Schlüsselmigration fort (erforderlich für Nerdio Manager Umgebungen, die vor v5.5 installiert wurden). Kehren Sie nach Abschluss zu diesem Abschnitt zurück und führen Sie die erforderlichen Aktivitäten aus.
-
Navigieren Sie im Azure-Portal zu Speicherkonten.
-
Wählen Sie das Nerdio ManagerSpeicherkonto für Datenschutzschlüssel aus.
Anmerkung
Dieses hat einen Standard-Ressourcennamen im Format dps#############.
-
Wählen Sie im Blatt Datenspeicherung die Option Container aus.
-
Wählen Sie +Container aus.
-
Geben Sie unter Name locks ein.
-
Wählen Sie Erstellen aus.
-
Klicken Sie mit der rechten Maustaste auf den neuen Container und wählen Sie SAS generieren aus.
-
Ändern Sie die folgenden Optionen:
-
Berechtigungen: Wählen Sie aus der Dropdown-Liste Lesen, Schreiben und Erstellen aus.
-
Ablaufdatum: Wählen Sie ein langfristiges Datum (zum Beispiel 2099 oder 2999).
-
-
Sobald Sie die Änderungen vorgenommen haben, wählen Sie SAS-Token und URL generieren.
-
Kopieren und speichern Sie den Wert aus Blob-SAS-URL.
-
Navigieren Sie zu Key Vaults.
-
Öffnen Sie den Nerdio Manager Key Vault der Anwendung.
Anmerkung
Dieser hat standardmäßig den Namen nmw-app-kv-#############.
-
Wählen Sie im Blatt Objekte die Option Geheimnisse.
-
Wählen Sie +Generieren/Importieren.
-
Geben Sie die folgenden Informationen ein:
-
Name: Geben Sie Deployment--LocksContainerSasUrl ein.
-
Wert: Fügen Sie die SAS-URL ein, die Sie zuvor gespeichert haben.
-
-
Sobald Sie die gewünschten Informationen eingegeben haben, wählen Sie Erstellen.
Schlüsselmigrationsprozess (erforderlich für Nerdio Manager Umgebungen, die vor v5.5 installiert wurden)
Anmerkung
Dies ist eine ergänzende Anleitung und nur erforderlich, wenn Ihre Nerdio Manager Instanz kein Speicherkonto für Datenschutzschlüssel mit dem Präfix dps hat. Dies muss erstellt und die Schlüssel müssen migriert werden, bevor Sie fortfahren.
-
Laden Sie das Skript migrate-dataprotection.ps1 herunter.
-
Navigieren Sie zu System > Einstellungen > Nerdio.
-
Erweitern Sie den Abschnitt Nerdio Manager-Migration.
-
Laden Sie das Skript herunter.
-
-
Führen Sie das Skript migrate-dataprotection.ps1 von einer Cloud Shell-Instanz aus.
-
Die erforderlichen Skriptparameter sind:
./migrate-dataprotection.ps1 -resourceGroupName <ResourceGroupOfYourWebAppName> -webAppName <YourWebAppName>
-
Starten Sie den Nerdio Manager App Service neu.
-
Überprüfen und bestätigen Sie nach dem Ausführen des Skripts die folgenden Punkte:
-
Ein Speicherkonto mit dem Präfix dps wurde in der Bereitstellungsressourcengruppe erstellt und verfügt über einen Container namens dataprotectionkeys.
-
Ein Key Vault mit dem Präfix nmw-app-kv ist vorhanden und verfügt über:
-
Einen Schlüssel mit dem Namen DataProtection-XXXXXXXXXXXXX.
Anmerkung
Der Schlüsselbezeichner (ohne Version) lautet beispielsweise https://nmw-app-kv-XXXXXXXXXXXXX.vault.azure.net/keys/DataProtection-XXXXXXXXXXXXX.
-
Ein Geheimnis mit dem Namen DataProtection--Storage--Path ist vorhanden und sein Wert ist gültig.
Anmerkung
Testen Sie dies, indem Sie den Wert des Geheimnisses kopieren und dann in einen neuen Browser-Tab einfügen. Sie sollten sehen, dass das XML alle Schlüssel aus den obigen Schritten enthält und den Kommentar Dieser Schlüssel ist mit Azure Key Vault verschlüsselt enthält.
-
-
Die App Service-Konfiguration hat die folgenden Umgebungsvariablen definiert:
-
DataProtection:Storage:Type ist auf AzureBlobStorage gesetzt.
-
Der Wert DataProtection:Protect:KeyIdentifier enthält einen Schlüsselbezeichner.
-
-
-
Sobald all dies bestätigt wurde, fahren Sie mit den nächsten Schritten fort.
-
Starten Sie den App Service neu.
-
Navigieren Sie zu Speicherkonten.
-
Wählen Sie das Nerdio Manager Speicherkonto aus, das den von Ihnen zuvor erstellten Locks-Container enthält.
-
Wählen Sie im Datenspeicher Blade die Option Container aus.
-
Wählen Sie den locks-Container aus.
-
Überprüfen Sie, ob die neuen Blob-Dateien background.loop und web.startup im Container erstellt wurden.
Nerdio empfiehlt die Verwendung des Azure Front Door-Dienstes, um Lastverteilung und intelligentes Sitzungsrouting für die Webanwendung bereitzustellen. Andere Lastverteilungsdienste werden möglicherweise in Zukunft validiert.
So konfigurieren Sie die Azure Front Door:
-
Navigieren Sie im Azure-Portal zu Front Door- und CDN-Profile.
-
Wählen Sie +Erstellen aus.
-
Wählen Sie Benutzerdefinierte Erstellung und dann Weiter zum Erstellen einer Front Door aus.
Anmerkung
Front Door Premium ist möglicherweise erforderlich, wenn es in Kombination mit privaten Endpoints verwendet wird.
-
Geben Sie die folgenden Informationen ein:
-
Im Bereich Grundlagen:
-
Ressourcengruppe: Wählen Sie die Ressourcengruppe aus, in der Ihre Nerdio Manager Anwendung bereitgestellt ist.
-
Name: Geben Sie einen Namen ein.
-
-
Im Bereich Endpunkte:
-
Wählen Sie Endpunkt hinzufügen aus.
-
Geben Sie einen bevorzugten Namen ein und wählen Sie dann Hinzufügen aus.
-
-
-
Sobald Sie alle gewünschten Informationen eingegeben haben, wählen Sie Überprüfen + erstellen und dann Erstellen aus.
-
Wählen Sie die neue Front Door aus.
-
Wählen Sie im Feld Routen die Option + Route hinzufügen aus.
-
Geben Sie die folgenden Informationen ein:
-
Name: Geben Sie Default-Route oder einen beliebigen Namen Ihrer Wahl ein.
-
Akzeptierte Protokolle: Wählen Sie aus der Dropdown-Liste Nur HTTPS aus.
-
Weiterleitungsprotokoll: Wählen Sie Nur HTTPS aus.
-
Wählen Sie Eine neue Ursprungsgruppe hinzufügen aus.
-
Name: Geben Sie Default-Origin-Group oder einen beliebigen Namen Ihrer Wahl ein.
-
Sitzungsaffinität aktivieren: Wählen Sie diese Option aus.
-
Integritätsprüfungen > Protokoll: Wählen Sie HTTPS aus.
-
Wählen Sie +Ursprung hinzufügen aus und geben Sie die folgenden Informationen für jeden Ursprung ein, den Sie erstellen.
Anmerkung
Für jede Instanz der Nerdio Manager Web-App muss ein Ursprung hinzugefügt werden.
-
Name: Geben Sie Nerdio-Webapp-[number] ein.
Anmerkung
Es kann ein beliebiger Name verwendet werden, aber jeder Name muss eindeutig sein.
-
Ursprungstyp: Wählen Sie aus der Dropdown-Liste App Services aus.
-
Integritätsprüfungen > Protokoll: Wählen Sie HTTPS aus.
-
Methode der Integritätsprüfung: Wählen Sie GET aus.
-
Pfad der Integritätsprüfung: Setzen Sie den Wert auf /public/health/ping.
-
Wenn alle Optionen eingegeben wurden, wählen Sie Hinzufügen aus.
-
-
-
-
Speichern Sie alle Änderungen und schließen Sie die Erstellung des Azure Front Door-Profils ab.
-
Wählen Sie die neue Azure Front Door aus.
-
Kopieren Sie unter Übersicht den Wert des Endpunkthostnamens und speichern Sie ihn.
Anmerkung
Das Suffix hier ist *.azurefd.net.
-
Wählen Sie im Blatt Einstellungen die Option Eigenschaften aus.
-
Kopieren Sie die Ressourcen-ID und speichern Sie sie.
-
Navigieren Sie zu App-Konfiguration.
-
Wählen Sie die Ressource aus, die Sie im Abschnitt Konfigurationsprozess dieses Dokuments erstellt haben.
-
Wählen Sie im Blatt Vorgänge die Option Konfigurations-Explorer aus.
-
Erstellen Sie die folgenden Schlüsselnamen:
-
Deployment:MultiInstance:ProxyHostname
Der Schlüsselwert sollte der Endpunkthostname sein, den Sie zuvor gespeichert haben.
-
Deployment:MultiInstance:FrontDoorProfileId
Der Schlüsselwert sollte die Ressourcen-ID sein, die Sie zuvor gespeichert haben.
-
-
Navigieren Sie zu App-Registrierungen.
-
Wählen Sie Ihre Nerdio Manager App-Registrierung aus.
-
Wählen Sie im Blatt Verwalten die Option Authentifizierung aus.
-
Löschen Sie alle vorhandenen automatisch erstellten Umleitungs-URIs.
-
Fügen Sie die folgenden Regeln hinzu und ersetzen Sie AFD_ENDPOINT_HOSTNAME durch den zuvor gespeicherten Wert für die Lastenausgleichsadresse:
-
https://AFD_ENDPOINT_HOSTNAME/signin-oidc
-
https://AFD_ENDPOINT_HOSTNAME/
-
-
Ändern Sie die Front-Channel-Abmelde-URL in https://AFD_ENDPOINT_HOSTNAME/signout-oidc.
-
Speichern Sie alle Änderungen.
-
Starten Sie den App Service neu.
Nach dem Neustart sollte Nerdio Manager unter der URL des lastenausgleichten Endpoint-Hostnamens verfügbar sein.
Anmerkung
Wiederholen Sie den folgenden Vorgang für jede weitere erforderliche Instanz. Dieser Vorgang erfordert eine Ausfallzeit der Anwendung.
Die Voraussetzungen sind nun erfüllt und die Lastenausgleichsfunktionalität wurde getestet und verifiziert. Der nächste Schritt besteht darin, die zusätzlichen App Services nach Bedarf zu erstellen.
So erstellen Sie zusätzliche App Services:
-
Navigieren Sie im Azure-Portal zu App Services.
-
Wählen Sie den App Service Nerdio Manager aus.
-
Wählen Sie im Blatt Einstellungen die Option WebJobs aus.
-
Wählen Sie die Option Ausführen und dann Beenden aus.
-
Wählen Sie im Blatt Entwicklungstools die Option App klonen aus.
-
Geben Sie den gewünschten Namen, die Region und den App Service-Plan ein.
-
Wählen Sie Klonen aus.
Dieser Vorgang dauert etwa 5-10 Minuten.
-
Öffnen Sie den neu erstellten App Service.
-
Wählen Sie im Blatt Einstellungen die Option ID aus.
-
Stellen Sie im Bereich System zugewiesen den Status auf Ein ein.
-
Wählen Sie Speichern aus.
-
Wählen Sie im Blatt Einstellungen die Option Umgebungsvariablen aus.
-
Ändern Sie Deployment:WebAppName in den oben erstellten Namen der Web-App-Ressource.
-
Navigieren Sie zu App-Konfiguration.
-
Wählen Sie die neu erstellte Ressource aus.
-
Wählen Sie im Blatt Zugriffssteuerung (IAM) die Option +Hinzufügen > Rollenzuweisung hinzufügen aus.
-
Ändern Sie im Bereich Mitglieder Folgendes:
-
Ausgewählte Rolle: Wählen Sie App Configuration-Datenleser aus.
-
Zugriff zugewiesen an: Wählen Sie Verwaltete ID aus.
-
Mitglieder: Wählen Sie +Mitglieder auswählen und fügen Sie dann das Nerdio Manager App Service-Objekt hinzu.
-
-
Wenden Sie die Änderungen an.
-
Navigieren Sie zu Key Vaults.
-
Wählen Sie die Nerdio Manager Key Vault-Ressource mit dem Standardpräfixnamen nmw-app-kv aus.
-
Wählen Sie im Blade Zugriffsrichtlinien die Option +Erstellen aus.
-
Geben Sie die folgenden Informationen ein:
-
Im Bereich Berechtigungen:
-
Kryptografische Vorgänge: Wählen Sie aus der Dropdownliste Unwrap Key und Wrap Key aus.
-
Vorgänge zur Geheimnisverwaltung: Wählen Sie aus der Dropdown-Liste Get, List, Set und Delete aus.
-
-
Suchen Sie im Bereich Principal nach dem Nerdio Manager Web App Service Principal und wählen Sie ihn aus.
-
-
Sobald Sie alle gewünschten Informationen eingegeben haben, wählen Sie Review + create und anschließend Create aus.
Anmerkung
Die folgenden Schritte sollten erst ausgeführt werden, nachdem alle zusätzlichen erforderlichen Web Apps erstellt wurden.
-
Stellen Sie sicher, dass alle App Services (Web Apps und WebJobs) gestartet sind.
-
Navigieren Sie zu Front Door- und CDN-Profilen.
-
Wählen Sie das neue Azure Front Door-Profil aus.
-
Wählen Sie im Blade Einstellungen die Option Origin-Gruppen aus.
-
Wählen Sie die neu erstellte Origin-Gruppe aus.
-
Wählen Sie +Origin hinzufügen aus.
-
Geben Sie die gleichen Werte wie für den zuvor erstellten Ursprung ein, wählen Sie jedoch den neu kopierten App Service unter Host Name aus.
-
Speichern Sie alle Änderungen.
Der Vorgang kann bis zu 5 Minuten dauern.
Die folgenden Tests sollten durchgeführt werden:
-
Öffnen Sie die URL des lastenausgleichten Azure Front Door mehrfach, idealerweise von mehreren Endpunkten aus. Die Nerdio Manager Konsole sollte ohne Fehler geöffnet werden.
-
Versuchen Sie, jeden App Service abwechselnd zu stoppen. Dienste sind während eines Failover-Ereignisses für das konfigurierte Azure Front Door-Integritätsprüfungsintervall (Standardwert ist 100s) nicht verfügbar.
-
Stellen Sie sicher, dass Nerdio Manager nach dem oben genannten Timeout erreichbar ist, selbst wenn nur eine einzelne Instanz ausgeführt wird.
-
Überprüfen Sie die Azure Front Door-Verkehrsprotokolle auf Fehler oder Fehlkonfigurationen.
Konfigurieren Sie optional die App Services so, dass alle Versuche blockiert werden, die Web-App über ihre nativ Webadresse zu kontaktieren. Dies stellt sicher, dass die gesamte Kommunikation über den Azure Front Door-Dienst erfolgt.
Schränken Sie den Azure Front Door-Endpoint ein:
-
Wählen Sie für jede Web-App im Blatt Einstellungen die Option Netzwerkmanagement aus.
-
Wählen Sie Aktiviert ohne Zugriffsbeschränkungen.
-
Geben Sie die folgenden Informationen ein:
-
Öffentlicher Netzwerkzugriff: Wählen Sie Aktiviert aus ausgewählten virtuellen Netzwerken und IP-Adressen.
-
Aktion für nicht übereinstimmende Regeln: Wählen Sie Verweigern.
-
Wählen Sie im Abschnitt Websitezugriff und Regeln die Option +Hinzufügen und geben Sie dann die folgenden Informationen ein:
-
Name: Geben Sie einen beliebigen Wert ein (zum Beispiel AFD).
-
Priorität: Geben Sie 1 ein.
-
Typ: Wählen Sie aus der Dropdown-Liste Service Tag aus.
-
Service Tag: Wählen Sie aus der Dropdown-Liste AzureFrontDoor.Backend aus.
-
X-Azure-FDID: Optional können Sie den eindeutigen Header-Wert einfügen.
Anmerkung
Diese Informationen finden Sie im Abschnitt Übersicht des Front Door-Profils unter Front Door-ID.
-
Speichern Sie die neue Regel.
-
-
-
Sobald Sie alle gewünschten Informationen eingegeben haben, speichern Sie Ihre Änderungen.
Kommentare (0 Kommentare)