Bereitstellen von Azure Spring Apps in einem virtuellen Netzwerk

Hinweis

Azure Spring Apps ist der neue Name für den Azure Spring Cloud-Dienst. Obwohl der Dienst umbenannt wurde, wird der alte Name noch an einigen Stellen verwendet, solange wir Ressourcen wie Screenshots, Videos und Diagramme aktualisieren.

Dieser Artikel gilt für: ✔️ Java ✔️ C#

Dieser Artikel gilt für:❌ Basic ✔️ Standard ✔️ Enterprise

In diesem Tutorial wird erläutert, wie Sie eine Azure Spring Apps-Instanz in Ihrem virtuellen Netzwerk bereitstellen. Diese Bereitstellung wird manchmal als VNET-Einschleusung bezeichnet.

Die Bereitstellung ermöglicht Folgendes:

  • Isolierung von Azure Spring Apps-Apps und der Dienstruntime vom Internet in Ihrem Unternehmensnetzwerk.
  • Azure Spring Apps-Interaktion mit Systemen in lokalen Rechenzentren oder Azure-Diensten in anderen virtuellen Netzwerken.
  • Befähigung von Kunden zum Steuern der eingehenden und ausgehenden Netzwerkkommunikation für Azure Spring Apps.

Im folgenden Video wird beschrieben, wie Sie Spring Boot-Anwendungen mithilfe verwalteter virtueller Netzwerke schützen.


Hinweis

Sie können Ihr virtuelles Azure-Netzwerk nur auswählen, wenn Sie eine neue Azure Spring Apps-Dienstinstanz erstellen. Nach dem Erstellen der Azure Spring Apps-Instanz können Sie nicht mehr zu einem anderen virtuellen Netzwerk wechseln.

Voraussetzungen

Registrieren der Azure Spring Apps-Ressourcenanbieter Microsoft.AppPlatform und Microsoft.ContainerService gemäß den Anweisungen zum Registrieren des Ressourcenanbieters im Azure-Portal oder durch Ausführung des folgenden Azure CLI-Befehls:

az provider register --namespace Microsoft.AppPlatform
az provider register --namespace Microsoft.ContainerService

Anforderungen für virtuelle Netzwerke

Das virtuelle Netzwerk, in dem Sie die Azure Spring Apps-Instanz bereitstellen, muss die folgenden Anforderungen erfüllen:

  • Standort: Das virtuelle Netzwerk muss sich am selben Ort wie die Azure Spring Apps-Instanz befinden.
  • Abonnement: Das virtuelle Netzwerk muss sich im selben Abonnement wie die Azure Spring Apps-Instanz befinden.
  • Subnetze: Das virtuelle Netzwerk muss zwei Subnetze enthalten, die für eine Azure Spring Apps-Instanz bestimmt sind:
    • Ein Subnetz für die Dienstruntime.
    • Ein Subnetz für Ihre Spring-Anwendungen.
    • Zwischen diesen Subnetzen und einer Azure Spring Apps-Instanz besteht eine 1:1-Beziehung. Verwenden Sie für jede Dienstinstanz, die Sie bereitstellen, ein neues Subnetz. Jedes Subnetz kann nur eine einzelne Dienstinstanz enthalten.
  • Adressraum: CIDR-Blöcke bis zu /28 für das Subnetz der Dienstruntime und das Subnetz der Spring-Anwendungen.
  • Routingtabelle: Den Subnetzen muss standardmäßig keine vorhandene Routingtabelle zugeordnet sein. Sie können Ihre eigene Routingtabelle verwenden.

Führen Sie die folgenden Schritte aus, um das virtuelle Netzwerk so einzurichten, dass es die Azure Spring Apps-Instanz enthält.

Erstellen eines virtuellen Netzwerks

