Migrera Application Configuration Service till hanterad Spring Cloud Config Server
Kommentar
Basic-, Standard- och Enterprise-planerna kommer att vara inaktuella från och med mitten av mars 2025, med en 3-årig pensionsperiod. Vi rekommenderar att du övergår till Azure Container Apps. Mer information finns i meddelandet om azure Spring Apps-pensionering.
Standardförbrukningen och den dedikerade planen kommer att vara inaktuell från och med den 30 september 2024, med en fullständig avstängning efter sex månader. Vi rekommenderar att du övergår till Azure Container Apps. Mer information finns i Migrera Azure Spring Apps Standard-förbrukning och dedikerad plan till Azure Container Apps.
Den här artikeln gäller för: ❎ Basic/Standard ✅ Enterprise
Den här artikeln beskriver hur du migrerar från Application Configuration Service (ACS) till Spring Cloud Config Server när du använder Azure Spring Apps Enterprise-planen med Java-program.
Spring Cloud Config Server tillhandahåller en centraliserad konfigurationstjänst som program kan använda för att hämta konfigurationsegenskaper från externa källor, till exempel Git-lagringsplatser.
Etablera Spring Cloud Config Server
Om du har en Azure Spring Apps Enterprise-planinstans med Application Configuration Service aktiverad är det första steget i att migrera från ACS till Spring Cloud Config Server att etablera konfigurationsservern i din Azure Spring Apps-miljö. Du kan etablera den med hjälp av Azure Portal eller Azure CLI.
Använd följande steg för att etablera Spring Cloud Config Server:
- Gå till din Azure Spring Apps-företagsinstans i Azure Portal.
- På menyn väljer du Spring Cloud Config Server.
- Välj Hantera för att se om Spring Cloud Config Server är aktiverat. Om den inte är det aktiverar du den och väljer sedan Använd för att spara.
- När uppdateringen är klar kan du se att konfigurationsserverns etableringstillstånd har slutförts på fliken Översikt .
Konfigurera Spring Cloud Config Server
När du har etablerat Spring Cloud Config Server är nästa steg att konfigurera den för ditt program för att säkerställa en smidig migrering.
Använd följande steg för att konfigurera Spring Cloud Config Server i Azure Portal:
I din Azure Spring Apps-instans går du till Spring Cloud Config Server.
På fliken Inställningar mappar du konfigurationerna för alla lagringsplatser för ACS till Spring Cloud Config Server.
Om du bara har en lagringsplats i ACS mappar du den till standardlagringsplatsen för Spring Cloud Config Server utan namn och mönster. Om du har flera lagringsplatser i ACS väljer du en lagringsplats som standardlagringsplats för Spring Cloud Config Server och använder andra som ytterligare lagringsplatser. Migrera egenskaper som
uri
,label
,search path
,name
ochauthentication
från ACS till Spring Cloud Config Server.När du har mappade konfigurationer väljer du Verifiera för att verifiera konfigurationen.
När valideringen har slutförts väljer du Använd för att slutföra konfigurationen av Spring Cloud Config Server.
Om du vill tillämpa ändringarna går du till fliken Appbindning , väljer Bind app och väljer sedan alla appar som ska använda Spring Cloud Config Server.
För att migrera egenskapen pattern
för ACS är det viktigt att se till att appens namn på Azure Spring Apps matchar konfigurationsfilens namn på Git-lagringsplatsen.
- Om appnamnet för Azure Spring Apps matchar filnamnet för konfigurationsfilen tillämpar Spring Cloud Config Server automatiskt konfigurationsfilen med matchande namn på appen, utan att det krävs någon extra konfiguration.
- Om namnen inte matchar måste du skapa en ny app med namnet som konfigurationsfilnamn.
Fler konfigurationer finns i Dokumentet Om Spring Cloud Config Server.
Uppdatera programkonfigurationen
På grund av skillnaderna i implementeringsmekanismerna mellan ACS och Config Server krävs vissa ändringar i appkonfigurationen för att anpassas till hur konfigurationer hämtas.
När du har etablerat och konfigurerat Spring Cloud Config Server måste du justera konfigurationen med hjälp av följande steg:
Uppdatera Spring Boot-beroendena genom att lägga till följande nödvändiga Spring Cloud-konfigurationsberoenden i din pom.xml-fil för Maven eller build.gradle-filen för Gradle.
Konfigurera profilen.
I ACS anger du profilen som mönster i en Azure Spring Apps-distribution, medan du i Spring Cloud Config Server konfigurerar profilen i ett programs källkod.
Se till att programmet använder rätt profiler –
dev
,prod
och så vidare – så att Spring Cloud Config Server kan hantera miljöspecifika konfigurationer.Uppdatera filen bootstrap.yml eller application.yml i ditt program med rätt konfigurationsegenskaper så att den pekar på Spring Cloud Config Server, som du ser i följande exempel:
spring: cloud: config: profile: dev
Kontrollera att appnamnet för Azure Spring Apps matchar konfigurationsfilens namn på git-lagringsplatsen. Undvik också att
spring.application.name
konfigurera i programmets kod.
Distribuera om programmet
När du har testat programmet lokalt kan du distribuera om det i Azure Spring Apps för att använda Spring Cloud Config Server med hjälp av följande Azure CLI-kommando:
az spring app deploy \
--name <app-name> \
--artifact-path <path-to-your-app> \
--config-file-patterns '""'
Med --config-file-patterns '""'
parametern rensar den referensen för Application Configuration Service från ditt program. Programmet använder konfigurationen via Spring Cloud Config Server i stället för Application Configuration Service.
Inaktivera programkonfigurationstjänsten
När alla program har migrerats till Spring Cloud Config Server kan du avbinda dessa program till Application Configuration Service och inaktivera ACS.
- I din Azure Spring Apps-instans går du till Application Configuration Service
- Öppna fliken Appbindning och välj sedan varje bundet program som ska avbindas.
- När alla program är obundna väljer du Hantera för att inaktivera Programkonfigurationstjänsten.
Genom att noggrant följa dessa steg kan du säkerställa en smidig migrering och använda fördelarna med Spring Cloud Config Server i Azure Spring Apps.
Kända begränsningar
Migrering av ACS till Spring Cloud Config Server gäller endast för Java-program eftersom ACS hanterar konfigurationen med kubernetes-native ConfigMap
. Den här metoden möjliggör dynamiska konfigurationsuppdateringar i Kubernetes-miljöer, vilket gör den mångsidig för olika program med flera programmeringsspråk. Spring Cloud Config Server är främst utformad för Java-program med spring framework-funktioner, så den stöder endast konfigurationshantering för Java.