Partilhar via


Melhores práticas para a configuração do dispositivo numa solução de IoT

A gestão automática de dispositivos no Hub IoT do Azure automatiza muitas tarefas repetitivas e complexas de gestão de grandes frotas de dispositivos ao longo da totalidade dos respetivos ciclos de vida. Este artigo define muitas das melhores práticas para as várias funções envolvidas no desenvolvimento e funcionamento de uma solução de IoT.

  • Fabricante/integrador de hardware IoT: Fabricantes de hardware IoT, integradores que montam hardware de vários fabricantes ou fornecedores que fornecem hardware para uma implementação IoT fabricada ou integrada por outros fornecedores. Envolvido no desenvolvimento e integração de firmware, sistemas operativos incorporados e software incorporado.

  • Programador de soluções IoT: Normalmente, o desenvolvimento de uma solução IoT é feito por um programador de soluções. Este programador pode fazer parte de uma equipa interna ou de um integrador de sistema especializado nesta atividade. O programador de soluções IoT pode desenvolver vários componentes da solução IoT de raiz, integrar vários componentes padrão ou open source.

  • Operador de solução IoT: Após a implementação da solução IoT, necessita de operações de longo prazo, monitorização, atualizações e manutenção. Estas tarefas podem ser efetuadas por uma equipa interna que consiste em especialistas em tecnologias de informação, equipas de operações de hardware e manutenção e especialistas em domínios que monitorizam o comportamento correto da infraestrutura de IoT global.

Compreender a gestão automática de dispositivos para configurar dispositivos IoT em escala

A gestão automática de dispositivos inclui as muitas vantagens dos dispositivos duplos e módulos duplos para sincronizar os estados pretendidos e comunicados entre a cloud e os dispositivos. As configurações automáticas de dispositivos atualizam automaticamente grandes conjuntos de duplos e resumem o progresso e a conformidade. Os seguintes passos de alto nível descrevem como a gestão automática de dispositivos é desenvolvida e utilizada:

  • O fabricante/integrador de hardware IoT implementa funcionalidades de gestão de dispositivos numa aplicação incorporada com dispositivos duplos. Estas funcionalidades podem incluir atualizações de firmware, instalação e atualização de software e gestão de definições.

  • O programador da solução IoT implementa a camada de gestão de operações de gestão de dispositivos com dispositivos duplos e configurações automáticas de dispositivos. A solução deve incluir a definição de uma interface de operador para realizar tarefas de gestão de dispositivos.

  • O operador de solução IoT utiliza a solução IoT para realizar tarefas de gestão de dispositivos, nomeadamente para agrupar dispositivos, iniciar alterações de configuração, como atualizações de firmware, monitorizar o progresso e resolver problemas que surgem.

Fabricante/integrador de hardware IoT

Seguem-se as melhores práticas para fabricantes de hardware e integradores que lidam com o desenvolvimento de software incorporado:

  • Implementar dispositivos duplos: Os dispositivos duplos ativam a sincronização da configuração pretendida a partir da cloud e para comunicar as propriedades atuais do dispositivo e da configuração. A melhor forma de implementar dispositivos duplos em aplicações incorporadas é através dos SDKs do Azure IoT. Os dispositivos duplos são mais adequados para a configuração porque:

    • Suporte de comunicação bidirecional.
    • Permitir estados de dispositivos ligados e desligados.
    • Siga o princípio da consistência eventual.
    • São totalmente desaprovessáveis na cloud.
  • Estruturar o dispositivo duplo para a gestão de dispositivos: O dispositivo duplo deve ser estruturado de modo a que as propriedades de gestão de dispositivos sejam agrupadas logicamente em secções. Ao fazê-lo, as alterações de configuração serão isoladas sem afetar outras secções do duplo. Por exemplo, crie uma secção nas propriedades pretendidas para firmware, outra secção para software e uma terceira secção para definições de rede.

  • Reportar atributos de dispositivo que são úteis para a gestão de dispositivos: Atributos como a criação de dispositivos físicos e modelo, firmware, sistema operativo, número de série e outros identificadores são úteis para relatórios e como parâmetros para direcionar as alterações de configuração.

  • Defina os estados principais para o estado e o progresso dos relatórios: Os estados de nível superior devem ser enumerados para que possam ser comunicados ao operador. Por exemplo, uma atualização de firmware reportaria o estado como Atual, Transferência, Aplicação, Em Curso e Erro. Defina campos adicionais para obter mais informações sobre cada estado.

Programador de soluções IoT

