Arquitetura do Azure IoT Central

O IoT Central é um ambiente pronto que permite avaliar rapidamente seu cenário de IoT. É uma solução IoT de plataforma de aplicativo como serviço (aPaaS) e sua interface principal é uma interface do usuário da web. Há também uma API REST que permite que você interaja com seu aplicativo programaticamente.

Este artigo fornece uma visão geral dos principais elementos em uma arquitetura de solução do IoT Central.

Diagrama que mostra a arquitetura de alto nível de uma solução I o T Central.

Os principais recursos em um aplicativo do IoT Central incluem:

Gerir dispositivos

O IoT Central permite gerenciar a frota de dispositivos IoT que estão enviando dados para sua solução. Por exemplo, pode:

  • Controle quais dispositivos podem se conectar ao seu aplicativo e como eles se autenticam.
  • Use modelos de dispositivo para definir os tipos de dispositivo que podem se conectar ao seu aplicativo.
  • Gerencie dispositivos definindo propriedades ou chamando comandos em dispositivos conectados. Por exemplo, defina uma propriedade de temperatura de destino para um dispositivo termostato ou chame um comando para acionar um dispositivo para atualizar seu firmware. Você pode definir propriedades e chamar comandos em:
  • Mantenha metadados do dispositivo, como endereço do cliente ou data do último serviço.

Visualizar e analisar dados

Em um aplicativo do IoT Central, você pode visualizar e analisar dados para dispositivos individuais ou para dados agregados de vários dispositivos:

  • Use o mapeamento para transformar a telemetria de dispositivos complexos em dados estruturados dentro do IoT Central.
  • Use modelos de dispositivo para definir modos de exibição personalizados para dispositivos individuais de tipos específicos. Por exemplo, você pode plotar a temperatura ao longo do tempo para um termostato individual ou mostrar a localização ao vivo de um caminhão de entrega.
  • Use a análise integrada para visualizar dados agregados para vários dispositivos. Por exemplo, você pode ver a ocupação total em várias lojas de varejo ou identificar as lojas com as taxas de ocupação mais altas ou mais baixas.
  • Crie painéis personalizados para ajudá-lo a gerenciar seus dispositivos. Por exemplo, você pode adicionar mapas, blocos e gráficos para mostrar a telemetria do dispositivo.

Proteja a sua solução

No IoT Central, você pode configurar e gerenciar a segurança nas seguintes áreas:

  • Acesso do usuário ao seu aplicativo.
  • Acesso do dispositivo ao seu aplicativo.
  • Acesso programático à sua aplicação.
  • Autenticação para outros serviços a partir do seu aplicativo.
  • Os logs de auditoria rastreiam a atividade em seu aplicativo.

Para saber mais, consulte o guia de segurança do IoT Central.

Dispositivos

Os dispositivos coletam dados de sensores para enviar como um fluxo de telemetria para um aplicativo do IoT Central. Por exemplo, uma unidade de refrigeração envia um fluxo de valores de temperatura ou um caminhão de entrega transmite sua localização.

Um dispositivo pode usar propriedades para relatar seu estado, como se uma válvula está aberta ou fechada. Um aplicativo IoT Central também pode usar propriedades para definir o estado do dispositivo, por exemplo, definindo uma temperatura de destino para um termostato.

O IoT Central também pode controlar dispositivos chamando comandos no dispositivo. Por exemplo, instruir um dispositivo para baixar e instalar uma atualização de firmware.

A telemetria, as propriedades e os comandos que um dispositivo implementa são coletivamente conhecidos como os recursos do dispositivo. Você define esses recursos em um modelo que o dispositivo e o aplicativo IoT Central compartilham. No IoT Central, esse modelo faz parte do modelo de dispositivo que define um tipo específico de dispositivo. Para saber mais, consulte Atribuir um dispositivo a um modelo de dispositivo.

A implementação do dispositivo deve seguir as convenções IoT Plug and Play para garantir que ele possa se comunicar com o IoT Central. Para obter mais informações, consulte os vários SDKs de linguagem e exemplos.

Os dispositivos se conectam ao IoT Central usando um dos protocolos suportados: MQTT, AMQP ou HTTP.

Gateways

Os dispositivos de gateway local são úteis em vários cenários, como:

  • Os dispositivos não podem se conectar diretamente ao IoT Central porque não podem se conectar à Internet. Por exemplo, você pode ter uma coleção de sensores de ocupação habilitados para Bluetooth que precisam se conectar por meio de um dispositivo de gateway.
  • A quantidade de dados gerados pelos seus dispositivos é elevada. Para reduzir custos, combine ou agregue os dados em um gateway local antes de enviá-los para seu aplicativo IoT Central.
  • A sua solução requer respostas rápidas a anomalias nos dados. Você pode executar regras em um dispositivo de gateway que identificam anomalias e executam uma ação localmente sem a necessidade de enviar dados para seu aplicativo IoT Central.

Os dispositivos de gateway normalmente exigem mais poder de processamento do que um dispositivo autônomo. Uma opção para implementar um dispositivo de gateway é usar o Azure IoT Edge e aplicar um dos padrões padrão de gateway do IoT Edge. Você também pode executar seu próprio código de gateway personalizado em um dispositivo adequado.

