Implementar módulos do IoT Edge em escala com o portal do Azure
Aplica-se a: IoT Edge 1.5 IoT Edge 1.4
Importante
IoT Edge 1.5 LTS e IoT Edge 1.4 LTS são versões suportadas. O IoT Edge 1.4 LTS termina a vida útil em 12 de novembro de 2024. Se tiver uma versão anterior, consulte Atualizar IoT Edge.
Crie uma implantação automática do IoT Edge no portal do Azure para gerenciar implantações contínuas para vários dispositivos ao mesmo tempo. As implantações automáticas para o IoT Edge fazem parte do recurso de gerenciamento de dispositivos do Hub IoT. As implantações são processos dinâmicos que permitem implantar vários módulos em vários dispositivos, controlar o status e a integridade dos módulos e fazer alterações quando necessário.
Para obter mais informações, consulte Compreender as implantações automáticas do IoT Edge para dispositivos únicos ou em escala.
Identificar dispositivos usando tags
Antes de criar uma implantação, você precisa ser capaz de especificar quais dispositivos deseja afetar. O Azure IoT Edge identifica dispositivos que usam marcas no gêmeo de dispositivo. Cada dispositivo pode ter várias tags que você define de qualquer maneira que faça sentido para sua solução.
Por exemplo, se gerir um campus de edifícios inteligentes, pode adicionar etiquetas de localização, tipo de sala e ambiente a um dispositivo:
"tags":{
"location":{
"building": "20",
"floor": "2"
},
"roomtype": "conference",
"environment": "prod"
}
Para obter mais informações sobre gêmeos de dispositivo e tags, consulte Compreender e usar gêmeos de dispositivo no Hub IoT.
Criar uma implantação
O IoT Edge fornece dois tipos diferentes de implantações automáticas que você pode usar para personalizar seu cenário. Você pode criar uma implantação padrão, que inclui os módulos de tempo de execução do sistema e quaisquer módulos e rotas adicionais. Cada dispositivo só pode aplicar uma implantação. Ou você pode criar uma implantação em camadas, que inclui apenas módulos e rotas personalizados, não o tempo de execução do sistema. Muitas implantações em camadas podem ser combinadas em um dispositivo, além de uma implantação padrão. Para obter mais informações sobre como os dois tipos de implantações automáticas funcionam juntas, consulte Compreender as implantações automáticas do IoT Edge para dispositivos únicos ou em escala.
As etapas para criar uma implantação e uma implantação em camadas são semelhantes. Quaisquer diferenças são destacadas nas etapas a seguir.
- No portal do Azure, vá para o seu Hub IoT.
- No menu no painel esquerdo, selecione Configurações + Implantações em Gerenciamento de dispositivos.
- Na barra superior, selecione Adicionar>implantação ou Adicionar implantação em camadas.
Há cinco etapas para criar uma implantação. As seções a seguir percorrem cada uma delas.
Nota
As etapas neste artigo refletem a versão mais recente do esquema do agente e hub do IoT Edge.
Se você estiver implantando em um dispositivo que executa a versão 1.0.9 ou anterior, edite as Configurações de tempo de execução na etapa Módulos do assistente para usar a versão 1.0 do esquema.
Passo 1: Nome e etiqueta
- Dê à sua implantação um nome exclusivo com até 128 letras minúsculas. Evite espaços e os seguintes caracteres inválidos:
& ^ [ ] { } \ | " < > /
. - Você pode adicionar rótulos como pares chave-valor para ajudar a controlar suas implantações. Por exemplo, HostPlatform e Linux, ou Versão e 3.0.1.
- Selecione Next: Modules para passar para a etapa dois.
Passo 2: Módulos
Você pode adicionar até 50 módulos a uma implantação. Se você criar uma implantação sem módulos, ela removerá todos os módulos atuais dos dispositivos de destino.
Em implantações, você pode gerenciar as configurações do agente do IoT Edge e dos módulos do hub do IoT Edge. Selecione Configurações de tempo de execução para configurar os dois módulos de tempo de execução. Na implantação em camadas, os módulos de tempo de execução não estão incluídos, portanto, não podem ser configurados.
Para adicionar código personalizado como um módulo ou para adicionar manualmente um módulo de serviço do Azure, siga estas etapas:
Na seção Configurações do Registro de Contêiner da página, forneça as credenciais para acessar quaisquer registros de contêiner privados que contenham as imagens do módulo.
Na seção Módulos do IoT Edge da página, selecione Adicionar.
Escolha um dos tipos de módulos no menu suspenso:
- Módulo IoT Edge - Você fornece o nome do módulo e o URI da imagem do contêiner. Por exemplo, o URI de imagem para o módulo SimulatedTemperatureSensor de amostra é
mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:1.0
. Para obter uma lista de imagens do módulo Microsoft IoT Edge, consulte o Microsoft Artifact Registry. - Módulo Azure Stream Analytics - Módulos gerados a partir de uma carga de trabalho do Azure Stream Analytics .
- Módulo IoT Edge - Você fornece o nome do módulo e o URI da imagem do contêiner. Por exemplo, o URI de imagem para o módulo SimulatedTemperatureSensor de amostra é
Se necessário, repita as etapas 2 e 3 para adicionar módulos adicionais à sua implantação.
Depois de adicionar um módulo a uma implantação, você pode selecionar seu nome para abrir a página Atualizar Módulo IoT Edge . Nesta página, você pode editar as configurações do módulo, variáveis de ambiente, criar opções, ordem de inicialização e módulo gêmeo. Se você adicionou um módulo do marketplace, ele já pode ter alguns desses parâmetros preenchidos. Para obter mais informações sobre as configurações de módulo disponíveis, consulte Configuração e gerenciamento de módulo.
Se você estiver criando uma implantação em camadas, pode estar configurando um módulo que existe em outras implantações direcionadas aos mesmos dispositivos. Para atualizar o módulo gêmeo sem substituir outras versões, abra a guia Configurações do módulo gêmeo. Crie uma nova propriedade de gêmeo de módulo com um nome exclusivo para uma subseção dentro das propriedades desejadas do gêmeo de módulo, por exemploproperties.desired.settings
. Se você definir propriedades apenas dentro do properties.desired
campo, ele substituirá as propriedades desejadas para o módulo definido em quaisquer implantações de prioridade mais baixa.
Para obter mais informações sobre a configuração de módulo duplo em implantações em camadas, consulte Implantação em camadas.
Depois de configurar todos os módulos para uma implantação, selecione Avançar: Rotas para passar para a etapa três.
Passo 3: Rotas
Na guia Rotas, você define como as mensagens são passadas entre módulos e o Hub IoT. As mensagens são construídas usando pares nome/valor.
Por exemplo, uma rota com uma rota de nome e um valor FROM /messages/* INTO $upstream pegaria qualquer saída de mensagens por qualquer módulo e as enviaria para seu hub IoT.
Os parâmetros Priority e Time to live são parâmetros opcionais que você pode incluir em uma definição de rota. O parâmetro priority permite que você escolha quais rotas devem ter suas mensagens processadas primeiro ou quais rotas devem ser processadas por último. A prioridade é determinada definindo um número 0-9, onde 0 é a prioridade máxima. O parâmetro time to live permite declarar por quanto tempo as mensagens nessa rota devem ser mantidas até que sejam processadas ou removidas da fila.
Para obter mais informações sobre como criar rotas, consulte Declarar rotas.
Selecione Next: Target Devices (Próximo: Dispositivos de destino).
Etapa 4: Dispositivos de destino
Use a propriedade tags de seus dispositivos para direcionar os dispositivos específicos que devem receber essa implantação.
Como várias implantações podem ter como alvo o mesmo dispositivo, você deve dar a cada implantação um número de prioridade. Se houver um conflito, vence a implantação com a prioridade mais alta (valores maiores indicam prioridade mais alta). Se duas implantações tiverem o mesmo número de prioridade, vence a que foi criada mais recentemente.
Se várias implantações tiverem como alvo o mesmo dispositivo, somente aquele com a prioridade mais alta será aplicado. Se várias implantações em camadas tiverem como alvo o mesmo dispositivo, todas elas serão aplicadas. No entanto, se alguma propriedade for duplicada, como se houver duas rotas com o mesmo nome, a da implantação em camadas de prioridade mais alta substituirá o restante.
Qualquer implantação em camadas direcionada a um dispositivo deve ter uma prioridade maior do que a implantação base para ser aplicada.
- Insira um número inteiro positivo para a Prioridade de implantação.
- Insira uma condição de destino para determinar quais dispositivos são direcionados com essa implantação. A condição é baseada em tags de gêmeos de dispositivo ou propriedades relatadas de gêmeos de dispositivo e deve corresponder ao formato de expressão. Por exemplo,
tags.environment='test'
ouproperties.reported.devicemodel='4000x'
.
Selecione Next: Métricas.
Etapa 5: Métricas
As métricas fornecem contagens resumidas dos vários estados que um dispositivo pode relatar como resultado da aplicação do conteúdo de configuração.
Insira um nome para Nome da métrica.
Insira uma consulta para Critérios de métrica. A consulta é baseada em propriedades de relatório gêmeas do módulo do hub IoT Edge. A métrica representa o número de linhas retornadas pela consulta.
Por exemplo:
SELECT deviceId FROM devices WHERE properties.reported.lastDesiredStatus.code = 200
Selecione Next: Review + Create para passar para a etapa final.
Passo 6: Rever e criar
Revise suas informações de implantação e selecione Criar.
Para monitorar sua implantação, consulte Monitorar implantações do IoT Edge.
Nota
Quando uma nova implantação do IoT Edge é criada, às vezes pode levar até 5 minutos para que o Hub IoT processe a nova configuração e propague as novas propriedades desejadas para os dispositivos de destino.
Modificar uma implantação
Quando você modifica uma implantação, as alterações são replicadas imediatamente para todos os dispositivos de destino. Você pode modificar as seguintes configurações e recursos para uma implantação existente:
- Condições-alvo
- Métricas personalizadas
- Etiquetas
- Etiquetas
- Propriedades desejadas
Modificar condições de destino, métricas personalizadas e rótulos
No hub IoT, selecione Configurações + Implantações no menu do painel esquerdo.
Selecione a implantação que você deseja configurar.
Selecione a guia Dispositivos de destino. Altere a condição de destino para direcionar os dispositivos pretendidos. Você também pode ajustar a prioridade.
Se você atualizar a condição de destino, as seguintes atualizações ocorrerão:
- Se um dispositivo não atender à condição de destino antiga, mas atender à nova condição de destino e essa implantação for a prioridade mais alta para esse dispositivo, essa implantação será aplicada ao dispositivo.
- Se um dispositivo atualmente executando essa implantação não atender mais à condição de destino, ele desinstalará essa implantação e assumirá a próxima implantação de prioridade mais alta.
- Se um dispositivo atualmente executando essa implantação não atender mais à condição de destino e não atender à condição de destino de nenhuma outra implantação, nenhuma alteração ocorrerá no dispositivo. O dispositivo continua executando seus módulos atuais em seu estado atual, mas não é mais gerenciado como parte dessa implantação. Uma vez que ele atenda à condição de destino de qualquer outra implantação, ele desinstala essa implantação e assume a nova.
Selecione a guia Métricas e selecione o botão Editar métricas . Adicione ou modifique métricas personalizadas, usando a sintaxe de exemplo como guia. Selecione Guardar.
Selecione a guia Rótulos , faça as alterações desejadas e selecione Salvar.
Excluir uma implantação
Quando você exclui uma implantação, todos os dispositivos implantados assumem sua próxima implantação de prioridade mais alta. Se seus dispositivos não atenderem à condição de destino de qualquer outra implantação, os módulos não serão removidos quando a implantação for excluída.
- Entre no portal do Azure e navegue até seu Hub IoT.
- Selecione Configurações + Implantações.
- Use a caixa de seleção para selecionar a implantação que você deseja excluir.
- Selecione Eliminar.
- Um prompt informa que essa ação exclui essa implantação e reverte para o estado anterior para todos os dispositivos. Será aplicada uma implantação com prioridade mais baixa. Se nenhuma outra implantação for direcionada, nenhum módulo será removido. Se você quiser remover todos os módulos do seu dispositivo, crie uma implantação com zero módulos e implante-a nos mesmos dispositivos. Selecione Sim para continuar.
Próximos passos
Saiba mais sobre Implantando módulos em dispositivos IoT Edge.