Seguem-se as melhores práticas para programadores de soluções IoT que estão a criar sistemas baseados no Azure:

  • Implementar dispositivos duplos: Os dispositivos duplos ativam a sincronização da configuração pretendida a partir da cloud e para comunicar as propriedades atuais do dispositivo e da configuração. A melhor forma de implementar dispositivos duplos em aplicações de soluções na cloud é através dos SDKs do Azure IoT. Os dispositivos duplos são mais adequados para a configuração porque:

    • Suporte de comunicação bidirecional.
    • Permitir estados de dispositivos ligados e desligados.
    • Siga o princípio da consistência eventual.
    • São totalmente desaprovessáveis na cloud.
  • Organizar dispositivos com etiquetas de dispositivo duplo: A solução deve permitir que o operador defina anéis de qualidade ou outros conjuntos de dispositivos com base em várias estratégias de implementação, como o canary. A organização do dispositivo pode ser implementada na sua solução com etiquetas e consultas de dispositivo duplo. A organização do dispositivo é necessária para permitir implementações de configuração de forma segura e precisa.

  • Implementar configurações automáticas de dispositivos: As configurações automáticas de dispositivos implementam e monitorizam as alterações de configuração em grandes conjuntos de dispositivos IoT através de dispositivos duplos.

    Configurações automáticas de dispositivos conjuntos de destino de dispositivos duplos através da condição de destino, que é uma consulta em etiquetas de dispositivo duplo ou propriedades reportadas. O conteúdo de destino é o conjunto de propriedades pretendidas que serão definidas nos dispositivos duplos de destino. O conteúdo de destino deve estar alinhado com a estrutura do dispositivo duplo definida pelo fabricante/integrador de hardware IoT. As métricas são consultas nas propriedades comunicadas do dispositivo duplo e também devem estar alinhadas com a estrutura do dispositivo duplo definida pelo fabricante/integrador de hardware IoT.

    As configurações automáticas do dispositivo são executadas pela primeira vez pouco depois de a configuração ser criada e, em seguida, em intervalos de cinco minutos. Também beneficiam do Hub IoT realizar operações de dispositivo duplo a um ritmo que nunca excederá os limites de limitação para leituras e atualizações de dispositivos duplos.

  • Utilize o Serviço de Aprovisionamento de Dispositivos: os programadores de soluções devem utilizar o Serviço de Aprovisionamento de Dispositivos para atribuir etiquetas de dispositivo duplo a novos dispositivos, de modo a que sejam configuradas automaticamente por configurações automáticas de dispositivos direcionadas para duplos com essa etiqueta.

Operador de solução IoT

Seguem-se as melhores práticas para os operadores de soluções IoT que utilizam uma solução IoT criada no Azure:

  • Organizar dispositivos para gestão: A solução IoT deve definir ou permitir a criação de anéis de qualidade ou outros conjuntos de dispositivos com base em várias estratégias de implementação, como o canary. Os conjuntos de dispositivos serão utilizados para executar alterações de configuração e realizar outras operações de gestão de dispositivos em escala.

  • Efetue alterações de configuração com uma implementação faseada: Uma implementação faseada é um processo global em que um operador implementa alterações num conjunto alargado de dispositivos IoT. O objetivo é fazer alterações gradualmente para reduzir o risco de fazer alterações interruptivas em larga escala.  O operador deve utilizar a interface da solução para criar uma configuração automática do dispositivo e a condição de destino deve visar um conjunto inicial de dispositivos (como um grupo canary). Em seguida, o operador deve validar a alteração de configuração no conjunto inicial de dispositivos.

    Assim que a validação estiver concluída, o operador atualizará a configuração automática do dispositivo para incluir um conjunto maior de dispositivos. O operador também deve definir a prioridade para que a configuração seja superior a outras configurações atualmente direcionadas para esses dispositivos. A implementação pode ser monitorizada com as métricas comunicadas pela configuração automática do dispositivo.

  • Execute reversões em caso de erros ou configurações incorretas: Uma configuração automática do dispositivo que causa erros ou configurações incorretas pode ser revertida ao alterar a condição de destino para que os dispositivos já não cumpram a condição de destino. Certifique-se de que outra configuração automática do dispositivo de prioridade inferior ainda é direcionada para esses dispositivos. Verifique se a reversão foi efetuada com êxito ao ver as métricas: a configuração revertida já não deve mostrar o estado dos dispositivos não visados e as métricas da segunda configuração devem agora incluir contagens para os dispositivos que ainda estão visados.

Passos seguintes