Spring Cloud-toepassingen migreren naar Azure Spring Apps
Notitie
Azure Spring Apps is de nieuwe naam voor de Azure Spring Cloud-service. Hoewel de service een nieuwe naam heeft, ziet u de oude naam op sommige plaatsen terwijl we werken aan het bijwerken van assets, zoals schermopnamen, video's en diagrammen.
In deze handleiding wordt beschreven waar u rekening mee moet houden wanneer u een bestaande Spring Cloud-toepassing wilt migreren om te worden uitgevoerd in Azure Spring Apps.
Premigratie
Voltooi voordat u begint de evaluatie- en inventarisstappen die in de volgende secties worden beschreven om een geslaagde migratie te garanderen.
Als u niet aan een van deze vereisten vóór de migratie kunt voldoen, raadpleegt u de volgende aanvullende migratiehandleidingen:
- Uitvoerbare JAR-toepassingen migreren naar containers in Azure Kubernetes Service (handleiding gepland)
- Uitvoerbare JAR-toepassingen migreren naar Azure Virtual Machines (handleiding gepland)
Toepassingsonderdelen inspecteren
Nagaan of en hoe het bestandssysteem wordt gebruikt
Zoek alle exemplaren waar uw services schrijven naar en/of lezen vanuit het lokale bestandssysteem. Bepaal waar korte-termijn-/tijdelijke bestanden worden geschreven en gelezen en waar langlevende bestanden worden geschreven en gelezen.
Notitie
Azure Spring Apps biedt 5 GB tijdelijke opslag per Azure Spring Apps-exemplaar, gekoppeld in /tmp
. Als tijdelijke bestanden boven die limiet of op een andere locatie worden geschreven, zijn codewijzigingen vereist.
Statische alleen-lezeninhoud
Als uw toepassing momenteel met statische inhoud werkt, hebt u hiervoor een alternatieve locatie nodig. U kunt statische inhoud verplaatsen naar Azure Blob Storage en Azure CDN toevoegen voor razendsnelle downloads wereldwijd. Zie statische websitehosting in Azure Storage en quickstart: Een Azure-opslagaccount integreren met Azure CDN voor meer informatie.
Dynamisch gepubliceerde statische inhoud
Als uw toepassing statische inhoud toestaat die wordt geüpload/geproduceerd door uw toepassing, maar onveranderbaar is nadat deze is gemaakt, kunt u Azure Blob Storage en Azure CDN gebruiken zoals hierboven beschreven, met een Azure-functie om uploads en CDN-vernieuwing te verwerken. U vindt een voorbeeldimplementatie voor gebruik in Statische inhoud uploaden en via CDN vooraf laden met Azure Functions.
Bepalen of een van de services besturingssysteemspecifieke code bevat
Als uw toepassing code bevat met afhankelijkheden van het hostbesturingssysteem, moet u de toepassing herstructureren om die afhankelijkheden te verwijderen. Zo moet u mogelijk de /
of \
vervangen in bestandssysteempaden met File.Separator
of Paths.get
.
Overschakelen naar een ondersteund platform
Azure Spring Apps biedt specifieke versies van Java en specifieke versies van Spring Boot en Spring Cloud. Om compatibiliteit te garanderen, migreert u eerst uw toepassing naar een van de ondersteunde versies van Java in de huidige omgeving en gaat u vervolgens verder met de resterende migratiestappen. Zorg ervoor dat de uiteindelijke configuratie volledig wordt getest. Gebruik in dergelijke tests de laatste stabiele versie van uw Linux-distributie.
Notitie
Deze validatie is vooral belangrijk als uw huidige server wordt uitgevoerd in een niet-ondersteunde JDK (zoals Oracle JDK of IBM OpenJ9).
Meld u aan bij uw productieserver en voer de volgende opdracht uit om uw huidige Java-versie te verkrijgen:
java -version
Zie Een toepassing voorbereiden voor implementatie in Azure Spring Apps voor ondersteunde versies van Java, Spring Boot en Spring Cloud, evenals instructies voor het bijwerken.
Spring Boot-versies identificeren
Bekijk de afhankelijkheden van elke toepassing die wordt gemigreerd om de Spring Boot-versie te bepalen.
Maven
In Maven-projecten wordt de Spring Boot-versie meestal gevonden in het <parent>
element van het POM-bestand:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.10</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
Gradle
In Gradle-projecten wordt de Spring Boot-versie meestal gevonden in de plugins
sectie, als de versie van de org.springframework.boot
invoegtoepassing:
plugins {
id 'org.springframework.boot' version '2.7.10'
id 'io.spring.dependency-management' version '1.0.15.RELEASE'
id 'java'
}
Voor toepassingen die Spring Boot 1.x gebruiken, volgt u de migratiehandleiding voor Spring Boot 2.0 om deze bij te werken naar een ondersteunde Spring Boot-versie. Zie de sectie Spring Boot- en Spring Cloud-versies van Een toepassing voorbereiden voor implementatie in Azure Spring Apps voor ondersteunde versies.
Spring Cloud-versies identificeren
Bekijk de afhankelijkheden van elke toepassing die u migreert om te bepalen welke versie van de Spring Cloud-onderdelen deze gebruikt.
Maven
In Maven-projecten wordt de Spring Cloud-versie meestal ingesteld in de spring-cloud.version
eigenschap:
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>2021.0.6</spring-cloud.version>
</properties>
Gradle
In Gradle-projecten wordt de Spring Cloud-versie meestal ingesteld in het blok 'extra eigenschappen':
ext {
set('springCloudVersion', "2021.0.6")
}
U moet alle toepassingen bijwerken voor het gebruik van ondersteunde versies van Spring Cloud. Zie de sectie Spring Boot- en Spring Cloud-versies van Een toepassing voorbereiden voor implementatie in Azure Spring Apps voor een lijst met ondersteunde versies.
Oplossingen voor logboekaggregatie identificeren
Identificeer eventuele oplossingen voor logboekaggregatie die worden gebruikt door de toepassingen die u migreert. U moet diagnostische instellingen configureren in de migratie om geregistreerde gebeurtenissen beschikbaar te maken voor gebruik. Zie de sectie Logboekregistratie van de console controleren en diagnostische instellingen configureren voor meer informatie.
APM-agents (Application Performance Management) identificeren
Identificeer eventuele agents voor het bewaken van toepassingsprestaties die worden gebruikt met uw toepassingen. Azure Spring Apps ondersteunt integratie met Application Insights, New Relic, Elastic APM, Dynatrace en AppDynamics. Als de toepassing een ondersteunde APM gebruikt, configureert u de integratie in migratie. Als de toepassing geen ondersteunde APM gebruikt, kunt u in plaats daarvan Application Insights gebruiken. Zie de sectie Migratie voor meer informatie.
Zipkin-afhankelijkheden identificeren
Bepaal of uw toepassing afhankelijk is van Zipkin. Werk de toepassing bij om in plaats daarvan Application Insights te gebruiken. Zie Application Insights Java In-Process Agent gebruiken in Azure Spring Apps en de sectie Na de migratie voor meer informatie.
Externe resources inventariseren
Identificeer externe resources, zoals gegevensbronnen, JMS-bericht-brokers en URL's van andere services. In Spring Cloud-toepassingen kunt u doorgaans de configuratie voor dergelijke resources vinden op een van de volgende locaties:
- In de map src/main/directory, in een bestand met de naam application.properties of application.yml.
- In de Spring Cloud-configuratieopslagplaats die u in de vorige stap hebt geïdentificeerd.
Databases
Identificeer de verbindingsreeks voor elke SQL database.
Voor een Spring Boot-toepassing vindt u de verbindingsreeksen meestal in configuratiebestanden.
Hier volgt een voorbeeld van een application.properties-bestand:
spring.datasource.url=jdbc:mysql://localhost:3306/mysql_db
spring.datasource.username=dbuser
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
Hier volgt een voorbeeld van een application.yaml-bestand:
spring:
data:
mongodb:
uri: mongodb://mongouser:deepsecret@mongoserver.contoso.com:27017
Raadpleeg de Spring Data-documentatie voor meer mogelijke configuratiescenario's:
JMS-berichtbrokers
Identificeer de broker of brokers die in gebruik zijn door te zoeken in het buildmanifest (meestal een pom.xml - of build.gradle-bestand ) voor de relevante afhankelijkheden.
Een Spring Boot-toepassing die Gebruikmaakt van ActiveMQ bevat bijvoorbeeld meestal deze afhankelijkheid in het pom.xml-bestand :
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-activemq</artifactId>
</dependency>
Spring Boot-toepassingen die commerciële brokers gebruiken, bevatten doorgaans rechtstreeks afhankelijkheden in de JMS-stuurprogrammabibliotheken van de brokers. Hier volgt een voorbeeld van een build.gradle-bestand:
dependencies {
...
compile("com.ibm.mq:com.ibm.mq.allclient:9.0.4.0")
...
}
Nadat u de broker of brokers hebt geïdentificeerd die in gebruik zijn, zoekt u de bijbehorende instellingen. In Spring Cloud-toepassingen kunt u ze meestal vinden in de application.properties en application.yml bestanden in de toepassingsmap of in de Spring Cloud-serveropslagplaats.
Hier volgt een ActiveMQ-voorbeeld uit een bestand application.properties :
spring.activemq.brokerurl=broker:(tcp://localhost:61616,network:static:tcp://remotehost:61616)?persistent=false&useJmx=true
spring.activemq.user=admin
spring.activemq.password=tryandguess
Zie de Spring Boot Messaging-documentatie voor meer informatie over de ActiveMQ-configuratie.
Hier volgt een IBM MQ-voorbeeld uit een application.yaml-bestand :
ibm:
mq:
queueManager: qm1
channel: dev.ORDERS
connName: localhost(14)
user: admin
password: big$ecr3t
Zie de documentatie voor IBM MQ Spring-onderdelen voor meer informatie over de IBM MQ MQ-configuratie.
Externe caches identificeren
Identificeer eventuele externe caches die in gebruik zijn. Redis wordt vaak gebruikt via Spring Data Redis. Zie de Spring Data Redis-documentatie voor configuratie-informatie.
Bepaal of sessiegegevens worden opgeslagen in de cache via Spring Session door te zoeken naar de respectieve configuratie (in Java of XML).
Id-providers
Identificeer alle id-providers en alle Spring Cloud-toepassingen waarvoor verificatie en/of autorisatie is vereist. Zie de volgende bronnen voor informatie over hoe u id-providers kunt configureren:
- Zie de snelstart voor Spring Cloud Security voor OAuth2-configuratie.
- Zie de documentatie voor Auth0 Spring Security voor Auth0 Voor de configuratie van Spring Security.
- Zie de Auth0 PingFederate-instructies voor PingFederate voor de configuratie van PingFederate Spring Security.
Resources die zijn geconfigureerd via VMware Tanzu Application Service (TAS) (voorheen Pivotal Cloud Foundry)
Voor toepassingen die worden beheerd met TAS, worden externe resources, inclusief de eerder beschreven resources, vaak geconfigureerd via TAS-servicebindingen. Als u de configuratie voor dergelijke resources wilt onderzoeken, gebruikt u de TAS -CLI (Cloud Foundry) om de VCAP_SERVICES
variabele voor de toepassing weer te geven.
# Log into TAS, if needed (enter credentials when prompted)
cf login -a <API endpoint>
# Set the organization and space containing the application, if not already selected during login.
cf target org <organization name>
cf target space <space name>
# Display variables for the application
cf env <Application Name>
Bekijk de VCAP_SERVICES
variabele voor configuratie-instellingen van externe services die zijn gebonden aan de toepassing. Zie de DOCUMENTATIE van TAS (Cloud Foundry) voor meer informatie.
Alle andere externe resources
Het is niet haalbaar voor deze handleiding om elke mogelijke externe afhankelijkheid te documenteren. Na de migratie is het uw verantwoordelijkheid om te controleren of u aan elke externe afhankelijkheid van uw toepassing kunt voldoen.
Inventarisconfiguratiebronnen en -geheimen
Wachtwoorden en beveiligde tekenreeksen inventariseren
Controleer alle eigenschaps- en configuratiebestanden en alle omgevingsvariabelen in de productie-implementatie(s) op geheime tekenreeksen en wachtwoorden. In een Spring Cloud-toepassing kunt u dergelijke tekenreeksen meestal vinden in de application.properties of application.yml-bestand in afzonderlijke services of in de Spring Cloud-configuratieopslagplaats.
Certificaten inventariseren
Documenteer alle certificaten die worden gebruikt voor openbare SSL-eindpunten of communicatie met back-enddatabases en andere systemen. U kunt alle certificaten op de productieserver(s) weergeven door de volgende opdracht uit te voeren:
keytool -list -v -keystore <path to keystore>
Bepalen of Spring Cloud Vault wordt gebruikt
Als u Spring Cloud Vault gebruikt om geheimen op te slaan en te openen, identificeert u het backing-geheimarchief (bijvoorbeeld HashiCorp Vault of CredHub). Identificeer vervolgens alle geheimen die door de toepassingscode worden gebruikt.
De bron van de configuratieserver zoeken
Als uw toepassing gebruikmaakt van een Spring Cloud-configuratieserver, moet u bepalen waar de configuratie is opgeslagen. Meestal vindt u deze instelling in het bestand bootstrap.yml of bootstrap.properties , of soms in het bestand application.yml of application.properties . De instelling ziet eruit als in het volgende voorbeeld:
spring.cloud.config.server.git.uri: file://${user.home}/spring-cloud-config-repo
Hoewel Git het meest wordt gebruikt als het back-upgegevensarchief van Spring Cloud-configuratie, zoals eerder wordt weergegeven, kan een van de andere mogelijke back-ends in gebruik zijn. Raadpleeg de Spring Cloud-configuratiedocumentatie voor informatie over andere back-ends, zoals Relational Database (JDBC), SVN en het lokale bestandssysteem.
Notitie
Als uw configuratieservergegevens on-premises zijn opgeslagen, zoals GitHub Enterprise, moet u deze beschikbaar maken voor Azure Spring Apps via een Git-opslagplaats.
De implementatiearchitectuur controleren
Hardwarevereisten voor elke service documenteer
Documenteer de volgende informatie voor elk van uw Spring Cloud-services (niet inclusief de configuratieserver, het register of de gateway):
- Het aantal exemplaren dat wordt uitgevoerd.
- Het aantal CPU's dat aan elk exemplaar is toegewezen.
- De hoeveelheid RAM die aan elk exemplaar is toegewezen.
Geo-replicatie/distributie document
Bepaal of de Spring Cloud-toepassingen momenteel worden gedistribueerd tussen verschillende regio's of datacenters. Documenteer de uptimevereisten/SLA voor de toepassingen die u migreert.
Clients identificeren die het serviceregister omzeilen
Identificeer clienttoepassingen die een van de services aanroepen die moeten worden gemigreerd zonder het Spring Cloud-serviceregister te gebruiken. Na de migratie zijn dergelijke aanroepen niet meer mogelijk. Werk dergelijke clients bij voor het gebruik van Spring Cloud OpenFeign vóór de migratie.
Migratie
Beperkte configuraties verwijderen
Zoek en verwijder eventuele expliciete toewijzingen van de volgende beperkte instellingen in de services die u migreert. Deze eigenschappen worden automatisch geïnjecteerd in uw toepassingsomgeving voor toegang tot Config Server en Service Discovery. Als deze eigenschappen zich in uw Config Server-toepassingsbestanden bevinden, kunnen er conflicten optreden en onverwacht gedrag optreden. Zie de sectie Beperking van een beheerde Spring Cloud-configuratieserver configureren in Azure Spring Apps voor meer informatie
eureka.client.service-url.defaultZone
eureka.client.tls.keystore
eureka.instance.preferIpAddress
eureka.instance.instance-id
server.port
spring.cloud.config.tls.keystore
spring.config.import
spring.application.name
spring.jmx.enabled
management.endpoints.jmx.exposure.include
Een Azure Spring Apps-exemplaar en -apps maken
Richt een Azure Spring Apps-exemplaar in uw Azure-abonnement in. Richt vervolgens een app in voor elke service die u migreert. Neem niet het Spring Cloud-register en de configuratieservers op. Neem ook de Spring Cloud Gateway-service op. Zie quickstart: Uw eerste toepassing implementeren in Azure Spring Apps voor instructies.
De Spring Cloud-configuratieserver voorbereiden
Configureer de configuratieserver in uw Azure Spring Apps-exemplaar. Zie Een Spring Cloud Config Server-exemplaar voor uw service instellen voor meer informatie.
Notitie
Als uw huidige Spring Cloud-configuratieopslagplaats zich in het lokale bestandssysteem of on-premises bevindt, moet u eerst uw configuratiebestanden migreren of repliceren naar een opslagplaats op basis van een privécloud, zoals GitHub, Azure-opslagplaatsen of BitBucket.
Logboekregistratie van de console controleren en diagnostische instellingen configureren
Configureer uw logboekregistratie zodat alle uitvoer wordt doorgestuurd naar de console en niet naar bestanden.
Nadat een toepassing is geïmplementeerd in Azure Spring Apps, voegt u een diagnostische instelling toe om geregistreerde gebeurtenissen beschikbaar te maken voor gebruik, bijvoorbeeld via Azure Monitor Log Analytics.
LogStash/ELK-stack
Als u LogStash/ELK Stack gebruikt voor logboekaggregatie, configureert u de diagnostische instelling om de console-uitvoer te streamen naar een Azure Event Hub. Gebruik vervolgens de LogStash EventHub-invoegtoepassing om vastgelegde gebeurtenissen op te nemen in LogStash.
Splunk
Als u Splunk gebruikt voor logboekaggregatie, configureert u de diagnostische instelling om de console-uitvoer naar Azure Blob Storage te streamen. Gebruik vervolgens de invoegtoepassing Splunk voor Microsoft Cloud Services om vastgelegde gebeurtenissen op te nemen in Splunk.
Permanente opslag configureren
Als een deel van uw toepassing leest of schrijft naar het lokale bestandssysteem, moet u permanente opslag configureren om het lokale bestandssysteem te vervangen. Zie Ingebouwde permanente opslag gebruiken in Azure Spring Apps voor meer informatie.
U moet tijdelijke bestanden naar de /tmp
map schrijven. Voor onafhankelijkheid van het besturingssysteem kunt u deze map ophalen met behulp van System.getProperty("java.io.tmpdir")
. U kunt ook java.nio.Files::createTempFile
tijdelijke bestanden maken.
VMware Tanzu-onderdelen
In de Enterprise-laag wordt Application Configuration Service voor VMware Tanzu® geleverd ter ondersteuning van externe configuratie voor uw apps. De beheerde Spring Cloud-configuratieserver is niet beschikbaar in de Enterprise-laag en is alleen beschikbaar in de Standard- en Basic-laag van Azure Spring Apps.
Toepassingsconfiguratieservice voor Tanzu
Application Configuration Service voor Tanzu is een van de commerciële VMware Tanzu-onderdelen. Application Configuration Service voor Tanzu is kubernetes-systeemeigen en verschilt van Spring Cloud-configuratieserver. Toepassingsconfiguratieservice voor Tanzu maakt het beheer van Kubernetes-systeemeigen ConfigMap-resources mogelijk die zijn ingevuld op basis van eigenschappen die zijn gedefinieerd in een of meer Git-opslagplaatsen.
In de Enterprise-laag is er geen Spring Cloud-configuratieserver, maar u kunt Application Configuration Service voor Tanzu gebruiken om gecentraliseerde configuraties te beheren. Zie Application Configuration Service voor Tanzu gebruiken voor meer informatie
Als u Application Configuration Service voor Tanzu wilt gebruiken, voert u de volgende stappen uit voor elk van uw apps:
Voeg een expliciete app-binding toe om aan te geven dat uw app toepassingsconfiguratieservice voor Tanzu moet gebruiken.
Notitie
Wanneer u de bindings-/niet-gekoppelde status wijzigt, moet u de app opnieuw starten of opnieuw implementeren om de wijziging door te voeren.
Configuratiebestandspatronen instellen. Met configuratiebestandspatronen kunt u kiezen welke toepassing en welk profiel de app gebruikt. Zie de sectie Patroon van De Toepassingsconfiguratieservice voor Tanzu gebruiken voor meer informatie.
Een andere optie is het instellen van de patronen van het configuratiebestand op hetzelfde moment als de implementatie van uw app, zoals wordt weergegeven in het volgende voorbeeld:
az spring app deploy \ --name <app-name> \ --artifact-path <path-to-your-JAR-file> \ --config-file-pattern <config-file-pattern>
Toepassingsconfiguratieservice voor Tanzu wordt uitgevoerd op Kubernetes. Om een transparante ervaring voor lokale ontwikkeling mogelijk te maken, bieden we de volgende suggesties.
Als u al een Git-opslagplaats hebt om uw externe configuratie op te slaan, kunt u Spring Cloud Config Server lokaal instellen als de gecentraliseerde configuratie voor uw toepassing. Nadat de configuratieserver is gestart, kloont deze de Git-opslagplaats en levert deze de inhoud van de opslagplaats via de webcontroller. Zie Spring Cloud-configuratie in de Spring-documentatie voor meer informatie. De
spring-cloud-config-client
functie biedt de mogelijkheid voor uw toepassing om automatisch de externe configuratie van de configuratieserver op te halen.Als u geen Git-opslagplaats hebt of als u geen configuratieserver lokaal wilt instellen, kunt u het configuratiebestand rechtstreeks in uw project gebruiken. U wordt aangeraden een profiel te gebruiken om het configuratiebestand te isoleren, zodat het alleen in uw ontwikkelomgeving wordt gebruikt. Gebruik bijvoorbeeld
dev
als het profiel. Vervolgens kunt u een application-dev.yml bestand maken in de map src/main/resource om de configuratie op te slaan. Als u wilt dat uw app deze configuratie gebruikt, start u de app lokaal met--spring.profiles.active=dev
.
Tanzu-serviceregister
VMware Tanzu® Service Registry is een van de commerciële VMware Tanzu-onderdelen. Tanzu Service Registry biedt uw Enterprise-tier-apps met een implementatie van het Service Discovery-patroon, een van de belangrijkste tenets van een architectuur op basis van een microservice. Uw apps kunnen Tanzu Service Registry gebruiken om geregistreerde services dynamisch te detecteren en aan te roepen. Het gebruik van Tanzu Service Registry verdient de voorkeur aan het handmatig configureren van elke client van een service, wat moeilijk kan zijn of een vorm van toegangsconventie kan aannemen, die broos kan zijn in productie. Zie Tanzu Service Registry gebruiken voor meer informatie.
Spring Cloud Vault-geheimen migreren naar Azure KeyVault
U kunt geheimen rechtstreeks in toepassingen injecteren via Spring met behulp van de Azure KeyVault Spring Boot Starter. Zie Spring Boot Starter voor Azure Key Vault gebruiken voor meer informatie.
Notitie
Voor migratie moet u mogelijk de naam van bepaalde geheimen wijzigen. Werk uw toepassingscode dienovereenkomstig bij.
Alle certificaten migreren naar KeyVault
Azure Spring Apps biedt geen toegang tot het JRE-sleutelarchief, dus u moet certificaten migreren naar Azure KeyVault en de toepassingscode wijzigen voor toegang tot certificaten in KeyVault. Zie Aan de slag met Key Vault-certificaten en azure Key Vault Certificate-clientbibliotheek voor Java voor meer informatie.
APM-integraties (Application Performance Management) configureren
Azure Spring Apps biedt de volgende APM-integraties. Volg de koppelingen om de APM in te schakelen die u nodig hebt:
- Application Insights Java In-Process Agent
- Elastische APM Java-agent
- Dynatrace Java OneAgent
- AppDynamics Java Agent
- New Relic Java-agent
Als uw toepassing geen ondersteunde APM gebruikt, kunt u in plaats daarvan Application Insights gebruiken. Azure Spring Apps biedt uitgebreide integratie met Application Insights voor prestatiebeheer en realtime reactie op afwijkingen.
Clients en eindpunten voor metrische gegevens uitschakelen in uw toepassingen
Verwijder metrische gegevensclients die worden gebruikt of eindpunten voor metrische gegevens die beschikbaar zijn in uw toepassingen.
De services implementeren
Implementeer elk van de gemigreerde Spring-apps (met inbegrip van de Spring Cloud-configuratie- en registerservers), zoals beschreven in quickstart: Uw eerste toepassing implementeren in Azure Spring Apps.
Geheimen per service en externe instellingen configureren
U kunt elke configuratie-instellingen per service in elke service injecteren als omgevingsvariabelen. Gebruik de volgende stappen in Azure Portal:
- Navigeer naar het Azure Spring Apps-exemplaar en selecteer Apps.
- Selecteer de service die u wilt configureren.
- Selecteer Configuratie.
- Voer de variabelen in die u wilt configureren.
- Selecteer Opslaan.
De id-provider migreren en inschakelen
Als voor een van de Spring Cloud-toepassingen verificatie of autorisatie is vereist, moet u ervoor zorgen dat deze zijn geconfigureerd voor toegang tot de id-provider:
- Als de id-provider Microsoft Entra-id is, zijn er geen wijzigingen nodig.
- Als de id-provider een on-premises Active Directory-forest is, kunt u overwegen om een hybride identiteitsoplossing met Microsoft Entra-id te implementeren. Zie de documentatie voor hybride identiteiten voor hulp.
- Als de id-provider een andere on-premises oplossing is, zoals PingFederate, raadpleegt u de aangepaste installatie van Microsoft Entra Verbinding maken onderwerp voor het configureren van federatie met Microsoft Entra ID. U kunt ook Spring Security gebruiken om uw id-provider te gebruiken via OAuth2/OpenID Verbinding maken of SAML.
Clienttoepassingen bijwerken
Werk de configuratie van alle clienttoepassingen bij voor het gebruik van de gepubliceerde Azure Spring Apps-eindpunten voor gemigreerde toepassingen.
Postmigratie
Overweeg om een implementatiepijplijn toe te voegen voor automatische, consistente implementaties. Er zijn instructies beschikbaar voor Azure Pipelines, voor GitHub Actions en voor Jenkins.
Overweeg faseringsimplementaties te gebruiken om codewijzigingen in productie te testen voordat ze beschikbaar zijn voor sommige of al uw eindgebruikers. Zie Een faseringsomgeving instellen in Azure Spring Apps voor meer informatie.
Overweeg servicebindingen toe te voegen om uw toepassing te verbinden met ondersteunde Azure-databases. Met deze servicebindingen hoeft u geen verbindingsgegevens, inclusief referenties, aan uw Spring Cloud-toepassingen op te geven.
Overweeg het gebruik van Azure-toepassing Insights om de prestaties en interacties van uw toepassingen te bewaken. Zie Application Insights Java In-Process Agent in Azure Spring Apps voor meer informatie.
Overweeg om waarschuwingsregels en actiegroepen van Azure Monitor toe te voegen om snel aberrante voorwaarden te detecteren en op te lossen. Zie Zelfstudie: Spring Cloud-resources bewaken met behulp van waarschuwingen en actiegroepen voor meer informatie.
Overweeg om de Azure Spring Apps-implementatie in een andere regio te repliceren voor lagere latentie en hogere betrouwbaarheid en fouttolerantie. Gebruik Azure Traffic Manager om de taakverdeling tussen implementaties te verdelen of Azure Front Door te gebruiken om SSL-offloading en Web Application Firewall toe te voegen met DDoS-beveiliging.
Als geo-replicatie niet nodig is, kunt u een Azure-toepassing-gateway toevoegen om SSL-offloading en Web Application Firewall toe te voegen met DDoS-beveiliging.
Als uw toepassingen verouderde Spring Cloud Netflix-onderdelen gebruiken, kunt u overwegen deze te vervangen door de huidige alternatieven:
Verouderd Huidig Spring Cloud Eureka Spring Cloud-serviceregister Spring Cloud Netflix Zuul Spring Cloud Gateway Spring Cloud Netflix Archaius Spring Cloud-configuratieserver Spring Cloud Netflix-lint Spring Cloud Load Balancer (load balancer aan clientzijde) Spring Cloud Hystrix Spring Cloud Circuit Breaker + Resilience4J Spring Cloud Netflix Turbine Micrometer + Prometheus
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor