AWS IoT Greengrass Version 1 entrou na fase de vida útil prolongada em 30 de junho de 2023. Para obter mais informações, consulte política de manutenção do AWS IoT Greengrass V1. Após essa data, AWS IoT Greengrass V1 não lançaremos atualizações que forneçam recursos, aprimoramentos, correções de erros ou patches de segurança. Os dispositivos que funcionam AWS IoT Greengrass V1 não serão interrompidos e continuarão operando e se conectando à nuvem. É altamente recomendável que você migre para AWS IoT Greengrass Version 2, o que adiciona novos recursos significativos e suporte para plataformas adicionais.
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Criar e empacotar a função do Lambda
Nesta etapa:
-
Crie um pacote de implantação de funções do Lambda que contém o código da função e as dependências.
-
Use o console do Lambda para criar uma função do Lambda e fazer upload do pacote de implantação.
-
Publique uma versão da função do Lambda e crie um alias que aponte para a versão.
-
No seu computador, acesse o SDK AWS IoT Greengrass principal para Python que você baixou e extraiu Crie e empacote uma função do Lambda no Módulo 3-1.
A função do Lambda neste módulo usa:
-
O arquivo
greengrassHelloWorldCounter.py
emexamples\HelloWorldCounter
. Este é o código da função do Lambda. -
A pasta
greengrasssdk
. Esse é o SDK.
-
-
Crie um pacote de implantação da função do Lambda;
-
Copie a pasta
greengrasssdk
para a pastaHelloWorldCounter
que contémgreengrassHelloWorldCounter.py
. -
Salve
greengrassHelloWorldCounter.py
e a pastagreengrasssdk
em um arquivozip
chamadohello_world_counter_python_lambda.zip
. O arquivopy
e a pastagreengrasssdk
devem estar na raiz do diretório.Para sistemas semelhantes ao UNIX (incluindo o terminal Mac) que tenha
zip
instalado, é possível usar o comando a seguir para empacotar o arquivo e a pasta:zip -r hello_world_counter_python_lambda.zip greengrasssdk greengrassHelloWorldCounter.py
Agora, você está pronto para criar sua função do Lambda e fazer upload do pacote de implantação.
-
-
Abra o console do Lambda e selecione Criar função.
-
Selecione Author from scratch.
-
Dê à função o nome
Greengrass_HelloWorld_Counter
e defina os campos restantes da seguinte forma:-
Em Runtime (Tempo de execução), selecione Python 3.7.
-
Em Permissões, mantenha a configuração padrão. Isso cria uma função de execução que concede permissões básicas do Lambda. Essa função não é usada por AWS IoT Greengrass. Também é possível reutilizar a função criada no módulo 3-1.
Selecione Criar função.
-
-
Faça upload do pacote de implantação da função do Lambda.
-
Na guia Código, em Fonte do código, selecione Fazer upload a partir de. No menu suspenso, selecione o arquivo .zip.
-
Selecione Upload e, em seguida, selecione seu pacote de implantação
hello_world_counter_python_lambda.zip
. Selecione Salvar. -
Na guia Código da função, em Configurações de runtime, selecione Editar e insira os valores a seguir.
-
Em Runtime (Tempo de execução), selecione Python 3.7.
-
Em Handler (Manipulador), insira
greengrassHelloWorldCounter.function_handler
.
-
-
Escolha Salvar.
nota
O botão Testar no AWS Lambda console não funciona com essa função. O SDK AWS IoT Greengrass principal não contém módulos necessários para executar suas funções do Greengrass Lambda de forma independente no console. AWS Lambda Esses módulos (por exemplo,
greengrass_common
) são fornecidos às funções depois de serem implantados no núcleo do Greengrass.
-
-
Publique a primeira versão da função.
-
No menu Ações na parte superior da página, selecione Publicar versão nova. Em Version description (Descrição da versão), insira
First version
. -
Selecione Publish.
-
-
Crie um alias para a versão da função.
-
No menu Ações na parte superior da página, selecione Criar alias.
-
Em Nome, digite
GG_HW_Counter
. -
Em Version, selecione 1.
-
Selecione Salvar.
Os aliases criam uma única entidade para a sua função do Lambda que os Dispositivos Greengrass podem assinar. Dessa forma, não é necessário atualizar assinaturas com novos números de versão da função do Lambda sempre que a função é modificada.
-