Hub IoT e excelência operacional
Hub IoT do Azure é um serviço gerenciado hospedado na nuvem que atua como um hub de mensagens central para comunicação entre um aplicativo IoT e seus dispositivos anexados. Você pode conectar milhões de dispositivos e suas soluções de back-end de forma confiável e segura. Quase qualquer dispositivo pode ser conectado a um Hub IoT.
O Hub IoT dá suporte ao monitoramento para ajudá-lo a acompanhar a criação de dispositivos, conexões de dispositivo e falhas de dispositivo.
O Hub IoT também dá suporte aos seguintes padrões de mensagens:
- Telemetria do dispositivo para a nuvem
- Carregando arquivos de dispositivos
- Métodos de solicitação e resposta para controlar seus dispositivos da nuvem
Para obter mais informações sobre o Hub IoT, consulte Conceitos de IoT eHub IoT do Azure.
Para entender como o Hub IoT promove a excelência operacional, faça referência aos seguintes tópicos:
- Tutorial: Configurar e usar métricas e logs com um Hub IoT
- Monitoramento do Azure IoT Hub
- Rastrear mensagens do dispositivo para a nuvem no Azure IoT com rastreamento distribuído (prévia)
- Verificar o serviço do Hub IoT e a integridade dos recursos
As seções a seguir são específicas para o Hub IoT do Azure e a excelência operacional:
- Considerações sobre design
- Lista de verificação de configuração
- Opções de configuração recomendadas
Considerações sobre design
Para obter mais informações sobre o Contrato de Nível de Serviço do Hub IoT do Azure, consulte SLA para o Hub IoT do Azure.
Lista de Verificação
Você configurou o Hub IoT do Azure com excelência operacional em mente?
- Provisione um segundo Hub IoT em outra região e tenha lógica de roteamento no dispositivo.
- Use o protocolo
AMQP
ouMQTT
ao enviar eventos com frequência. - Use apenas certificados validados por uma Autoridade Certificadora principal no ambiente de produção se você estiver usando certificados X.509 para a conexão do dispositivo.
- Para obter a taxa de transferência máxima, use o número máximo de partições (
32
) ao criar o Hub IoT, se estiver planejando usar o ponto de extremidade interno. - Para dimensionar, aumente a camada e as unidades alocadas do Hub IoT em vez de adicionar mais de um Hub IoT por região.
- Em cenários de alta taxa de transferência, use eventos em lote.
- Se você precisar da latência mínima possível, não use o roteamento e leia os eventos do endpoint embutido.
- Como parte de sua estratégia de recuperação de desastre e disponibilidade de toda a solução, considere usar a opção de recuperação de desastre entre regiões do IoT Hub .
- Ao usar um SDK para enviar eventos aos Hubs IoT, verifique se as exceções geradas pela política de repetição (
EventHubsException
ouOperationCancelledException
) são capturadas corretamente. - Para evitar a interrupção da telemetria devido à limitação e uma cota totalmente usada, considere adicionar uma solução personalizada de dimensionamento automático.
Recomendações de configuração
Considere as seguintes recomendações para aumentar a excelência operacional ao configurar o Hub IoT do Azure:
Recomendação | Descrição |
---|---|
Provisione um segundo Hub IoT em outra região e tenha lógica de roteamento no dispositivo. | Essas configurações podem ser aprimoradas ainda mais com um Serviço de Concierge. |
Use o protocolo AMQP ou MQTT ao enviar eventos com frequência. |
AMQP e MQTT têm custos de rede mais altos ao inicializar a sessão, no entanto, HTTPS requer sobrecarga de TLS extra para cada solicitação. AMQP e MQTT têm um melhor desempenho para editores frequentes. |
Use somente certificados validados por uma autoridade de certificação raiz no ambiente de produção se certificados X.509 estiverem sendo usado para conexão do dispositivo. | Verifique se você tem processos em vigor para atualizar o certificado antes que eles expirem. |
Para obter a taxa de transferência máxima, use o número máximo de partições (32 ) ao criar o Hub IoT, se estiver planejando usar o ponto de extremidade interno. |
O número de partições do dispositivo para nuvem para o ponto de extremidade compatível com hub de eventos reflete o grau de paralelismo de downstream que pode ser obtido. Isso permitirá que você escale verticalmente para 32 entidades de processamento simultâneas e oferecerá a maior disponibilidade de envio e recebimento. Esse número não pode ser alterado após a criação. |
Para dimensionar, aumente a camada e as unidades alocadas do Hub IoT em vez de adicionar mais de um Hub IoT por região. | Adicionar mais de um Hub IoT por região não oferece resiliência extra porque todos os hubs podem ser executados no mesmo cluster subjacente. |
Em cenários de alta taxa de transferência, use eventos em lote. | O serviço fornecerá uma matriz com vários eventos para os consumidores, em vez de uma matriz com um evento. O aplicativo consumidor deve processar essas matrizes. |
Se você precisar da latência mínima possível, não use o roteamento e leia os eventos do endpoint integrado. | Ao usar o roteamento de mensagens no Hub IoT, a latência da entrega de mensagens aumenta. Em média, a latência não deve exceder 500 ms , mas não há garantia para a latência de entrega. |
Como parte da estratégia de recuperação de desastre e disponibilidade em toda a solução, considere o uso da opção de recuperação de desastre entre regiões do Hub IoT. | Essa opção moverá o endpoint do Hub IoT para a região emparelhada do Azure. Somente o registro de dispositivo é replicado. Os eventos não são replicados para a região secundária. O RTO para o failover iniciado pelo cliente é de 10 minutos a algumas horas. Para um failover iniciado pela Microsoft, o RTO é de 2-26 horas. Confirme se esse RTO está alinhado com os requisitos do cliente e se encaixa na estratégia de disponibilidade mais ampla. Se for necessário um RTO maior, considere a implementação de um padrão de failover do lado do cliente. |
Ao usar um SDK para enviar eventos ao Hub IoT, verifique se as exceções geradas pela política de repetição (EventHubsException ou OperationCancelledException ) são capturadas corretamente. |
Ao usar HTTPS , implemente um padrão de repetição adequado. |