O que significa para o IoT Central ter alta disponibilidade, recuperação de desastres (HADR) e escala elástica?

O Azure IoT Central é uma plataforma de aplicativo como serviço (aPaaS) que gerencia escalabilidade e HADR para você. Um aplicativo IoT Central pode ser dimensionado para suportar centenas de milhares de dispositivos conectados. Para obter mais informações sobre preços de dispositivos e mensagens, consulte Preços do Azure IoT Central. Para obter mais informações sobre o contrato de nível de serviço, consulte SLA para Azure IoT Central.

Este artigo fornece informações básicas sobre como o IoT Central dimensiona e fornece HADR. O artigo também inclui orientações sobre como aproveitar esses recursos.

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.

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.

Trabalhar com vários hubs IoT

Como consequência do dimensionamento automático e do suporte a HADR, as instâncias do hub IoT em seu aplicativo podem mudar. Por exemplo:

  • O número de hubs pode aumentar ou diminuir à medida que o aplicativo é dimensionado.
  • Um hub pode falhar e ficar indisponível.
  • Os procedimentos de recuperação de desastres podem adicionar novos hubs em uma região diferente para substituir os hubs em uma região com falha.

Embora o IoT Central gerencie os hubs IoT em seu aplicativo para você, um dispositivo deve ser capaz de restabelecer uma conexão se o hub ao qual ele se conecta não estiver disponível:

Provisionamento de dispositivos

À medida que o número de hubs IoT em seu aplicativo muda, um dispositivo pode precisar se conectar a um hub diferente.

Antes de um dispositivo se conectar ao IoT Central, ele deve ser registrado e provisionado nos serviços subjacentes. Quando você adiciona um dispositivo a um aplicativo do IoT Central, o IoT Central adiciona uma entrada a um grupo de registro do DPS. As informações do grupo de registro, como o escopo da ID, a ID do dispositivo e as chaves, são exibidas na interface do usuário do IoT Central.

Quando um dispositivo se conecta pela primeira vez ao seu aplicativo IoT Central, o DPS provisiona o dispositivo em um dos hubs IoT vinculados do grupo de registros. O dispositivo é então associado a esse hub IoT. O DPS usa uma política de alocação para balancear a carga do provisionamento entre os hubs IoT no aplicativo. Esse processo garante que cada hub IoT tenha um número semelhante de dispositivos provisionados.

Para saber mais sobre registro e provisionamento no IoT Central, consulte Guia de conectividade de dispositivo do IoT Central.

Ligações do dispositivo

Depois que o DPS provisiona um dispositivo para um hub IoT, o dispositivo sempre tenta se conectar a esse hub. Se um dispositivo não puder acessar o hub IoT para o qual está provisionado, ele não poderá se conectar ao seu aplicativo IoT Central. Para lidar com esse cenário, o firmware do dispositivo deve incluir uma estratégia de repetição que reprovisione o dispositivo para outro hub.

Para saber mais sobre como o firmware do dispositivo deve lidar com erros de conexão e se conectar a um hub diferente, consulte Práticas recomendadas.

Para saber mais sobre como verificar se o firmware do dispositivo pode lidar com falhas de conexão, consulte Testar recursos de failover.

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:

Limitações

Atualmente, os dispositivos IoT Edge não podem se mover entre hubs IoT.

Próximos passos

Agora que você aprendeu sobre a escalabilidade e a alta disponibilidade do Azure IoT Central, a próxima etapa sugerida é aprender sobre Cotas e limites no Azure IoT Central.