Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:
IoT Edge 1.5
Importante
O IoT Edge 1.5 LTS é a versão com suporte. O IoT Edge 1.4 LTS atingirá o fim da vida útil em 12 de novembro de 2024. Se você estiver em uma versão anterior, confira Atualizar o IoT Edge.
O Azure IoT Edge permite que seus dispositivos do IoT Edge trabalhem offline por longos períodos e permite que os dispositivos downstream trabalhem offline também. Depois que um dispositivo IoT Edge se conectar ao Hub IoT uma vez, o dispositivo e qualquer dispositivo downstream poderão continuar trabalhando com conexão intermitente ou sem conexão com a Internet.
Como ele funciona
Quando um dispositivo do IoT Edge entra em modo offline, o hub do IoT Edge assume três funções:
- Armazena todas as mensagens que estão no sentido upstream e as salva até que o dispositivo se reconecte.
- Atua em nome do Hub IoT para autenticar módulos e dispositivos downstream para que eles possam continuar operando.
- Habilita a comunicação entre dispositivos downstream que normalmente passam pelo Hub IoT.
O exemplo a seguir mostra como um cenário de IoT Edge opera no modo offline:
Configurar dispositivos
Os dispositivos do IoT Edge têm recursos offline habilitados por padrão. Para estender essa capacidade a outros dispositivos, você precisa configurar os dispositivos de downstream para confiar em seu dispositivo pai atribuído e rotear as comunicações do dispositivo para a nuvem por meio do pai como um gateway.
Sincronizar com o Hub IoT
Depois de instalar o runtime do IoT Edge, verifique se o dispositivo IoT Edge está online pelo menos uma vez para sincronizar com o Hub IoT. Durante essa sincronização, o dispositivo IoT Edge obtém detalhes sobre todos os dispositivos downstream atribuídos a ele. O dispositivo IoT Edge também atualiza com segurança seu cache local para habilitar operações offline e obtém configurações para o armazenamento local de mensagens de telemetria.
Ficar offline
Embora desconectado do Hub IoT, o dispositivo IoT Edge, seus módulos implantados e quaisquer dispositivos downstream podem continuar operando indefinidamente. Os módulos e dispositivos de downstream podem ser iniciados e reiniciados ao autenticarem com o hub do IoT Edge enquanto estiverem offline. A telemetria do dispositivo, enviada upstream para o Hub IoT, é armazenada localmente. A comunicação entre os módulos ou entre dispositivos de downstream é mantida por meio de métodos diretos ou mensagens.
Reconectar e sincronizar novamente com o Hub IoT
Quando a conexão com o Hub IoT é restaurada, o dispositivo IoT Edge é sincronizado novamente. Mensagens armazenadas localmente são entregues imediatamente ao Hub IoT, mas a entrega depende da velocidade da conexão, latência do Hub IoT e fatores relacionados. As mensagens são entregues na mesma ordem em que foram armazenadas.
Todas as diferenças entre as propriedades desejadas e relatadas dos módulos e dispositivos são reconciliadas. O dispositivo do IoT Edge atualiza qualquer alteração de seu conjunto de dispositivos de downstream atribuídos.
Restrições e limites
Dispositivos do IoT Edge e os dispositivos downstream atribuídos podem funcionar indefinidamente offline após a sincronização inicial única. No entanto, o armazenamento de mensagens depende da configuração de TTL (vida útil) e do espaço em disco disponível.
O EdgeAgent de um dispositivo atualiza suas propriedades relatadas sempre que o status da implantação é alterado, como uma implantação nova ou com falha. Quando um dispositivo está offline, o EdgeAgent não pode relatar o status para o portal do Azure. Portanto, o status do dispositivo no portal do Azure pode permanecer 200 OK quando o dispositivo IoT Edge não tiver conectividade com a Internet.
Configurar dispositivos pai e filho
Por padrão, um pai pode ter até 100 filhos. Altere esse limite definindo a variável de ambiente MaxConnectedClients no módulo edgeHub. Um dispositivo filho tem apenas um pai.
Observação
Um dispositivo downstream envia dados diretamente para a Internet ou para dispositivos de gateway (habilitados para IoT Edge ou não). Um dispositivo filho pode ser um dispositivo de downstream ou um dispositivo de gateway em uma topologia aninhada.
Um dispositivo downstream pode ser qualquer dispositivo, IoT Edge ou não IoT Edge, registrado no mesmo Hub IoT.
Para obter mais informações sobre a criação de uma relação pai-filho entre um dispositivo IoT Edge e um dispositivo IoT, consulte Autenticar um dispositivo downstream para Hub IoT do Azure. As seções de chave simétrica, X.509 autoassinado e X.509 assinadas por autoridade de certificação mostram exemplos de como usar o portal do Azure e a CLI do Azure para definir as relações pai-filho ao criar dispositivos. Para dispositivos existentes, você pode declarar a relação na página de detalhes do dispositivo no portal do Azure do dispositivo pai ou filho.
Para obter mais informações sobre a criação de uma relação pai-filho entre dois dispositivos do IoT Edge, consulte Conectar um dispositivo IoT Edge downstream para um gateway do Azure IoT Edge.
Configurar o dispositivo pai como gateway
Pense em uma relação pai/filho como um gateway transparente, em que o dispositivo filho tem sua própria identidade no Hub IoT, mas se comunica por meio da nuvem por meio de seu pai. Para uma comunicação segura, o dispositivo filho precisa verificar se o dispositivo pai vem de uma fonte confiável. Caso contrário, terceiros poderiam configurar dispositivos mal-intencionados para representar os pais e interceptar as comunicações.
Uma maneira de criar essa relação de confiança é descrita detalhadamente nos artigos a seguir:
- Configure um dispositivo IoT Edge para atuar como um gateway transparente
- Conectar um dispositivo downstream (filho) para um gateway do Azure IoT Edge
Especificar servidores de DNS
Para melhorar a robustez, especifique os endereços do servidor DNS usados em seu ambiente. Para definir o servidor DNS para IoT Edge, confira a resolução para O módulo Edge Agent relata 'arquivo de configuração vazio' e nenhum módulo é iniciado no dispositivo no artigo de solução de problemas.
Configurações offline opcionais
Se os dispositivos ficarem offline, o dispositivo pai IoT Edge armazenará todas as mensagens do dispositivo para a nuvem até que a conexão seja restabelecida. O módulo hub do IoT Edge gerencia o armazenamento e o encaminhamento de mensagens offline.
Para dispositivos que podem ficar offline por um longo tempo, otimize o desempenho definindo duas opções de hub do IoT Edge:
- Aumente a configuração de tempo de vida útil para que o hub do IoT Edge mantenha as mensagens até que seu dispositivo se reconecte.
- Adicione mais espaço em disco para o armazenamento de mensagens.
Vida útil
A configuração de tempo de vida é quanto tempo (em segundos) uma mensagem aguarda para ser entregue antes de expirar. O padrão é 7.200 segundos (duas horas). O valor máximo é limitado pelo valor máximo de uma variável inteiro, que é de cerca de 2 bilhões.
Essa configuração é uma propriedade desejada do hub do IoT Edge, armazenada no módulo gêmeo. Configure-o no portal do Azure ou diretamente no manifesto de implantação.
"$edgeHub": {
"properties.desired": {
"schemaVersion": "1.1",
"routes": {},
"storeAndForwardConfiguration": {
"timeToLiveSecs": 7200
}
}
}
Armazenamento de host para módulos do sistema
Por padrão, o hub do IoT Edge armazena mensagens e o estado do módulo em seu sistema de arquivos de contêiner local. Para melhorar a confiabilidade, especialmente quando offline, dedique o armazenamento no dispositivo host do IoT Edge. Para obter mais informações, confira Fornecer acesso de módulos ao armazenamento local de um dispositivo.
Próximas etapas
Saiba mais sobre como configurar um gateway transparente para suas conexões de dispositivo pai/filho: