Aggiornare le versioni dello stack di linguaggio in Funzioni di Azure
Il supporto per un determinato stack di linguaggio in Funzioni di Azure è limitato a versioni specifiche. Man mano che diventano disponibili nuove versioni, si potrebbe voler aggiornare le proprie app per sfruttarne le funzionalità. Il supporto in Funzioni può anche terminare per le versioni precedenti, in genere in linea con le tempistiche di fine supporto della community. Per informazioni dettagliate, vedere i criteri di supporto del runtime di linguaggio. Per assicurarsi che le app continuino a ricevere supporto, è necessario seguire le istruzioni descritte in questo articolo per effettuare l’aggiornamento alle versioni disponibili più recenti.
Il modo in cui si aggiorna l'app per le funzioni dipende da:
- Il linguaggio usato per creare le funzioni; assicurarsi di scegliere il proprio linguaggio di programmazione nella parte superiore dell'articolo.
- Il sistema operativo in cui viene eseguita l'app in Azure: Windows o Linux.
- Il piano di hosting.
Nota
Questo articolo illustra come aggiornare la versione .NET di un'app usando il modello ruolo di lavoro isolato. Le app eseguite in versioni precedenti di .NET con il modello In-Process possono eseguire l'aggiornamento a .NET 8 di destinazione oppure possono eseguire la migrazione dal modello In-Process al modello ruolo di lavoro isolato.
Preparazione all'aggiornamento
Prima di aggiornare la configurazione dello stack per l'app per le funzioni in Azure, è necessario completare queste attività:
1. Verificare le funzioni in locale
Assicurarsi di testare e verificare il codice della funzione in locale nella nuova versione di destinazione.
Seguire questa procedura per aggiornare il progetto nel computer locale:
Assicurarsi di aver installato la versione di destinazione dell’SDK .NET.
Se si ha come destinazione una versione di anteprima, consultare il materiale sussidiario sulle funzioni per le versioni di .NET di anteprima per assicurarsi che la versione sia supportata. Potrebbero essere necessari passaggi aggiuntivi per le anteprime .NET.
Aggiornare i riferimenti alle versioni più recenti di: Microsoft.Azure.Functions.Worker e Microsoft.Azure.Functions.Worker.Sdk.
Aggiornare il framework di destinazione del progetto alla nuova versione. Per i progetti C#, è necessario aggiornare l'elemento
<TargetFramework>
del file.csproj
. Per informazioni specifiche relative alla versione scelta, vedere Framework di destinazione.La modifica del framework di destinazione del progetto potrebbe richiedere anche modifiche a parti della toolchain, esternamente al codice del progetto. Ad esempio, in VS Code potrebbe essere necessario aggiornare l'impostazione dell'estensione
azureFunctions.deploySubpath
tramite le impostazioni utente o il file.vscode/settings.json
del progetto. Verificare la presenza di eventuali dipendenze dalla versione del framework che possono esistere al di fuori del codice del progetto, come parte dei passaggi di compilazione o di una pipeline CI/CD.Apportare eventuali aggiornamenti al codice del progetto, richiesti dalla nuova versione di .NET. Controllare le note sulla versione della versione per ottenere informazioni specifiche. È inoltre possibile usare .NET Upgrade Assistant per aggiornare il codice in risposta alle modifiche apportate alle versioni principali.
Dopo aver apportato queste modifiche, ricompilare il progetto e testarlo per confermare l'esecuzione dell'app come previsto.
2. Passare al runtime Funzioni più recente
Assicurarsi che l'app per le funzioni sia in esecuzione sulla versione più recente del runtime Funzioni (versione 4.x). È possibile determinare la versione di runtime nel portale di Azure o usando l'interfaccia della riga di comando di Azure.
Seguire questa procedura per determinare la versione del runtime Funzioni:
Nel portale di Azure individuare l'app per le funzioni e selezionare Configurazione sul lato sinistro in Impostazioni.
Selezionare la scheda Impostazioni runtime Funzioni e controllare il valore della versione del runtime per verificare se l'app per le funzioni è in esecuzione sulla versione 4.x del runtime Funzioni (
~4
).
Se prima è necessario aggiornare l'app per le funzioni alla versione 4.x, vedere Eseguire la migrazione delle app da Funzioni di Azure versione 1.x alla versione 4.x o Eseguire la migrazione delle app da Funzioni di Azure versione 3.x alla versione 4.x. È consigliabile seguire le istruzioni contenute in questi articoli anziché modificare semplicemente l'impostazione FUNCTIONS_EXTENSION_VERSION
.
Pubblicare gli aggiornamenti delle app
Se l'app è stata aggiornata per la corretta esecuzione sulla nuova versione, pubblicare gli aggiornamenti dell'app prima di aggiornare la configurazione dello stack dell'app per le funzioni.
Suggerimento
Per semplificare il processo di aggiornamento, ridurre al minimo i tempi di inattività delle funzioni e offrire un potenziale per il rollback, è consigliabile pubblicare l'app aggiornata in uno slot di staging. Per altre informazioni, vedere slot di distribuzione di Funzioni di Azure.
Quando si pubblica l'app aggiornata in uno slot di staging, assicurarsi di seguire le istruzioni di aggiornamento specifiche dello slot, riportate in questo articolo. Successivamente si scambia lo slot di staging aggiornato con l’ambiente di produzione.
Aggiornare la configurazione dello stack
Il modo in cui si aggiorna la configurazione dello stack dipende dal fatto che sia in esecuzione su Windows o su Linux in Azure.
Quando si usa uno slot di staging, assicurarsi di indirizzare gli aggiornamenti allo slot corretto.
Per aggiornare la versione Java, seguire questa procedura:
Nel portale di Azure individuare l'app per le funzioni e selezionare Configurazione sul lato sinistro. Quando si usa uno slot di staging, assicurarsi di selezionare prima di tutto lo slot specifico.
Nella scheda Impostazioni generali aggiornare la versione Java alla versione desiderata.
Selezionare Salva e quando viene visualizzata una notifica relativa a un riavvio selezionare Continua.
Per aggiornare la versione .NET, seguire questa procedura:
Nel portale di Azure individuare l'app per le funzioni e selezionare Configurazione sul lato sinistro. Quando si usa uno slot di staging, assicurarsi di selezionare prima di tutto lo slot specifico.
Nella scheda Impostazioni generali aggiornare la versione .NET alla versione desiderata.
Selezionare Salva e quando viene visualizzata una notifica relativa a un riavvio selezionare Continua.
Per aggiornare la versione Node.js, seguire questa procedura:
Nel portale di Azure individuare l'app per le funzioni e selezionare Configurazione sul lato sinistro. Quando si usa uno slot di staging, assicurarsi di selezionare prima di tutto lo slot specifico.
Nella scheda Impostazioni generali aggiornare la versione Node.js alla versione desiderata.
Selezionare Salva e quando viene visualizzata una notifica relativa a un riavvio selezionare Continua. Questa modifica aggiorna l'impostazione dell'applicazione
WEBSITE_NODE_DEFAULT_VERSION
.
Per aggiornare la versione PowerShell, seguire questa procedura:
Nel portale di Azure individuare l'app per le funzioni e selezionare Configurazione sul lato sinistro. Quando si usa uno slot di staging, assicurarsi di selezionare prima di tutto lo slot specifico.
Nella scheda Impostazioni generali aggiornare la versione .NET alla versione desiderata.
Selezionare Salva e quando viene visualizzata una notifica relativa a un riavvio selezionare Continua.
Le app Python non sono supportate su Windows. Selezionare invece la scheda Linux.
L'app per le funzioni viene riavviata dopo l'aggiornamento della versione.
Scambio degli slot
Se si sta eseguendo la distribuzione del progetto di codice e si stanno aggiornando le impostazioni in uno slot di staging, è infine necessario scambiare lo slot di staging con l’ambiente di produzione. Per altre informazioni, vedere Scambiare gli slot.