Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:
IoT Edge 1.5
Importante
IoT Edge 1.5 LTS é a versão suportada. O IoT Edge 1.4 LTS atingiu o fim de vida útil a 12 de novembro de 2024. Se estiveres a usar uma versão anterior, vê Update IoT Edge.
O Azure IoT Edge permite que os seus dispositivos IoT Edge funcionem offline durante longos períodos e permite que os dispositivos downstream também funcionem offline. Depois de um dispositivo IoT Edge se ligar uma vez ao IoT Hub, o dispositivo e qualquer dispositivo a jusante podem continuar a funcionar com ligação à internet intermitente ou nula.
Como funciona
Quando um dispositivo IoT Edge entra em modo offline, o hub IoT Edge assume três funções:
- Armazena quaisquer mensagens que são enviadas para cima e guarda-as até que o dispositivo se reconecte.
- Atua em nome do IoT Hub para autenticar módulos e dispositivos downstream, permitindo que continuem a operar.
- Permite a comunicação entre dispositivos a jusante que normalmente passam pelo IoT Hub.
O exemplo seguinte mostra como um cenário IoT Edge funciona em modo offline:
Configurar dispositivos
Os dispositivos IoT Edge têm capacidades offline ativadas por defeito. Para estender esse recurso a outros dispositivos, configure os dispositivos downstream para confiar no dispositivo pai atribuído e rotear as comunicações do dispositivo para a nuvem por meio do pai como um gateway.
Sincroniza com IoT Hub
Depois de instalar o runtime do IoT Edge, certifique-se de que o dispositivo IoT Edge está online pelo menos uma vez para sincronizar com o IoT Hub. Durante esta sincronização, o dispositivo IoT Edge recebe detalhes sobre quaisquer dispositivos a jusante que lhe sejam atribuídos. O dispositivo IoT Edge também atualiza de forma segura a sua cache local para permitir operações offline e obtém definições para armazenamento local de mensagens de telemetria.
Ficar offline
Enquanto desligado do IoT Hub, o dispositivo IoT Edge, os seus módulos implementados e quaisquer dispositivos a jusante podem continuar a operar indefinidamente. Módulos e dispositivos a jusante podem iniciar e reiniciar autenticando-se com o hub IoT Edge enquanto estão offline. A telemetria do dispositivo enviada para montante ao hub de IoT é armazenada localmente. A comunicação entre módulos ou entre dispositivos a jusante é mantida através de métodos diretos ou mensagens.
Reconectar e sincronizar com IoT Hub
Quando a ligação ao IoT Hub é restabelecida, o dispositivo IoT Edge sincroniza novamente. As mensagens armazenadas localmente são entregues ao IoT Hub imediatamente, mas a entrega depende da velocidade da ligação, da latência do IoT Hub e de fatores relacionados. As mensagens são entregues na mesma ordem em que foram armazenadas.
Quaisquer diferenças entre as propriedades desejadas e relatadas dos módulos e dispositivos são reconciliadas. O dispositivo IoT Edge atualiza quaisquer alterações ao seu conjunto de dispositivos atribuídos a jusante.
Restrições e limites
Os dispositivos IoT Edge e os seus dispositivos atribuídos a jusante podem funcionar offline indefinidamente após a sincronização inicial de uma única vez. No entanto, o armazenamento de mensagens depende da definição time to live (TTL) e do espaço disponível em disco.
O EdgeAgent de um dispositivo atualiza as suas propriedades reportadas sempre que o estado de implementação muda, como uma implementação bem-sucedida ou falhada. Quando um dispositivo está offline, o EdgeAgent não pode reportar o estado ao portal do Azure. Assim, o estado do dispositivo no portal Azure pode manter-se 200 OK quando o dispositivo IoT Edge não tem ligação à internet.
Configurar dispositivos pai e filho
Por predefinição, um dispositivo pai pode ter até 100 filhos. Altere este limite definindo a variável de ambiente MaxConnectedClients no módulo edgeHub. Um dispositivo filho tem apenas um pai.
Nota
Um dispositivo a jusante envia dados diretamente para a internet ou para dispositivos gateway (com ou sem IoT Edge). Um dispositivo filho pode ser um dispositivo downstream ou um dispositivo gateway em uma topologia aninhada.
Um dispositivo a jusante pode ser qualquer dispositivo, seja um que funcione com IoT Edge ou um que não funcione com IoT Edge, registado no mesmo IoT Hub.
Para mais informações sobre como criar uma relação pai-filho entre um dispositivo IoT Edge e um dispositivo IoT, veja Autenticar um dispositivo a jusante para Azure IoT Hub. As secções de chave simétrica, X.509 autoassinada e X.509 assinada por CA mostram exemplos de como usar o portal Azure e a Azure CLI para definir as relações pai-filho na criação de dispositivos. Para dispositivos existentes, declare a relação a partir da página de detalhes do dispositivo no portal do Azure, seja no dispositivo pai ou no dispositivo filho.
Para mais informações sobre como criar uma relação pai-filho entre dois dispositivos IoT Edge, consulte Conectar um dispositivo IoT Edge descendente a um gateway Azure IoT Edge.
Configurar o dispositivo principal como uma gateway
Pense numa relação pai/filho como um gateway transparente, onde o dispositivo filho tem a sua própria identidade no IoT Hub, mas comunica através da cloud através do 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 podem configurar dispositivos maliciosos para se passar pelos pais e intercetar comunicações.
Uma maneira de criar essa relação de confiança é descrita em detalhes nos seguintes artigos:
- Configure um dispositivo IoT Edge para atuar como um gateway transparente
- Conecte um dispositivo descendente (filho) a uma gateway do Azure IoT Edge
Especificar servidores DNS
Para melhorar a robustez, especifique os endereços de servidor DNS usados em seu ambiente. Para definir o seu servidor DNS para o IoT Edge, consulte a resolução para o problema em que o módulo Edge Agent reporta que o 'ficheiro de configuração está vazio' e nenhum módulo inicia no dispositivo no artigo de suporte.
Configurações offline opcionais
Se os seus dispositivos ficarem offline, o dispositivo principal IoT Edge armazena todas as mensagens dispositivo-cloud até que a ligação seja restabelecida. O módulo hub IoT Edge gere o armazenamento e o encaminhamento de mensagens offline.
Para dispositivos que podem ficar offline durante muito tempo, otimize o desempenho definindo duas opções de hub IoT Edge:
- Aumente a definição do tempo de vida para que o hub IoT Edge guarde as mensagens até o seu dispositivo se voltar a ligar.
- Adicione mais espaço em disco para armazenamento de mensagens.
Tempo de viver
A configuração de tempo de vida é quanto tempo (em segundos) uma mensagem espera para ser entregue antes de expirar. O valor padrão é 7.200 segundos (duas horas). O valor máximo é limitado pelo valor máximo de uma variável inteira, que é de cerca de 2 bilhões.
Esta configuração é uma propriedade desejada do hub IoT Edge, armazenada no módulo gémeo. Configure-o no portal do Azure ou diretamente no manifesto de implementação.
"$edgeHub": {
"properties.desired": {
"schemaVersion": "1.1",
"routes": {},
"storeAndForwardConfiguration": {
"timeToLiveSecs": 7200
}
}
}
Armazenamento de host para módulos do sistema
Por defeito, o hub IoT Edge armazena mensagens e o estado do módulo no seu sistema de ficheiros local de contentores. Para maior fiabilidade, especialmente offline, dedique armazenamento no dispositivo IoT Edge anfitrião. Para mais informações, consulte Dar acesso aos módulos ao armazenamento local de um dispositivo.
Próximos passos
Para mais informações sobre como configurar um gateway transparente para as ligações dos seus dispositivos pais e filhos, veja: