Creazione e il pacchetto della funzione Lambda - AWS IoT Greengrass

AWS IoT Greengrass Version 1 è entrato nella fase di estensione della vita utile il 30 giugno 2023. Per ulteriori informazioni, consulta la politica AWS IoT Greengrass V1 di manutenzione. Dopo questa data, AWS IoT Greengrass V1 non rilascerà aggiornamenti che forniscano funzionalità, miglioramenti, correzioni di bug o patch di sicurezza. I dispositivi che funzionano AWS IoT Greengrass V1 non subiranno interruzioni e continueranno a funzionare e a connettersi al cloud. Ti consigliamo vivamente di eseguire la migrazione a AWS IoT Greengrass Version 2, che aggiunge nuove importanti funzionalità e supporto per piattaforme aggiuntive.

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

Creazione e il pacchetto della funzione Lambda

In questa fase, si:

  • Creare un pacchetto di distribuzione della funzione Lambda che contiene il codice della funzione e le dipendenze.

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

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

 

  1. Sul computer, accedere alla sezioneAWS IoT GreengrassCore SDK per Python scaricato ed estratto inCreare e includere in un pacchetto una funzione Lambdanel Modulo 3-1.

    La funzione Lambda in questo esempio utilizza:

    • Il file greengrassHelloWorldCounter.py in examples\HelloWorldCounter. Questo codice della funzione Lambda.

    • La cartella greengrasssdk. Questo è l'SDK.

  2. Creare un pacchetto di distribuzione della funzione Lambda:

    1. Copiare la cartella greengrasssdk nella cartella HelloWorldCounter contenente greengrassHelloWorldCounter.py.

    2. Salvare greengrassHelloWorldCounter.py e la cartella greengrasssdk in un file zip denominato hello_world_counter_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_counter_python_lambda.zip".

      Sui sistemi di tipo UNIX (tra cui il terminale Mac) che hanno zip installato, puoi utilizzare il seguente comando per creare il pacchetto del file e della cartella:

      zip -r hello_world_counter_python_lambda.zip greengrasssdk greengrassHelloWorldCounter.py

    Adesso è possibile creare la funzione Lambda e caricare il pacchetto di distribuzione.

  3. Apri la console Lambda e scegli (Salva)Creazione della funzione.

  4. Scegliere Author from scratch (Crea da zero).

  5. Dai alla funzione il nome Greengrass_HelloWorld_Counter e imposta i campi rimanenti come segue:

    • In Runtime, scegliere Python 3.7.

    • PerAutorizzazioni, mantenere l'impostazione predefinita. Questo crea un ruolo di esecuzione che concede le autorizzazioni Lambda di base. Questo ruolo non viene utilizzato daAWS IoT Greengrass. Oppure puoi riutilizzare il ruolo che hai creato nel modulo 3-1.

    Scegli Create function (Crea funzione).

    La sezione «Basic information» con il campo «Basic grass_HelloWorld_Counter» impostato su «Python 3.7".
  6. Carica il pacchetto di distribuzione della funzione Lambda.

    1. SulCodescheda, sottoCodice sorgente, scegliCarica da. Dal menu a discesa, scegli.file .zip.

      Il menu a discesa Carica da con file.zip evidenziato.
    2. ScegliereCaricamentoquindi selezionare il pulsante.hello_world_counter_python_lambda.zippacchetto di distribuzione. Quindi, scegliere Save (Salva).

    3. SulCodetab per la funzione, sottoImpostazioni di Runtime, scegliModificaree quindi immettere i seguenti valori seguenti.

      • In Runtime, scegliere Python 3.7.

      • In Handler (Gestore), immetti greengrassHelloWorldCounter.function_handler

    4. Seleziona Save (Salva.

      Nota

      LaTestpulsante sul pulsante.AWS Lambdala console non funziona con questa funzione. LaAWS IoT GreengrassCore SDK non contiene moduli necessari per eseguire le funzioni Lambda di Greengrass in modo indipendente nelAWS LambdaConsole. Questi moduli (ad esempio,greengrass_common) vengono forniti alle funzioni dopo che sono state implementate nel core Greengrass.

  7. Pubblica la prima versione della funzione.

    1. DaOperazionimenu nella parte superiore della pagina, scegli (Salva)Pubblica nuova versione. In Version description (Descrizione versione), immetti First version.

    2. Seleziona Publish (Pubblica).

  8. Creare un alias della versione della funzione.

    1. DaOperazionimenu nella parte superiore della pagina, scegli (Salva)Creazione dell'alias.

      Screenshot del menu "Actions" impostato su "Create alias".
    2. In Name (Nome), inserire GG_HW_Counter.

    3. In Version (Versione), selezionare 1.

    4. Seleziona Save (Salva.

      Screenshot dell'alias con il campo «Version» impostato su 1 e il campo «Version» impostato su 1.

    Gli alias creano una singola entità per la funzione Lambda a cui i dispositivi Greengrass possono effettuare la sottoscrizione. In questo modo, non è necessario aggiornare le sottoscrizioni con nuovi numeri di versione delle funzioni Lambda ogni volta che la funzione viene modificata.