Eseguire la migrazione di Spring Cloud Config Server da Azure Spring Apps ad App azure Container
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 del server di configurazione Spring Cloud al server di configurazione per Spring in App Azure Container. App Azure Container gestisce il server di configurazione per Spring, che ha funzioni simili a Spring Cloud Config Server in Azure Spring Apps.
Prerequisiti
- Un'istanza di Azure Spring Apps con l'opzione Configura server abilitata.
- Un ambiente app contenitore di Azure per il server di configurazione e un'istanza di App contenitore di Azure.
Effettuare il provisioning del server di configurazione
I passaggi seguenti illustrano come effettuare il provisioning di un server di configurazione per Spring nelle app Azure Container:
Passare all'ambiente di App Azure Container nel portale di Azure.
Nel menu selezionare Servizi>servizi.
Aprire l'elenco a discesa Configura e quindi selezionare Componente Java.
Nel pannello Configura componente Java immettere i valori seguenti:
Proprietà valore Tipo di componente di Java Selezionare Config Servere per Spring. Nome del componente Java Immettere configserver. Nella sezione Repository Git selezionare Aggiungi e quindi eseguire la migrazione dei valori dal servizio di configurazione dell'applicazione a qui, come illustrato nella tabella seguente. Scegliere un repository come repository predefinito di Config Server per Spring.
Proprietà Valore Type Selezionare DEFAULT. URI Immettere il valore dell'URI del repository. Nome del ramo Immettere il valore dell'etichetta del repository. Percorsi di ricerca Immettere il valore del percorso di ricerca del repository. Autenticazione Selezionare il tipo di autenticazione del repository e immettere le informazioni corrispondenti. Lasciare i campi rimanenti con i valori predefiniti e quindi selezionare Aggiungi.
Se sono presenti più repository, selezionare Aggiungi per eseguire la migrazione di altri repository. Per Tipo selezionare Altro e quindi eseguire la migrazione di altre proprietà, come illustrato nel passaggio precedente e nella tabella seguente:
Proprietà Valore Type Selezionare DEFAULT. Modello Immettere il valore Patterns per il repository nel {application}
formato o{application}/{profile}
.Nella sezione Binding aprire l'elenco a discesa per selezionare le app da associare al server di configurazione per Spring.
Selezionare Avanti.
Per configurare il server di configurazione, nella scheda Verifica selezionare Configura e quindi seguire le istruzioni nella sezione di configurazione.
Dopo aver completato la creazione, è possibile vedere che lo stato di provisioning del server di configurazione per Spring è Riuscito.
Allocazione delle risorse
L'allocazione delle risorse del contenitore per il server di configurazione gestito in App Contenitore di Azure è fissa ai valori seguenti:
- CPU: 0.5 vCPU
- Memoria: 1 Gi
Per configurare il numero di istanze del server di configurazione per Spring, è necessario aggiornare i --min-replicas
parametri e --max-replicas
con lo stesso valore. Questa configurazione garantisce che il numero di istanze rimanga fisso. Attualmente, il sistema non supporta le configurazioni di scalabilità automatica per il ridimensionamento dinamico.
Configurare il server di configurazione
Eseguire il mapping del repository Git predefinito e dei repository aggiuntivi configurati nel server di configurazione Spring Cloud in Azure Spring Apps ai repository predefiniti e ad altri repository nel server di configurazione per Spring distribuito in App Azure Container. La tabella seguente illustra le relazioni di mapping per le proprietà:
Nome della proprietà in Azure Spring Apps | CONFIGURATION_KEY |
CONFIGURATION_VALUE |
---|---|---|
uri |
spring.cloud.config.server.git.uri spring.cloud.config.server.git.repos.{repoName}.uri |
Oggetto uri del repository remoto. |
search path |
spring.cloud.config.server.git.search-paths spring.cloud.config.server.git.repos.{repoName}.search-paths |
Percorsi di ricerca da usare all'interno della copia di lavoro locale. Per impostazione predefinita, cerca solo la radice. |
label |
spring.cloud.config.server.git.default-label spring.cloud.config.server.git.repos.{repoName}.default-label |
Etichetta usata per Git. |
name in repository aggiuntivi |
{repoName} nelle configurazioni seguenti. |
|
Patterns in repository aggiuntivi |
spring.cloud.config.server.git.repos.{repoName}.pattern |
|
username |
spring.cloud.config.server.git.username spring.cloud.config.server.git.repos.{repoName}.username |
Immettere per username l'autenticazione con repository remoto se il tipo di autenticazione è HTTP Basic . |
password |
spring.cloud.config.server.git.password spring.cloud.config.server.git.repos.{repoName}.password |
Immettere per password l'autenticazione con repository remoto se il tipo di autenticazione è HTTP Basic . |
private key |
spring.cloud.config.server.git.private-key spring.cloud.config.server.git.repos.{repoName}.private-key |
Chiave privata SSH valida se il tipo di autenticazione è SSH . |
host key |
spring.cloud.config.server.git.host-key spring.cloud.config.server.git.repos.{repoName}.host-key |
Chiave host SSH valida se il tipo di autenticazione è SSH . Deve essere impostato anche se host-key-algorithm è impostato. |
host key algorithm |
spring.cloud.config.server.git.host-key-algorithm spring.cloud.config.server.git.repos.{repoName}.host-key-algorithm |
Uno di ssh-dss , ssh-rsa ssh-ed25519 , ecdsa-sha2-nistp256 , ecdsa-sha2-nistp384 , o ecdsa-sha2-nistp521 se il tipo di autenticazione è SSH . Deve essere impostato se è impostata anche la chiave host. |
Per altre proprietà del server di configurazione, vedere la sezione Opzioni di configurazione di Connetti a un server di configurazione gestito per Spring in App Contenitore di Azure.
Distribuire l'applicazione in App Azure Container
Dopo aver testato l'applicazione in locale, è possibile distribuire la nuova immagine nell'applicazione App Azure Container.
Per distribuire, seguire questa procedura:
- Passare all'applicazione App Azure Container nel portale di Azure.
- Nel menu selezionare Contenitori di applicazioni>.
- Selezionare Modifica e distribuzione per aprire la pagina Crea e distribuisci nuova revisione .
- Nella sezione Immagine contenitore selezionare l'immagine e quindi selezionare Modifica.
- Nella sezione Modifica un contenitore scegliere la nuova immagine dell'applicazione nella scheda Proprietà.
- Nella scheda Variabili di ambiente specificare spring.application.name per Nome. Quindi, per Origine scegliere Voce manuale e specificare il nome del file di configurazione in cui l'applicazione utilizza la configurazione.
- Selezionare Salva per distribuire la nuova revisione.
Risoluzione dei problemi
È possibile visualizzare i log per il server di configurazione gestito per Spring in App contenitore di Azure usando Log Analytics. Eseguire la procedura descritta di seguito:
Passare all'ambiente di App Azure Container nel portale di Azure.
Selezionare il menu Log di monitoraggio>.
Per visualizzare i log, immettere una query nell'editor di query per la
ContainerAppSystemLogs_CL
tabella, come illustrato nell'esempio seguente:ContainerAppSystemLogs_CL | where ComponentType_s == "SpringCloudConfig" | project Time=TimeGenerated, ComponentName=ComponentName_s, Message=Log_s | take 100
Per altre informazioni sull'esecuzione di query sui log, vedere Observability of managed Java components in Azure Container Apps .For more information about querying logs, see Observability of managed Java components in Azure Container Apps.