Wenn Sie bereits über ein virtuelles Netzwerk zum Hosten einer Azure Spring Apps-Instanz verfügen, überspringen Sie die Schritte 1, 2 und 3. Sie können mit Schritt 4 beginnen, um Subnetze für das virtuelle Netzwerk vorzubereiten.

  1. Wählen Sie im Menü des Azure-Portals die Option Ressource erstellen aus. Wählen Sie in Azure Marketplace die Option Netzwerk>Virtuelles Netzwerk aus.

  2. Geben Sie im Dialogfeld Virtuelles Netzwerk erstellen die folgenden Informationen an, oder wählen Sie sie aus:

    Einstellung Wert
    Subscription Wählen Sie Ihr Abonnement aus.
    Resource group Wählen Sie Ihre Ressourcengruppe aus, oder erstellen Sie eine neue.
    Name Geben Sie azure-spring-apps-vnet ein.
    Location Wählen Sie USA, Osten aus.
  3. Klicken Sie auf Weiter: IP-Adressen.

  4. Geben Sie als „IPv4-Adressraum“ den Adressraum 10.1.0.0/16 ein.

  5. Wählen Sie Subnetz hinzufügen aus. Geben Sie dann unter Subnetzname den Namen service-runtime-subnet und unter Subnetzadressbereich den Bereich 10.1.0.0/24 ein. Wählen Sie dann Hinzufügen aus.

  6. Wählen Sie erneut Subnetz hinzufügen aus, und geben Sie den Subnetznamen und den Subnetzadressbereich ein. Geben Sie z. B. apps-subnet und 10.1.1.0/24 ein. Wählen Sie dann Hinzufügen aus.

  7. Klicken Sie auf Überprüfen + erstellen. Übernehmen Sie die übrigen Standardeinstellungen, und wählen Sie Erstellen aus.

Erteilen der Dienstberechtigung für das virtuelle Netzwerk

In diesem Abschnitt erfahren Sie, wie Sie Azure Spring Apps die Berechtigung Besitzer für Ihr virtuelles Netzwerk erteilen. Mit dieser Berechtigung können Sie einen dedizierten und dynamischen Dienstprinzipal im virtuellen Netzwerk für die weitere Bereitstellung und Wartung gewähren.

Hinweis

Die minimal erforderlichen Berechtigungen sind Benutzerzugriffsadministrator und Netzwerkmitwirkender. Sie können beiden eine Rolle zuweisen, wenn Sie die Berechtigung Owner nicht erteilen können.

Wenn Sie Ihre eigene Routingtabelle oder ein benutzerdefiniertes Routingfeature verwenden, müssen Sie für Azure Spring Apps dieselben Rollenzuweisungen für Ihre Routingtabellen festlegen. Weitere Informationen finden Sie im Abschnitt Eigene Routingtabelle verwenden und unter Steuern des ausgehenden Datenverkehrs für eine Azure Spring Apps-Instanz.

Gehen Sie zum Erteilen von Berechtigungen wie folgt vor:

  1. Wählen Sie das zuvor erstellte virtuelle Netzwerk azure-spring-apps-vnet aus.

  2. Wählen Sie Zugriffssteuerung (IAM) und anschließend Hinzufügen>Rollenzuweisung hinzufügen aus.

    Screenshot: Seite „Zugriffssteuerung (IAM)“ im Azure-Portal mit der Registerkarte „Zugriff überprüfen“ und hervorgehobener Schaltfläche „Rollenzuweisung hinzufügen“

  3. Weisen Sie dem Azure Spring Apps-Ressourcenanbieter die Rolle Owner zu. Weitere Informationen finden Sie unter Weisen Sie Azure-Rollen über das Azure-Portal zu.

    Hinweis

    Sollten Sie den Azure Spring Apps-Ressourcenanbieter nicht finden, suchen Sie nach Azure Spring Cloud-Ressourcenanbieter.

    Screenshot: Seite „Zugriffssteuerung“ im Azure-Portal mit dem Bereich „Rollenzuweisung hinzufügen“ und dem Feld „Auswählen“ mit hervorgehobener Eingabe „Azure Spring Apps-Ressourcenanbieter“

Bereitstellen einer Azure Spring Apps-Instanz

