Gestione delle versioni della funzione Lambda - AWS Lambda

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Gestione delle versioni della funzione Lambda

Puoi utilizzare le versioni per gestire la distribuzione delle funzioni. Ad esempio, puoi pubblicare una nuova versione di una funzione per il test beta senza influire sugli utenti della versione di produzione stabile. Lambda crea una nuova versione della funzione ogni volta che pubblichi la funzione. La nuova versione è una copia della versione non pubblicata della funzione. La versione non pubblicata è denominata. $LATEST

Nota

Per creare una nuova versione della funzione, è necessario prima apportare modifiche alla versione non pubblicata ()$LATEST. Queste modifiche possono includere l'aggiornamento del codice o la modifica delle impostazioni di configurazione. Se $LATEST è identica a una versione pubblicata in precedenza, non potrai creare una nuova versione finché non distribuirai le modifiche a. $LATEST

Dopo aver pubblicato la versione di una funzione, il codice, il runtime, l'architettura, la memoria, i livelli e la maggior parte delle altre impostazioni di configurazione sono immutabili. Ciò significa che non puoi modificare queste impostazioni senza pubblicare una nuova versione da. $LATEST È possibile configurare i seguenti elementi per una versione pubblicata della funzione:

Nota

Quando si utilizzano i controlli di gestione del runtime con la modalità Auto, la versione di runtime utilizzata dalla versione della funzione viene aggiornata automaticamente. Quando si utilizza la modalità Function update (Aggiornamento delle funzioni) o Manual (Manuale), la versione di runtime non viene aggiornata. Per ulteriori informazioni, consulta Informazioni su come Lambda gestisce gli aggiornamenti delle versioni di runtime.

Creazione di versioni delle funzioni

Puoi modificare il codice della funzione e le impostazioni solo sulla versione non pubblicata di una funzione. Quando pubblichi una versione, il codice e la maggior parte delle impostazioni sono bloccati da Lambda per garantire un'esperienza coerente agli utenti di quella versione.

È possibile creare una versione della funzione utilizzando la console Lambda.

Per creare una nuova versione della funzione
  1. Aprire la pagina Funzioni della console Lambda.

  2. Scegliere una funzione e quindi scegliere Versions (Versioni).

  3. Nella pagina di configurazione delle versioni, scegliere Publish new version (Pubblica nuova versione).

  4. (Facoltativo) Immettere una descrizione della versione.

  5. Seleziona Publish (Pubblica).

In alternativa, è possibile pubblicare una versione di una funzione utilizzando l'PublishVersionAPIoperazione.

Il AWS CLI comando seguente pubblica una nuova versione di una funzione. La risposta restituisce informazioni di configurazione sulla nuova versione, incluso il numero di versione e la funzione ARN con il suffisso di versione.

aws lambda publish-version --function-name my-function

Verrà visualizzato l'output seguente:

{
  "FunctionName": "my-function",
  "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:1",
  "Version": "1",
  "Role": "arn:aws:iam::123456789012:role/lambda-role",
  "Handler": "function.handler",
  "Runtime": "nodejs20.x",
  ...
}
Nota

Lambda assegna numeri di sequenza crescenti in modo monotono per il controllo delle versioni. Lambda non riutilizza mai i numeri di versione, anche dopo aver eliminato e ricreato una funzione.

Utilizzo delle versioni

Puoi fare riferimento alla tua funzione Lambda utilizzando una funzione qualificata ARN o non qualificata. ARN

  • Qualificata ARN: la funzione ARN con un suffisso di versione. L'esempio seguente fa riferimento alla versione 42 della funzione helloworld.

    arn:aws:lambda:aws-region:acct-id:function:helloworld:42
  • Non qualificata ARN: la funzione ARN senza un suffisso di versione.

    arn:aws:lambda:aws-region:acct-id:function:helloworld

È possibile utilizzare un valore qualificato o non qualificato ARN in tutte le operazioni pertinenti. API Tuttavia, non è possibile utilizzare un non qualificato ARN per creare un alias.

Se decidi di non pubblicare le versioni della funzione, puoi richiamare la funzione utilizzando la funzione qualificata o non qualificata ARN nella mappatura delle sorgenti degli eventi. Quando si richiama una funzione utilizzando un valore non qualificato, ARN Lambda invoca implicitamente. $LATEST

Lambda pubblica una nuova versione della funzione solo se il codice non è mai stato pubblicato o se il codice è cambiato rispetto all'ultima versione pubblicata. Se non ci sono modifiche, la versione della funzione rimane la versione pubblicata più di recente.

Il qualificato ARN per ogni versione della funzione Lambda è unico. Dopo aver pubblicato una versione, non è possibile modificare il codice ARN o il codice della funzione.

Concessione di autorizzazioni

È possibile utilizzare una policy basata sulle risorse o una policy basata sull'identità per concedere l'accesso alla funzione. L'ambito dell'autorizzazione dipende dal fatto che la policy venga applicata a una funzione o a una versione di una funzione. Per ulteriori informazioni sui nomi delle risorse delle funzioni nelle policy, consulta Ottimizzazione delle sezioni Risorse e Condizioni delle politiche.

È possibile semplificare la gestione delle fonti di eventi e delle politiche AWS Identity and Access Management (IAM) utilizzando gli alias delle funzioni. Per ulteriori informazioni, consulta Creare un alias per una funzione Lambda.