Crie e configure a função do Lambda - AWS IoT Greengrass

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

Crie e configure a função do Lambda

Nesta etapa, você cria uma função do Lambda que monitora o número de carros que avançam o semáforo. Sempre que o estado da sombra GG_TrafficLight mudar para G, a função do Lambda simulará a passagem de um número aleatório de carros (de 1 a 20). Sempre que a terceira luz G mudar, a função do Lambda enviará estatísticas básicas, como mínimo e máximo, para uma tabela do DynamoDB.

  1. No computador, crie uma pasta chamada car_aggregator.

  2. Na pasta de exemplos do TrafficLight no GitHub, faça download do arquivo carAggregator.py para a pasta car_aggregator. Este é o código da função do Lambda.

    nota

    Este exemplo de arquivo Python é armazenado no repositório do SDK do AWS IoT Greengrass Core por conveniência, mas ele não usa o SDK do AWS IoT Greengrass Core.

  3. Se você não estiver trabalhando na região Leste dos EUA (Norte da Virgina), abra carAggregator.py e altere region_name na seguinte linha para a Região da AWS que está selecionada no console do AWS IoT. Para obter a lista das Região da AWSs compatíveis, consulte AWS IoT Greengrass no Referência geral da Amazon Web Services.

    dynamodb = boto3.resource('dynamodb', region_name='us-east-1')
  4. Execute o seguinte comando em uma janela da linha de comando para instalar o pacote AWS SDK for Python (Boto3) e suas dependências na pasta car_aggregator. As funções do Lambda do Greengass usam o SDK da AWS para acessar outros serviços da AWS. (Para o Windows, use um prompt de comando elevado.)

    pip install boto3 -t path-to-car_aggregator-folder

    Isso resultará em uma listagem de diretórios semelhante à seguinte:

    
                            Captura de tela da listagem de diretórios mostrando "carAggregator.py".
  5. Compacte o conteúdo da pasta car_aggregator em um arquivo .zip chamado car_aggregator.zip. (Compacte o conteúdo da pasta, e não a pasta.) Esse é o pacote de implantação de sua função do Lambda.

  6. No console do Lambda, crie uma função chamada GG_Car_Aggregator e defina os campos restantes da seguinte maneira:

    • 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 pelo AWS IoT Greengrass.

    Selecione Criar função.

    
                            A seção de informações básicas com nome de função definido como GG_Car_Aggregator e Runtime definido como Python 3.7.
  7. Faça upload do pacote de implantação da função Lambda:

    1. Na guia Código, em Fonte do código, selecione Fazer upload a partir de. No menu suspenso, selecione o arquivo .zip file.

      
                O menu suspenso Fazer upload a partir de com o arquivo .zip destacado.
    2. Selecione Upload e, em seguida, seu pacote de implantação car_aggregator.zip. Selecione Salvar.

    3. 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 carAggregator.function_handler.

    4. Selecione Salvar.

  8. Publique a função do Lambda e crie um alias para chamado GG_CarAggregator. Para obter instruções passo a passo, consulte as etapas publicar a função do Lambda e criar um alias no Módulo 3 (Parte 1).

  9. No console do AWS IoT, adicione a função do Lambda que você acabou de criar ao grupo AWS IoT Greengrass:

    1. Na página de configuração do grupo, selecione Função do Lambda e, em seguida, em Minhas funções do Lambda, selecione Adicionar.

    2. Para a Função do Lambda, selecione GG_Car_Aggregator.

    3. Em Versão da função do Lambda, selecione o alias da versão que você publicou.

    4. Em Memory limit (Limite de memória), insira 64 MB.

    5. Para Fixado, selecione Verdadeiro.

    6. Selecione Adicionar função do Lambda.

    nota

    Você pode remover outras funções do Lambda de módulos anteriores.