Führen Sie die folgenden Schritte aus, um eine Azure Spring Apps-Instanz im virtuellen Netzwerk bereitzustellen:

  1. Öffnen Sie das Azure-Portal.

  2. Suchen Sie im Suchfeld oben nach Azure Spring Apps. Wählen Sie in den Ergebnissen Azure Spring Apps aus.

  3. Wählen Sie auf der Seite Azure Spring Apps die Option Hinzufügen aus.

  4. Füllen Sie das Formular auf der Azure Spring Apps-Seite Erstellen aus.

  5. Wählen Sie die gleiche Ressourcengruppe und die gleiche Region wie für das virtuelle Netzwerk aus.

  6. Wählen Sie unter Dienstdetails für Name die Option azure-spring-apps-vnet aus.

  7. Wählen Sie die Registerkarte Netzwerk und dann die folgenden Werte aus:

    Einstellung Wert
    Bereitstellen im eigenen virtuellen Netzwerk Wählen Sie Ja aus.
    Virtuelles Netzwerk Wählen Sie azure-spring-apps-vnet aus.
    Subnetz der Dienstruntime Wählen Sie service-runtime-subnet aus.
    Subnetz für Spring Boot-Microservice-Apps Wählen Sie apps-subnet aus.

    Screenshot: Azure-Portal mit der Seite „Azure Spring Apps erstellen“ und der Registerkarte „Netzwerk“

  8. Klicken Sie auf Überprüfen und erstellen.

  9. Überprüfen Sie Ihre Spezifikationen, und wählen Sie Erstellen aus.

    Screenshot: Azure-Portal mit der Seite „Azure Spring Apps erstellen“ und dem Abschnitt „Netzwerk“ der Registerkarte „Überprüfen und erstellen“

Nach der Bereitstellung werden zwei weitere Ressourcengruppen in Ihrem Abonnement erstellt, um die Netzwerkressourcen für die Azure Spring Apps-Instanz zu hosten. Navigieren Sie zur Startseite, und wählen Sie dann Ressourcengruppen aus den oberen Menüelementen aus, um die folgenden neuen Ressourcengruppen zu suchen.

Die Ressourcengruppe mit dem Namen ap-svc-rt_{service instance name}_{service instance region} enthält Netzwerkressourcen für die Dienstruntime der Dienstinstanz.

Screenshot: Azure-Portal mit den Ressourcen für die Dienstruntime

Die Ressourcengruppe mit dem Namen ap-app_{service instance name}_{service instance region} enthält Netzwerkressourcen für Ihre Spring-Anwendungen der Dienstinstanz.

Screenshot: Azure-Portal mit den Ressourcen für die Spring-Anwendungen

Diese Netzwerkressourcen sind mit dem in der vorherigen Abbildung erstellten virtuellen Netzwerk verbunden.

Screenshot: Azure-Portal mit der Seite „Verbundene Geräte“ für ein virtuelles Netzwerk

Wichtig

Die Ressourcengruppen werden vollständig vom Azure Spring Apps-Dienst verwaltet. Löschen oder ändern Sie die Ressourcen darin nicht manuell.

Verwenden kleinerer Subnetzbereiche

Diese Tabelle enthält die maximale Anzahl von App-Instanzen, die Azure Spring Apps mit kleineren Subnetzbereichen unterstützt.

App-Subnetz-CIDR IP-Adressen gesamt Verfügbare IP-Adressen Maximale Anzahl App-Instanzen
/28 16 8

App mit 0.5 Kern: 192
App mit einem Kern: 96
App mit zwei Kernen: 48
App mit drei Kernen: 32
App mit vier Kernen: 24

/27 32 24

App mit 0.5 Kern: 456
App mit einem Kern: 228
App mit zwei Kernen: 144
App mit drei Kernen: 96
App mit vier Kernen: 72

/26 64 56

App mit 0.5 Kern: 500
App mit einem Kern: 500
App mit zwei Kernen: 336
App mit drei Kernen: 224
App mit vier Kernen: 168

/25 128 120

App mit 0.5 Kern: 500
App mit einem Kern: 500
App mit zwei Kernen: 500
App mit drei Kernen: 480
App mit vier Kernen: 360

/24 256 248

App mit 0.5 Kern: 500
App mit einem Kern: 500
App mit zwei Kernen: 500
App mit drei Kernen: 500
App mit vier Kernen: 500

Für Subnetze reserviert Azure fünf IP-Adressen, und für Azure Spring Apps sind mindestens drei IP-Adressen erforderlich. Mindestens acht IP-Adressen sind erforderlich, sodass /29 und /30 nicht betriebsbereit sind.

Bei einem Dienstruntime-Subnetz beträgt die Mindestgröße /28.

Hinweis

Ein kleiner Subnetzbereich wirkt sich auf die zugrunde liegende Ressource aus, die Sie für Systemkomponenten wie den Eingangsdatencontroller verwenden können. Azure Spring Apps verwendet einen zugrunde liegenden Eingangsdatencontroller, um die Verwaltung des Anwendungsdatenverkehrs zu verarbeiten. Die Anzahl der Eingangsdatencontroller-Instanzen erhöht sich automatisch, wenn der Anwendungsdatenverkehr zunimmt. Reservieren Sie einen größeren Subnetz-IP-Bereich für virtuelle Netzwerke, wenn der Anwendungsdatenverkehr in Zukunft steigen könnte. Normalerweise reservieren Sie eine IP-Adresse für den Datenverkehr von 10.000 Anforderungen pro Sekunde.

