Bereitstellen von Azure Spring Apps in einem virtuellen Netzwerk
Hinweis
Die Pläne Basic, Standard und Enterprise gelten ab Mitte März 2025 als veraltet und werden über einen Zeitraum von drei Jahren eingestellt. Es wird empfohlen, auf Azure Container Apps umzustellen. Weitere Informationen finden Sie in der Ankündigung zur Einstellung von Azure Spring Apps.
Der Plan Standardverbrauch und dediziert gilt ab dem 30. September 2024 als veraltet und wird nach sechs Monaten vollständig eingestellt. Es wird empfohlen, auf Azure Container Apps umzustellen. Weitere Informationen finden Sie unter Migrieren des Plans „Standardverbrauch und dediziert“ von Azure Spring Apps zu Azure Container Apps.
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.
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.
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. Klicken Sie auf Weiter: IP-Adressen.
Geben Sie als „IPv4-Adressraum“ den Adressraum 10.1.0.0/16 ein.
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.
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.
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 Berechtigungen Benutzerzugriffsadministrator und Netzwerkmitwirkender für Ihr virtuelles Netzwerk zuweisen. Mit dieser Berechtigung können Sie einen dedizierten und dynamischen Dienstprinzipal im virtuellen Netzwerk für die weitere Bereitstellung und Wartung gewähren.
Hinweis
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:
Wählen Sie das zuvor erstellte virtuelle Netzwerk
azure-spring-apps-vnet
aus.Wählen Sie Zugriffssteuerung (IAM) und anschließend Hinzufügen>Rollenzuweisung hinzufügen aus.
Weisen Sie dem Azure Spring Cloud-Ressourcenanbieter die Rollen
Network Contributor
undUser Access Administrator
zu. Weitere Informationen finden Sie unter Weisen Sie Azure-Rollen über das Azure-Portal zu.Hinweis
Die Rolle
User Access Administrator
befindet sich unter Privilegierte Administratorrollen undNetwork Contributor
unter Auftragsfunktionsrollen.
Bereitstellen einer Azure Spring Apps-Instanz
Führen Sie die folgenden Schritte aus, um eine Azure Spring Apps-Instanz im virtuellen Netzwerk bereitzustellen:
Öffnen Sie das Azure-Portal.
Suchen Sie im Suchfeld oben nach Azure Spring Apps. Wählen Sie in den Ergebnissen Azure Spring Apps aus.
Wählen Sie auf der Seite Azure Spring Apps die Option Hinzufügen aus.
Füllen Sie das Formular auf der Azure Spring Apps-Seite Erstellen aus.
Wählen Sie die gleiche Ressourcengruppe und die gleiche Region wie für das virtuelle Netzwerk aus.
Wählen Sie unter Dienstdetails für Name die Option azure-spring-apps-vnet aus.
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. Klicken Sie auf Überprüfen und erstellen.
Überprüfen Sie Ihre Spezifikationen, und wählen Sie Erstellen aus.
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.
Die Ressourcengruppe mit dem Namen ap-app_{service instance name}_{service instance region}
enthält Netzwerkressourcen für Ihre Spring-Anwendungen der Dienstinstanz.
Diese Netzwerkressourcen sind mit dem in der vorherigen Abbildung erstellten virtuellen Netzwerk verbunden.
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 |
/27 | 32 | 24 | App mit 0.5 Kern: 456 |
/26 | 64 | 56 | App mit 0.5 Kern: 500 |
/25 | 128 | 120 | App mit 0.5 Kern: 500 |
/24 | 256 | 248 | App mit 0.5 Kern: 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 10000 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 Cloud-Ressourcenanbieter die Berechtigungen
User Access Administrator
undNetwork Contributor
für Ihre Routingtabellen zuweisen. - 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:
- Stellen Sie sicher, dass Ihr benutzerdefinierter DNS-Server IP-Adressen für alle öffentlichen FQDNs auflösen kann. Weitere Informationen finden Sie unter Kundenzuständigkeiten für die Ausführung von Azure Spring Apps im virtuellen Netzwerk.
- Fügen Sie den DNS-Eintrag
*.svc.private.azuremicroservices.io
zur IP-Adresse Ihrer Anwendung hinzu. Weitere Informationen finden Sie im Abschnitt Ermitteln der IP-Adresse für Ihre Anwendung unter Zugreifen auf eine App in Azure Spring Apps in einem virtuellen Netzwerk.