Hybridrelaymuster

Hier erfahren Sie, wie Sie mithilfe des Hybridrelaymusters und von Azure Relay eine Verbindung mit Edgeressourcen oder -geräten herstellen, die von Firewalls geschützt werden.

Kontext und Problem

Edge-Geräte befinden sich oft hinter einer Unternehmensfirewall oder einem NAT-Gerät. Obwohl sie sicher sind, können sie möglicherweise nicht mit der öffentlichen Cloud oder Edgegeräten in anderen Unternehmensnetzwerken kommunizieren. Es kann notwendig sein, bestimmte Ports und Funktionen Benutzern in der öffentlichen Cloud auf sichere Weise verfügbar zu machen.

Lösung

Das Hybridrelaymuster verwendet Azure Relay, um einen WebSockets-Tunnel zwischen zwei Endpunkten einzurichten, die nicht direkt miteinander kommunizieren können. Geräte, die nicht lokal sind, aber eine Verbindung mit einem lokalen Endpunkt herstellen müssen, werden mit einem Endpunkt in der öffentlichen Cloud verbunden. Dieser Endpunkt leitet den Datenverkehr auf vordefinierten Routen über einen sicheren Kanal um. Ein Endpunkt innerhalb der lokalen Umgebung empfängt den Datenverkehr und leitet ihn an das gewünschte Ziel weiter.

hybrid relay pattern solution architecture

So funktioniert das Hybridrelaymuster:

  1. Ein Gerät stellt an einem vordefinierten Port eine Verbindung mit einem virtuellen Computer (VM) in Azure her.
  2. Datenverkehr wird an das Azure Relay in Azure weitergeleitet.
  3. Die VM in Azure Stack Hub, die bereits eine langlebige Verbindung mit Azure Relay aufgebaut hat, empfängt den Datenverkehr und leitet ihn an das Ziel weiter.
  4. Der lokale Dienst oder Endpunkt verarbeitet die Anforderung.

Komponenten

Diese Lösung verwendet die folgenden Komponenten:

Ebene Komponente BESCHREIBUNG
Azure Azure VM Eine Azure-VM bietet einen öffentlich zugänglichen Endpunkt für die lokale Ressource.
Azure Relay Eine Azure Relay-Instanz stellt die Infrastruktur zum Verwalten des Tunnels und der Verbindung zwischen der Azure-VM und Azure Stack Hub-VM bereit.
Azure Stack Hub Compute Eine Azure Stack Hub-VM stellt die Serverseite des Hybridrelaytunnels bereit.
Storage Der in Azure Stack Hub bereitgestellte AKS-Engine-Cluster bietet eine skalierbare, resiliente Engine für die Ausführung des Gesichtserkennungs-API-Containers.

Probleme und Überlegungen

Beachten Sie die folgenden Punkte bei der Entscheidung, wie diese Lösung implementiert werden soll:

Skalierbarkeit

Dieses Muster erlaubt auf dem Client und Server nur 1:1-Portzuordnungen. Wenn beispielsweise Port 80 für einen Dienst auf dem Azure-Endpunkt getunnelt ist, kann er nicht für einen anderen Dienst verwendet werden. Portzuordnungen müssen entsprechend geplant werden. Azure Relay und VMs müssen zur Bewältigung des Datenverkehrs entsprechend skaliert werden.

Verfügbarkeit

Diese Tunnel und Verbindungen sind nicht redundant. Um Hochverfügbarkeit sicherzustellen, sollten Sie Code zur Prüfung auf Fehler implementieren. Eine weitere Möglichkeit besteht darin, einen Pool von mit Azure Relay verbundenen VMs hinter einem Lastenausgleich vorzuhalten.

Verwaltbarkeit

Diese Lösung kann eine Vielzahl von Geräten und Standorten umfassen und damit recht unhandlich werden. Mit den IoT-Diensten von Azure können neue Standorte und Geräte automatisch online geschaltet und auf dem neuesten Stand gehalten werden.

Sicherheit

Dieses hier gezeigte Muster ermöglicht im Edge-Bereich den ungehinderten Zugriff auf einen Port auf einem internen Gerät. Erwägen Sie, dem Dienst auf dem internen Gerät oder vor dem Hybridrelayendpunkt einen Authentifizierungsmechanismus hinzuzufügen.

Nächste Schritte

Weitere Informationen zu den in diesem Artikel behandelten Themen:

Wenn Sie bereit sind, das Lösungsbeispiel zu testen, fahren Sie mit dem Bereitstellungsleitfaden für eine Hybridrelaylösung fort. In diesem Bereitstellungsleitfaden finden Sie detaillierte Anweisungen zum Bereitstellen und Testen der zugehörigen Komponenten.