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á.
Importar uma função do Lambda como componente (console)
Ao usar o console do AWS IoT Greengrass
Antes de começar, revise os requisitos para executar as funções do Lambda em dispositivos Greengrass.
Tarefas
- Etapa 1: escolher uma função do Lambda para importar
- Etapa 2: configurar os parâmetros da função do Lambda
- Etapa 3: (opcional) especificar plataformas compatíveis para a função do Lambda
- Etapa 4: (opcional) especificar as dependências do componente para a função do Lambda
- Etapa 5: (opcional) executar a função do Lambda em um contêiner
- Etapa 6: criar o componente da função do Lambda
Etapa 1: escolher uma função do Lambda para importar
-
No menu de navegação do console do AWS IoT Greengrass
, selecione Componentes. -
Na página Componentes, escolha Criar componente.
-
Na página Criar componente, em Informações do componente, escolha Importar função do Lambda.
-
Em Função do Lambda, pesquise e selecione a função do Lambda para importar.
O AWS IoT Greengrass cria o componente com o nome da função do Lambda.
-
Na versão da função do Lambda, escolha a versão a ser importada. Você não pode escolher aliases do Lambda como
$LATEST
.O AWS IoT Greengrass cria o componente com a versão da função do Lambda como versão semântica válida. Por exemplo, se a versão da função for
3
, a versão do componente se tornará3.0.0
.
Etapa 2: configurar os parâmetros da função do Lambda
Na página Criar componente, em Configuração da função do Lambda, configure os seguintes parâmetros para usar na execução da função do Lambda.
-
(Opcional) Adicione a lista de fontes de eventos nas quais a função do Lambda se inscreve para receber mensagens de trabalho. Você pode especificar origens de eventos para inscrever essa função em mensagens locais de publicação/assinatura e mensagens MQTT do AWS IoT Core. A função do Lambda é chamada quando recebe uma mensagem de uma origem de evento.
nota
Para inscrever essa função em mensagens de outras funções ou componentes do Lambda, implante o componente legado do roteador de assinatura ao implantar esse componente da função do Lambda. Ao implantar o componente legado do roteador de assinatura, especifique as assinaturas que a função do Lambda usa.
Em Fontes de eventos, faça o seguinte para adicionar uma fonte de eventos:
-
Para cada fonte de evento que você incluir, especifique as seguintes opções:
-
Tópico: o tópico para assinar mensagens.
-
Tipo: o tipo de origem do evento. Escolha uma das seguintes opções:
-
Publicação/assinatura local: assine mensagens locais de publicação/assinatura.
Se você usa o núcleo do Greengrass v2.6.0 ou posterior e o gerenciador do Lambda v2.2.5 ou posterior, você pode usar curingas de tópico do MQTT (
+
e#
) no Tópico ao especificar esse tipo. -
AWS IoT Core MQTT: assine as mensagens do AWS IoT Core MQTT.
Você pode usar curingas de tópico do MQTT (
+
e#
) no Tópico ao especificar esse tipo.
-
-
-
Para adicionar outra fonte de eventos, selecione Adicionar origem de evento e repita a etapa anterior. Para remover uma origem do evento, selecione Remover ao lado da origem do evento para remover.
-
-
Em Timeout (segundos), insira o tempo máximo em segundos que uma função do Lambda não fixada pode ser executada antes que o tempo limite seja atingido. O padrão é 3 segundos.
-
Em Fixado, escolha se o componente da função do Lambda está fixado. O padrão é True.
-
Uma função do Lambda fixada (ou de longa duração) começa quando o AWS IoT Greengrass é iniciado e continua sendo executada em seu próprio contêiner.
-
Uma função do Lambda não fixada (ou sob demanda) só é iniciada quando recebe um item de trabalho e sai depois que permanece ociosa por um tempo ocioso máximo especificado. Se a função tiver vários itens de trabalho, o software AWS IoT Greengrass Core criará várias instâncias da função.
-
-
(Opcional) Em Parâmetros adicionais, defina os seguintes parâmetros da função do Lambda.
-
Tempo limite do status (segundos): o intervalo em segundos no qual o componente de uma função do Lambda envia atualizações de status para o componente do gerenciador do Lambda. Este parâmetro se aplica apenas a funções fixadas. O padrão é 60 segundos.
-
Tamanho máximo da fila: o tamanho máximo da fila de mensagens para o componente de função do Lambda. O software do AWS IoT Greengrass Core armazena mensagens em uma fila FIFO (primeiro a entrar, primeiro a sair) até que possa executar a função do Lambda para ingerir cada mensagem. O valor padrão é de 1.000 mensagens.
-
Número máximo de instâncias: o número máximo de instâncias que uma função do Lambda não fixada pode executar ao mesmo tempo. O padrão é 100 instâncias.
-
Tempo máximo de inatividade (segundos): o tempo máximo em segundos que uma função do Lambda não fixada pode permanecer ociosa antes que o software AWS IoT Greengrass Core interrompa seu processo. O padrão é 60 segundos.
-
Tipo de codificação: o tipo de carga útil compatível com a função do Lambda. Escolha uma das seguintes opções:
-
JSON
-
Binário
O padrão é JSON.
-
-
-
(Opcional) Especifique a lista de argumentos de linha de comando a serem passados para a função do Lambda quando ela for executada.
-
Em Parâmetros adicionais, Argumentos de processo, escolha Adicionar argumento.
-
Para cada argumento que você incluir, insira o argumento para passar para a função.
-
Selecione Remover ao lado de um argumento para removê-lo.
-
-
(Opcional) Especifique as variáveis de ambiente que estão disponíveis para a função do Lambda quando ela é executada. As variáveis de ambiente permitem que você armazene e atualize as configurações sem a necessidade de alterar o código da função.
-
Em Parâmetros adicionais, Variáveis de ambiente, escolha Adicionar variável de ambiente.
-
Para cada variável de ambiente que você incluir, especifique as seguintes opções:
-
Chave: o nome da variável.
-
Valor: o valor padrão para essa variável.
-
-
Para remover uma variável de ambiente, selecione Remover ao lado da variável de ambiente para remover.
-
Etapa 3: (opcional) especificar plataformas compatíveis para a função do Lambda
Todos os dispositivos principais têm atributos de sistema operacional e arquitetura. Quando você implanta o componente da função do Lambda, o software AWS IoT Greengrass Core compara os valores da plataforma que você especifica com os atributos da plataforma no dispositivo principal para determinar se a função do Lambda é compatível com esse dispositivo.
nota
Você também pode especificar atributos de plataforma personalizados ao implantar o componente de núcleo do Greengrass em um dispositivo principal. Para obter mais informações, consulte o parâmetro de substituição da plataforma do componente de núcleo do Greengrass.
Em Configuração da função do Lambda, Parâmetros adicionais, Plataformas, faça o seguinte para especificar as plataformas que essa função do Lambda suporta.
-
Para cada plataforma, especifique as seguintes opções:
-
Sistema operacional: o nome do sistema operacional da plataforma. Atualmente, o único valor compatível é
linux
. -
Arquitetura: a arquitetura do processador para a plataforma. Os valores compatíveis são:
-
amd64
-
arm
-
aarch64
-
x86
-
-
-
Para adicionar outra plataforma, escolha Adicionar plataforma e repita a etapa anterior. Para remover uma plataforma compatível, selecione Remover ao lado da plataforma que deseja remover.
Etapa 4: (opcional) especificar as dependências do componente para a função do Lambda
As dependências de componentes identificam componentes adicionais fornecidos pela AWS ou componentes personalizados que sua função usa. Quando você implanta o componente da função do Lambda, a implantação inclui essas dependências para que sua função seja executada.
Importante
Para importar uma função do Lambda que você criou para ser executada no AWS IoT Greengrass V1, você deve definir dependências de componentes individuais para os recursos que sua função usa, como segredos, sombras locais e gerenciador de fluxos. Defina esses componentes como dependências permanentes para que seu componente da função do Lambda seja reiniciado se a dependência mudar de estado. Para ter mais informações, consulte Importar funções do Lambda no V1.
Em Configuração da função do Lambda, Parâmetros adicionais, Dependências de componentes, conclua as etapas a seguir para especificar as dependências de componentes para sua função do Lambda.
-
Escolha Adicionar dependência.
-
Para cada dependência de componente que você incluir, especifique as seguintes opções:
-
Nome do componente: o nome do componente. Por exemplo, insira
aws.greengrass.StreamManager
para incluir o componente gerenciador de fluxos. -
Requisito de versão: a restrição de versão semântica no estilo npm que identifica as versões compatíveis dessa dependência de componente. É possível especificar uma versão ou um intervalo de versões. Por exemplo, insira
^1.0.0
para especificar que essa função do Lambda depende de qualquer versão na primeira versão principal do componente do gerenciador de fluxos. Para obter mais informações sobre restrições de versão semântica, consulte a calculadora npm semver. -
Tipo: o tipo de dependência. Escolha uma das seguintes opções:
-
Permanente: o componente da função do Lambda é reiniciado se a dependência muda de estado. Esta é a ação padrão.
-
Temporário: o componente da função do Lambda não é reiniciado se a dependência muda de estado.
-
-
-
Para remover uma dependência de componente, escolha Remover ao lado da dependência do componente
Etapa 5: (opcional) executar a função do Lambda em um contêiner
Por padrão, as funções do Lambda são executadas em um ambiente de runtime isolado dentro do software AWS IoT Greengrass Core. Você também pode optar por executar a função do Lambda como um processo sem nenhum isolamento (ou seja, no modo Sem contêiner).
Em Configuração do processo Linux, para o modo de isolamento, escolha entre as seguintes opções para selecionar a conteinerização para sua função do Lambda:
-
Contêiner do Greengrass: a função do Lambda é executada em um contêiner. Esta é a ação padrão.
-
Sem contêiner: a função do Lambda é executada como processo sem nenhum isolamento.
Se você executar a função do Lambda em um contêiner, conclua as etapas a seguir para definir a configuração do processo para a função do Lambda.
-
Configure a quantidade de memória e os recursos do sistema, como volumes e dispositivos, a serem disponibilizados para o contêiner.
Em Parâmetros de contêiner, siga as instruções abaixo.
-
Em Tamanho da memória, insira o tamanho da memória que você deseja alocar para o contêiner. Você pode especificar o tamanho da memória em MB ou kB.
-
Em Pasta sys somente leitura, escolha se o contêiner pode ou não ler informações da pasta do dispositivo
/sys
. O padrão é falso.
-
-
(Opcional) Configure os volumes locais que a função do Lambda em contêiner pode acessar. Quando você define um volume, o software AWS IoT Greengrass Core monta os arquivos de origem no destino dentro do contêiner.
-
Em Volumes, escolha Adicionar volume.
-
Para cada volume que você incluir, especifique as seguintes opções:
-
Volume físico: o caminho para a pasta de origem no dispositivo principal.
-
Volume lógico: o caminho para a pasta de destino no contêiner.
-
Permissão (opcional): a permissão para acessar a pasta de origem a partir do contêiner. Escolha uma das seguintes opções:
-
Somente leitura: a função do Lambda tem acesso somente leitura à pasta de origem. Esta é a ação padrão.
-
Leitura/gravação: a função do Lambda tem acesso de leitura/gravação à pasta de origem.
-
-
Adicionar proprietário do grupo: (Opcional) Se deve ou não adicionar o grupo do sistema que executa o componente da função do Lambda como proprietário da pasta de origem. O padrão é falso.
-
-
Selecione Remover ao lado de um volume para removê-lo.
-
-
(Opcional) Configure os dispositivos do sistema local que a função do Lambda em contêiner pode acessar.
-
Em Dispositivos, escolha Adicionar dispositivo.
-
Para cada dispositivo que você incluir, especifique as seguintes opções:
-
Caminho de montagem: o caminho para o dispositivo do sistema no dispositivo principal.
-
Permissão (opcional): a permissão para acessar o dispositivo do sistema a partir do contêiner. Escolha uma das seguintes opções:
-
Somente leitura: a função do Lambda tem acesso somente leitura ao dispositivo do sistema. Esta é a ação padrão.
-
Leitura/gravação: a função do Lambda tem acesso de leitura/gravação à pasta de origem.
-
-
Adicionar proprietário do grupo: (opcional) Se deve ou não adicionar o grupo do sistema que executa o componente da função do Lambda como proprietário do dispositivo do sistema. O padrão é falso.
-
-
Etapa 6: criar o componente da função do Lambda
Depois de definir as configurações do componente da função do Lambda, escolha Criar para concluir a criação do novo componente.
Para executar a função do Lambda em seu dispositivo principal, você pode então implantar o novo componente em seus dispositivos principais. Para ter mais informações, consulte Implantar componentes AWS IoT Greengrass em dispositivos.