Principais conceitos sobre trabalhos - AWS IoT Core

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

Principais conceitos sobre trabalhos

Os conceitos a seguir fornecem detalhes sobre AWS IoT trabalhos e como criar e implantar trabalhos para executar operações remotas em seus dispositivos.

Conceitos básicos

A seguir estão os conceitos básicos que você deve conhecer ao usar AWS IoT Jobs.

Trabalho

Um trabalho é uma operação remota que é enviada e executada em um ou mais dispositivos conectados à AWS IoT. Por exemplo, você pode definir um trabalho que instrui um conjunto de dispositivos a baixar e instalar um aplicativo ou executar atualizações de firmware, reinicializar, alternar certificados ou executar operações de solução de problemas remotamente.

Documento de trabalho

Para criar um trabalho, você deve primeiro criar um documento de trabalho, que consiste na descrição das operações remotas a serem realizadas pelos dispositivos.

Os documentos de trabalho são documentos JSON codificados em UTF-8 e devem conter as informações das quais seus dispositivos precisam para executar um trabalho. Um documento de trabalho contém um ou mais URLs onde o dispositivo pode fazer download de uma atualização ou de outros dados. O documento de trabalho pode ser armazenado em um bucket do Amazon S3 ou ser incluído em linha com o comando que cria o trabalho.

dica

Para exemplos de documentos de trabalho, consulte o exemplo de jobs-agent.js no AWS IoT SDK para JavaScript.

Destino

Ao criar um trabalho, você especifica uma lista de destinos, que são os dispositivos que devem executar as operações. Os destinos podem ser objetos, grupos de objetos ou ambos. O serviço AWS IoT Jobs envia uma mensagem para cada alvo para informá-lo de que um trabalho está disponível.

Implantação

Depois de criar um trabalho fornecendo o documento de trabalho e especificando sua lista de destinos, o documento de trabalho é então implantado nos dispositivos de destino remotos para os quais você deseja realizar a atualização. Para trabalhos de snapshot, o trabalho será concluído após a implantação nos dispositivos de destino. Para trabalhos contínuos, um trabalho é implantado em um grupo de dispositivos à medida que eles são adicionados aos grupos.

Execução de trabalho

Uma execução de trabalho é uma instância de um trabalho em um dispositivo de destino. O destino começa a execução de um trabalho ao fazer download do documento de trabalho. Em seguida, ele executa as operações especificadas no documento e relata seu progresso para AWS IoT o. Um número de execução é um identificador exclusivo da execução de um trabalho em um destino específico. O serviço AWS IoT Jobs fornece comandos para rastrear o progresso da execução de um trabalho em um destino e o progresso de um trabalho em todos os alvos.

Conceitos dos tipos de trabalho

Os conceitos a seguir podem ajudá-lo a entender mais sobre os diferentes tipos de trabalhos que você pode criar com AWS IoT Jobs.

Trabalho de snapshot

Por padrão, um trabalho é enviado para todos os destinos que você especifica ao criar o trabalho. Depois que esses destinos concluem o trabalho (ou relatam que não puderam concluí-lo), o trabalho está concluído.

Trabalho contínuo

Um trabalho contínuo é enviado a todos os destinos que você especifica ao criar o trabalho. Ele continua a executar e é enviado a todos os novos dispositivos (objetos) que são adicionados ao grupo de destino. Por exemplo, um trabalho contínuo pode ser usado para integrar ou atualizar dispositivos conforme são adicionados a um grupo. Você pode criar um trabalho contínuo definindo um parâmetro opcional ao criá-lo.

nota

Ao segmentar sua frota de IoT usando grupos de objetos dinâmicas, recomendamos que você use trabalhos contínuos em vez de trabalhos de snapshot. Ao usar trabalhos contínuos, os dispositivos que se juntam ao grupo recebem a execução do trabalho mesmo após a criação do trabalho.

Pre-signed URLs

