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 implantar e gerenciar a lógica de negócios em dispositivos de borda usando módulos. Os módulos do Azure IoT Edge são a menor unidade de computação gerenciada pelo IoT Edge e podem conter serviços do Azure (por exemplo, o Azure Stream Analytics) ou seu próprio código específico à solução. Para entender como os módulos são desenvolvidos, implantados e mantidos, considere os quatro elementos conceituais de um módulo:
- Uma imagem de módulo é um pacote contendo o software que define um módulo.
- Uma instância de módulo é a unidade específica de computação que executa a imagem de módulo em um dispositivo com IoT Edge. A instância de módulo é iniciada pelo runtime do IoT Edge.
- Uma identidade do módulo é uma informação (incluindo as credenciais de segurança) armazenada no Hub IoT, que está associada a cada instância de módulo.
- Um módulo gêmeo é um documento JSON armazenado no Hub IoT e contém informações de estado para uma instância de módulo, incluindo metadados, configurações e condições.
Instâncias e imagens de módulo
As imagens de módulo do IoT Edge contêm aplicativos que tiram proveito dos recursos de comunicação, segurança e gerenciamento do runtime do IoT Edge. Você pode desenvolver suas próprias imagens de módulo ou exportar uma de um serviço do Azure com suporte, como o Azure Stream Analytics. As imagens existem na nuvem e você pode atualizá-las, alterá-las e implantá-las em soluções diferentes. Por exemplo, um módulo que usa o aprendizado de máquina para prever a saída da linha de produção é uma imagem separada de um módulo usando a visão computacional para controlar um drone.
Sempre que o runtime do IoT Edge é implantado e inicia uma imagem de módulo em um dispositivo, ele cria uma nova instância desse módulo. Dois dispositivos em diferentes partes do mundo podem usar a mesma imagem de módulo. No entanto, cada dispositivo terá sua própria instância de módulo quando o módulo for iniciado no dispositivo.
Na implementação, as imagens de módulos existem como imagens de contêiner em um repositório, e as instâncias de módulo são contêineres em dispositivos.
Identidades de módulo
Quando o runtime do IoT Edge cria uma nova instância de módulo, ele atribui uma identidade de módulo correspondente. O Hub IoT armazena a identidade do módulo, que serve como o escopo de endereçamento e segurança para todas as comunicações locais e de nuvem para a instância do módulo.
A identidade da instância do módulo depende da identidade do dispositivo e do nome que você atribui ao módulo em sua solução. Por exemplo, se você nomear um módulo insight e implantá-lo em um dispositivo chamado Hannover01, o runtime do IoT Edge criará uma identidade de módulo correspondente chamada /devices/Hannover01/modules/insight.
Em cenários em que você precisa implantar uma imagem de módulo várias vezes no mesmo dispositivo, você pode implantá-la com nomes diferentes.
Módulos gêmeos
Cada instância de módulo tem um módulo gêmeo correspondente que você usa para configurá-la. A identidade do módulo vincula a instância e o gêmeo.
O módulo gêmeo é um documento JSON que armazena as propriedades de configuração e as informações do módulo. Esse conceito é comparável ao conceito de dispositivo gêmeo do Hub IoT. A estrutura de um módulo gêmeo é a mesma de um dispositivo gêmeo. As APIs para interagir com ambos os tipos de gêmeos são as mesmas. A única diferença entre os dois é a identidade usada para instanciar o SDK do cliente.
// Create a ModuleClient object. This ModuleClient will act on behalf of a
// module since it is created with a module's connection string instead
// of a device connection string.
ModuleClient client = new ModuleClient.CreateFromEnvironmentAsync(settings);
await client.OpenAsync();
// Get the module twin
Twin twin = await client.GetTwinAsync();
Funcionalidades offline
Os módulos do Azure IoT Edge operam offline indefinidamente depois de sincronizar com o Hub IoT uma vez. Os dispositivos IoT Edge também podem estender esse recurso offline para outros dispositivos IoT. Para obter mais informações, confira Entender os recursos off-line estendidos para dispositivos IoT Edge, módulos e dispositivos de downstream.