Eseguire la migrazione del servizio di configurazione dell'applicazione al server di configurazione Spring Cloud gestito
Nota
I piani Basic, Standard ed Enterprise saranno deprecati a partire dalla metà di marzo 2025, con un periodo di ritiro di 3 anni. È consigliabile eseguire la transizione ad App Azure Container. Per altre informazioni, vedere l'annuncio di ritiro di Azure Spring Apps.
Il piano Standard a consumo e dedicato sarà deprecato a partire dal 30 settembre 2024, con un arresto completo dopo sei mesi. È consigliabile eseguire la transizione ad App Azure Container. Per altre informazioni, vedere Eseguire la migrazione del consumo di Azure Spring Apps Standard e del piano dedicato alle app Azure Container.
Questo articolo si applica a: ❎ Basic/Standard ✅ Enterprise
Questo articolo descrive come eseguire la migrazione da Application Configuration Service (ACS) a Spring Cloud Config Server quando si usa il piano Enterprise di Azure Spring Apps con applicazioni Java.
Spring Cloud Config Server offre un servizio di configurazione centralizzato che le applicazioni possono usare per recuperare le proprietà di configurazione da origini esterne, ad esempio i repository Git.
Effettuare il provisioning di Spring Cloud Config Server
Se si dispone di un'istanza del piano Enterprise di Azure Spring Apps con il servizio di configurazione dell'applicazione abilitato, il primo passaggio della migrazione da ACS a Spring Cloud Config Server consiste nel effettuare il provisioning del server di configurazione nell'ambiente Azure Spring Apps. È possibile effettuarne il provisioning usando il portale di Azure o l'interfaccia della riga di comando di Azure.
Per effettuare il provisioning di Spring Cloud Config Server, seguire questa procedura:
- Passare all'istanza aziendale di Azure Spring Apps nel portale di Azure.
- Nel menu selezionare Spring Cloud Config Server.
- Selezionare Gestisci per verificare se Spring Cloud Config Server è abilitato. In caso contrario, abilitarlo e quindi selezionare Applica per salvare.
- Dopo l'aggiornamento, è possibile vedere Provisioning State of config server is Succeeded (Stato provisioning del server di configurazione completato) nella scheda Panoramica .
Configurare Spring Cloud Config Server
Dopo aver effettuato il provisioning del server di configurazione Spring Cloud, il passaggio successivo consiste nel configurarlo per l'applicazione per garantire una migrazione senza problemi.
Usare la procedura seguente per configurare Spring Cloud Config Server nel portale di Azure:
Nell'istanza di Azure Spring Apps passare a Spring Cloud Config Server.
Nella scheda Impostazioni eseguire il mapping delle configurazioni di tutti i repository di ACS a Spring Cloud Config Server.
Se si dispone di un solo repository in ACS, eseguirne il mapping al repository predefinito per Spring Cloud Config Server senza nome e modelli. Se sono presenti più repository in ACS, scegliere un repository come repository predefinito per Spring Cloud Config Server e usare altri come repository aggiuntivi. Eseguire la migrazione di proprietà, tra cui
uri
,label
search path
,name
, eauthentication
da ACS a Spring Cloud Config Server.Dopo le configurazioni di mapping, selezionare Convalida per verificare la configurazione.
Dopo la convalida, selezionare Applica per completare la configurazione del server di configurazione Spring Cloud.
Per applicare le modifiche, nella scheda Associazione app selezionare Associa app e quindi selezionare tutte le app da usare Spring Cloud Config Server.
Per eseguire la migrazione della proprietà pattern
di ACS, è importante assicurarsi che il nome dell'app di Azure Spring Apps corrisponda al nome del file di configurazione nel repository Git.
- Se il nome dell'app di Azure Spring Apps corrisponde al nome file di configurazione, Spring Cloud Config Server applica automaticamente il file di configurazione con il nome corrispondente all'app, senza richiedere una configurazione aggiuntiva.
- Se i nomi non corrispondono, è necessario creare una nuova app con il nome come nome del file di configurazione.
Per altre configurazioni, vedere il documento Spring Cloud Config Server.
Aggiornare la configurazione dell'applicazione
A causa delle differenze nei meccanismi di implementazione tra ACS e Config Server, alcune modifiche di configurazione dell'app sono necessarie per adattarsi alla modalità di recupero delle configurazioni.
Dopo aver effettuato il provisioning e configurato Spring Cloud Config Server, è necessario modificare la configurazione attenendosi alla procedura seguente:
Aggiornare le dipendenze spring boot aggiungendo le dipendenze necessarie di Spring Cloud Config al file di pom.xml per Maven o build.gradle per Gradle .
Configurare il profilo.
In ACS si specifica il profilo come modelli in una distribuzione di Azure Spring Apps, mentre in Spring Cloud Config Server si configura il profilo nel codice sorgente di un'applicazione.
Assicurarsi che l'applicazione usi i profili corretti,
dev
,prod
e così via, in modo che Spring Cloud Config Server possa gestire configurazioni specifiche dell'ambiente.Aggiornare il file bootstrap.yml o application.yml nell'applicazione con le proprietà di configurazione corrette in modo che punti al server di configurazione Spring Cloud, come illustrato nell'esempio seguente:
spring: cloud: config: profile: dev
Assicurarsi che il nome dell'app di Azure Spring Apps corrisponda al nome del file di configurazione nel repository Git. Evitare inoltre di configurare
spring.application.name
nel codice dell'applicazione.
Ridistribuire l'applicazione
Dopo aver testato l'applicazione in locale, è possibile ridistribuirla in Azure Spring Apps per usare Spring Cloud Config Server usando il comando dell'interfaccia della riga di comando di Azure seguente:
az spring app deploy \
--name <app-name> \
--artifact-path <path-to-your-app> \
--config-file-patterns '""'
Con --config-file-patterns '""'
il parametro , pulisce il riferimento del servizio di configurazione dell'applicazione dall'applicazione. L'applicazione usa la configurazione tramite Spring Cloud Config Server anziché il servizio di configurazione dell'applicazione.
Disabilitare il servizio di configurazione dell'applicazione
Al termine della migrazione a Spring Cloud Config Server, è possibile annullare l'associazione di tali applicazioni al servizio di configurazione dell'applicazione e disabilitare ACS.
- Nell'istanza di Azure Spring Apps passare a Servizio di configurazione dell'applicazione
- Aprire la scheda Associazione app, quindi selezionare ogni applicazione associata da scollegare.
- Dopo che tutte le applicazioni non sono associate, selezionare Gestisci per disabilitare il servizio di configurazione dell'applicazione.
Seguendo attentamente questi passaggi, è possibile garantire una migrazione senza problemi e usare i vantaggi di Spring Cloud Config Server all'interno di Azure Spring Apps.
Limitazione nota
La migrazione di ACS al server di configurazione Spring Cloud si applica solo per le applicazioni Java perché ACS gestisce la configurazione tramite kubernetes nativo ConfigMap
. Questo metodo abilita gli aggiornamenti della configurazione dinamica negli ambienti Kubernetes, rendendolo versatile per applicazioni diverse con più linguaggi di programmazione. Spring Cloud Config Server è progettato principalmente per le applicazioni Java, usando le funzionalità di Spring Framework, quindi supporta solo la gestione della configurazione per Java.