Eigene Routingtabelle verwenden

Azure Spring Apps unterstützt die Verwendung vorhandener Subnetze und Routingtabellen.

Wenn Ihre benutzerdefinierten Subnetze keine Routingtabellen enthalten, erstellt Azure Spring Apps diese für jedes der Subnetze und fügt ihnen während des Instanzlebenszyklus Regeln hinzu. Wenn Ihre benutzerdefinierten Subnetze Routingtabellen enthalten, erkennt Azure Spring Apps die vorhandenen Routingtabellen bei Instanzvorgängen und fügt Und/Oder-Regeln für Vorgänge entsprechend hinzu bzw. aktualisiert sie.

Warnung

Benutzerdefinierte Regeln können zu benutzerdefinierten Routingtabellen hinzugefügt und aktualisiert werden. Regeln werden jedoch von Azure Spring Apps hinzugefügt und dürfen nicht aktualisiert oder entfernt werden. Regeln wie 0.0.0.0/0 müssen in jeder Routingtabelle enthalten und dem Ziel Ihres Internetgateways zugeordnet sein, beispielsweise einer NVA oder einem anderen ausgehenden Gateway. Achten Sie beim Aktualisieren von Regeln unbedingt darauf, dass nur Ihre benutzerdefinierten Regeln geändert werden.

Anforderungen an die Routingtabelle

Die Routingtabellen, denen Ihr benutzerdefiniertes virtuelles Netzwerk zugeordnet ist, müssen die folgenden Anforderungen erfüllen:

  • Sie können Ihre Azure-Routingtabellen nur dann Ihrem virtuellen Netzwerk zuordnen, wenn Sie eine neue Azure Spring Apps-Dienstinstanz erstellen. Nach dem Erstellen der Azure Spring Apps-Instanz können Sie nicht mehr zu einer anderen Routingtabelle wechseln.
  • Sowohl dem Subnetz der Spring-Anwendungen als auch dem Subnetz der Dienstlaufzeit müssen unterschiedliche Routingtabellen zugeordnet sein oder keinem von beiden.
  • Vor dem Erstellen einer Instanz müssen Berechtigungen zugewiesen werden. Stellen Sie sicher, dass Sie dem Azure Spring Apps-Ressourcenanbieter die Berechtigung Owner (oder die Berechtigungen User Access Administrator und Network Contributor) für Ihre Routingtabellen erteilen.
  • Die zugeordnete Routingtabellenressource kann nach der Clustererstellung nicht mehr aktualisiert werden. Sie können die Routingtabellenressource zwar nicht aktualisieren, aber benutzerdefinierte Regeln für die Routingtabelle ändern.
  • Sie können eine Routingtabelle nicht für mehrere Instanzen wiederverwenden, da es zu Konflikten bei den Routingregeln kommen kann.

Verwenden benutzerdefinierter DNS-Server

Azure Spring Apps unterstützt die Verwendung benutzerdefinierter DNS-Server in Ihrem virtuellen Netzwerk.

Wenn Sie keine benutzerdefinierten DNS-Server in Ihrer Einstellung für das virtuelle Netzwerk des DNS-Servers angeben, verwendet Azure Spring Apps standardmäßig Azure DNS zum Auflösen von IP-Adressen. Wenn Ihr virtuelles Netzwerk mit benutzerdefinierten DNS-Einstellungen konfiguriert ist, fügen Sie die Azure DNS-IP-Adresse 168.63.129.16 als Upstream-DNS-Server auf dem benutzerdefinierten DNS-Server hinzu. Azure DNS kann IP-Adressen für alle öffentlichen FQDNs auflösen, die unter Kundenzuständigkeiten für die Ausführung von Azure Spring Apps in einem virtuellen Netzwerk aufgeführt sind. Der Dienst kann auch die IP-Adresse für *.svc.private.azuremicroservices.io in Ihrem virtuellen Netzwerk auflösen.

Wenn Ihr benutzerdefinierter DNS-Server die Azure DNS-IP-Adresse 168.63.129.16 nicht als Upstream-DNS-Server hinzufügen kann, führen Sie die folgenden Schritte aus:

Nächste Schritte