Exportar Dados

Embora o IoT Central tenha recursos de análise integrados, você pode exportar dados para outros serviços e aplicativos.

As transformações em uma definição de exportação de dados do IoT Central permitem manipular o formato e a estrutura dos dados do dispositivo antes de exportá-los para um destino.

Os motivos para exportar dados incluem:

Armazenamento e análise

Para armazenamento de longo prazo e controle sobre políticas de arquivamento e retenção, você pode exportar continuamente seus dados para outros destinos de armazenamento. O uso de um serviço de armazenamento separado fora do IoT Central permite que você use outras ferramentas de análise para obter insights dos dados em sua solução.

Automatização empresarial

As regras no IoT Central permitem que você acione ações externas, como enviar um e-mail ou disparar um evento, em resposta a condições dentro do IoT Central. Por exemplo, você pode notificar um engenheiro se a temperatura ambiente de um dispositivo atingir um limite.

Cálculo adicional

Talvez seja necessário transformar ou fazer cálculos em seus dados antes que eles possam ser usados no IoT Central ou em outro serviço. Por exemplo, você pode adicionar informações meteorológicas locais aos dados de localização relatados por um caminhão de entrega.

Estenda com a API REST

Crie integrações que permitam que outros aplicativos e serviços gerenciem seu aplicativo. Por exemplo, gerencie programaticamente os dispositivos em seu aplicativo ou sincronize as informações do usuário com um sistema externo.

Escalabilidade

Os aplicativos do IoT Central usam internamente vários serviços do Azure, como o Hub IoT e o DPS (Serviço de Provisionamento de Dispositivos). Muitos desses serviços subjacentes são multilocatário. No entanto, para garantir o isolamento total dos dados do cliente, o IoT Central usa hubs IoT de locatário único.

O IoT Central dimensiona automaticamente seus hubs IoT com base nos perfis de carga em seu aplicativo. O IoT Central pode escalar hubs IoT individuais e expandir o número de hubs IoT em um aplicativo. O IoT Central também dimensiona automaticamente outros serviços subjacentes.

Exportação de dados

Os aplicativos do IoT Central geralmente usam outros serviços configurados pelo usuário. Por exemplo, você pode configurar seu aplicativo IoT Central para exportar dados continuamente para serviços como Hubs de Eventos do Azure e Armazenamento de Blobs do Azure.

Se uma exportação de dados configurada não puder gravar em seu destino, o IoT Central tentará retransmitir os dados por até 15 minutos, após os quais o IoT Central marcará o destino como falha. Destinos com falha são verificados periodicamente para verificar se são graváveis.

Você pode forçar o IoT Central a reiniciar as exportações com falha desativando e reativando a exportação de dados.

Analise as práticas recomendadas de alta disponibilidade e escalabilidade para o serviço de destino de exportação de dados que você está usando:

Recuperação de elevada disponibilidade e após desastre

Os recursos do HADR dependem de quando você criou seu aplicativo IoT Central:

Candidaturas criadas antes de abril de 2021

Alguns aplicativos criados antes de abril de 2021 usam um único hub IoT. Para esses aplicativos, o IoT Central não fornece recursos HADR. Se o hub IoT ficar indisponível, o aplicativo ficará indisponível.

Use o az iot central device manual-failover comando para verificar se seu aplicativo ainda usa um único hub IoT. Este comando retornará um erro se o aplicativo tiver um único hub IoT.

Candidaturas criadas após abril de 2021 e antes de abril de 2023

Para conectividade de dispositivo altamente disponível, um aplicativo IoT Central sempre tem pelo menos dois hubs IoT. O número de hubs pode crescer ou diminuir à medida que o IoT Central dimensiona o aplicativo em resposta a alterações no perfil de carga.

O IoT Central também usa zonas de disponibilidade para tornar vários serviços que usa altamente disponíveis.

Um incidente que exija recuperação de desastres pode variar de um subconjunto de serviços ficando indisponível até uma região inteira ficando indisponível. O IoT Central segue diferentes processos de recuperação, dependendo da natureza e da escala do incidente. Por exemplo, se uma região inteira do Azure ficar indisponível após uma falha catastrófica, os procedimentos de recuperação de desastres farão failover de aplicativos para outra região na mesma geografia.

Candidaturas criadas após abril de 2023

Os aplicativos do IoT Central criados após abril de 2023 inicialmente têm um único hub IoT. Se o hub IoT ficar indisponível, o aplicativo ficará indisponível. No entanto, o IoT Central dimensiona automaticamente o aplicativo e adiciona um novo hub IoT para cada 10.000 dispositivos conectados. Se você precisar de vários hubs IoT para aplicativos com menos de 10.000 dispositivos, envie uma solicitação ao suporte ao cliente do IoT Central.

Use o az iot central device manual-failover comando para verificar se seu aplicativo usa atualmente um único hub IoT. Esse comando retornará um erro se o aplicativo tiver atualmente um único hub IoT.