Para acesso seguro e por tempo limitado aos dados que não estão incluídos no documento de trabalho, você pode usar URLs pré-assinados do Amazon S3. Coloque seus dados em um bucket do Amazon S3 e adicione um link de espaço reservado para os dados no documento de trabalho. Quando AWS IoT Jobs recebe uma solicitação para o documento de trabalho, ele analisa o documento procurando os links de espaço reservado e, em seguida, substitui os links por URLs pré-assinados do Amazon S3.

O link de espaço reservado tem o seguinte formato:

${aws:iot:s3-presigned-url:https://s3.amazonaws.com/bucket/key}

em que bucket é o nome do bucket e key é o objeto no bucket ao qual você está vinculando.

Nas regiões de Pequim e Ningxia, os URLs pré-assinados funcionam somente se o proprietário do recurso tiver uma licença ICP (Internet Content Provider). Para obter mais informações, consulte Amazon Simple Storage Service na documentação Getting Started with AWS Services in China.

Conceitos da configuração de trabalho

Os conceitos a seguir podem ajudar você a entender como configurar trabalhos.

Distribuições

Você pode especificar a rapidez com que os destinos são notificados sobre a execução de um trabalho pendente. Isso permite que você crie uma distribuição em etapas para gerenciar melhor as atualizações, reinicializações e outras operações. Você pode criar uma configuração de distribuição usando uma taxa de distribuição estática ou uma exponencial. Para especificar o número máximo de destinos de trabalho a serem informados por minuto, use uma taxa de distribuição estática.

Para obter exemplos de como definir taxas de distribuição e obter mais informações sobre como configurar distribuições de trabalhos, consulte Configurações de implantação, agendamento e anulação de trabalhos.

Programação

O agendamento de trabalhos permite que você agende o cronograma de distribuição de um documento de trabalho em todos os dispositivos do grupo de destino para trabalhos contínuos e de snapshot. Além disso, você pode criar uma janela de manutenção opcional contendo datas e horários específicos em que um trabalho distribuirá o documento de trabalho em todos os dispositivos do grupo de destino. Uma janela de manutenção é uma instância recorrente com uma frequência de datas e horários diários, semanais, mensais ou personalizados selecionados durante a criação do trabalho inicial ou do modelo de trabalho. Somente trabalhos contínuos podem ser programados para realizar uma distribuição durante uma janela de manutenção.

O agendamento de trabalhos é específico para seu trabalho. Execuções de trabalhos individuais não podem ser agendadas. Para ter mais informações, consulte Configurações de implantação, agendamento e anulação de trabalhos.

Anular

Você pode criar um conjunto de condições para cancelar distribuições quando critérios que você especificou forem atendidos. Para ter mais informações, consulte Configurações de implantação, agendamento e anulação de trabalhos.

Tempos limite

O tempo limite do trabalho notifica você sempre que uma implantação de trabalho ficar paralisada no estado IN_PROGRESS por um período inesperadamente longo. Há dois tipos de temporizadores: em andamento e de etapa. Quando o trabalho estiver IN_PROGRESS, você poderá monitorar e acompanhar o progresso da implantação do trabalho.

As configurações de distribuição e anulação são específicas para seu trabalho, enquanto a configuração de tempo limite é específica para a implantação de um trabalho. Para ter mais informações, consulte Configurações de novas tentativas e de tempo limite de execuções de trabalhos.

Repetições

As repetições de trabalho possibilitam repetir a execução do trabalho quando um trabalho falha, atinge o tempo limite ou ambos. É possível ter até dez novas tentativas para executar a trabalho. Você pode monitorar e acompanhar o progresso de sua nova tentativa e se a execução do trabalho foi bem-sucedida.

As configurações de distribuição e anulação são específicas para seu trabalho, enquanto a configuração de tempo limite e repetição é específica para a execução de um trabalho. Para ter mais informações, consulte Configurações de novas tentativas e de tempo limite de execuções de trabalhos.