View a markdown version of this page

Crea e impacchetta una funzione Lambda - AWS IoT Greengrass

Avviso di fine del supporto: il 7 ottobre 2026, AWS interromperà il supporto per. AWS IoT Greengrass Version 1 Dopo il 7 ottobre 2026, non potrai più accedere alle risorse. AWS IoT Greengrass V1 Per ulteriori informazioni, visita Migrate from. AWS IoT Greengrass Version 1

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à.

Crea e impacchetta una funzione Lambda

La funzione Python Lambda di esempio in questo modulo utilizza il AWS IoT Greengrass Core SDK for Python per pubblicare messaggi MQTT.

In questa fase, si:

  • Scarica il AWS IoT Greengrass Core SDK for Python sul tuo computer (non sul dispositivo principale). AWS IoT Greengrass

  • Crea un pacchetto di distribuzione della funzione Lambda che contenga il codice della funzione e le dipendenze.

  • Usa la console Lambda per creare una funzione Lambda e caricare il pacchetto di distribuzione.

  • Pubblica una versione della funzione Lambda e crea un alias che punti alla versione.

Per completare questo modulo, Python 3.7 deve essere installato sul dispositivo principale.

 

  1. Dalla pagina di download del AWS IoT Greengrass Core SDK, scarica il AWS IoT Greengrass Core SDK for Python sul tuo computer.

  2. Decomprimi il pacchetto scaricato per ottenere il codice della funzione Lambda e l'SDK.

    La funzione Lambda in questo modulo utilizza:

    • Il file greengrassHelloWorld.py in examples\HelloWorld. Questo è il codice della tua funzione Lambda. Ogni cinque secondi la funzione pubblica uno tra due possibili messaggi all'argomento hello/world.

    • La cartella greengrasssdk. Questo è l'SDK.

  3. Copiare la cartella greengrasssdk nella cartella HelloWorld contenente greengrassHelloWorld.py.

  4. Per creare il pacchetto di distribuzione della funzione Lambda, salva greengrassHelloWorld.py la greengrasssdk cartella in un file compresso zip denominato. hello_world_python_lambda.zip Il file py e la cartella greengrasssdk devono trovarsi nella radice della directory.

    Screenshot che mostra i contenuti compressi di hello_word_python_lambda.zip.

    UNIX-like Sui sistemi (incluso il terminale Mac), puoi usare il seguente comando per impacchettare il file e la cartella:

    zip -r hello_world_python_lambda.zip greengrasssdk greengrassHelloWorld.py
    Nota

    In base alla distribuzione, potrebbe essere necessario installare prima zip (ad esempio, eseguendo sudo apt-get install zip). Il comando di installazione per la distribuzione potrebbe essere diverso.

    Ora sei pronto per creare la tua funzione Lambda e caricare il pacchetto di distribuzione.

  5. Apri la console Lambda e scegli la funzione Crea.

  6. Scegli Crea da zero.

  7. Dai alla funzione il nome Greengrass_HelloWorld e imposta i campi rimanenti come segue:

    • In Runtime, scegliere Python 3.7.

    • Per le autorizzazioni, mantieni l'impostazione predefinita. Questo crea un ruolo di esecuzione che concede le autorizzazioni Lambda di base. Questo ruolo non è utilizzato da. AWS IoT Greengrass

    Scegli Crea funzione.

  8. Carica il pacchetto di distribuzione della funzione Lambda:

    1. Nella scheda Codice, in Sorgente del codice, scegli Carica da. Dal menu a discesa, scegli il file .zip.

      Il menu a discesa Carica da con il file .zip evidenziato.
    2. Scegli Carica, quindi scegli il pacchetto di hello_world_python_lambda.zip distribuzione. Poi, scegli Salva.

    3. Nella scheda Codice della funzione, in Impostazioni di runtime, scegli Modifica, quindi inserisci i seguenti valori.

      • In Runtime, scegliere Python 3.7.

      • In Handler (Gestore), immetti greengrassHelloWorld.function_handler

      La sezione «Runtime settings» con il campo «Runtime» impostato su «Python 3.7" e il campo «Handler» impostato su «greengrass _handler». HelloWorld.function
    4. Selezionare Salva.

      Nota

      Il pulsante Test sulla AWS Lambda console non funziona con questa funzione. Il AWS IoT Greengrass Core SDK non contiene i moduli necessari per eseguire le funzioni Greengrass Lambda in modo indipendente nella console. AWS Lambda Questi moduli (ad esempiogreengrass_common) vengono forniti alle funzioni dopo essere stati distribuiti nel core di Greengrass.

  9. Pubblica la funzione Lambda:

    1. Dal menu Azioni nella parte superiore della pagina, scegli Pubblica nuova versione.

      Screenshot del menu "Actions" con "Publish new version" evidenziato.
    2. Per Version description (Descrizione versione), immettere First version, quindi scegliere Publish (Pubblica).

      Screenshot con il campo "Version description" impostato su "First version" e il pulsante "Publish" evidenziato.
  10. Crea un alias per la versione della funzione Lambda:

    Nota

    I gruppi Greengrass possono fare riferimento a una funzione Lambda tramite alias (consigliato) o per versione. L'uso di un alias semplifica la gestione degli aggiornamenti del codice perché non è necessario modificare la tabella di sottoscrizione o la definizione del gruppo quando il codice della funzione viene aggiornato. Basta invece puntare l'alias alla nuova versione della funzione.

    1. Dal menu Azioni nella parte superiore della pagina, scegli Crea alias.

      Screenshot del menu "Actions" impostato su "Create alias".
    2. Assegna un nome all'aliasGG_HelloWorld, imposta la versione su 1 (che corrisponde alla versione appena pubblicata), quindi scegli Salva.

      Nota

      AWS IoT Greengrass non supporta gli alias Lambda per le versioni $LATEST.

       

      Screenshot di Create a new alias con il campo Name impostato su GG_ HelloWorld e il campo Version impostato su 1.