Tutorial: Concluir uma atualização de proxy usando a Atualização de Dispositivo para Hub IoT do Azure
Se você ainda não tiver feito isso, examine Usando as atualizações de proxy com a Atualização de Dispositivo para o Hub IoT do Azure.
Configurar um dispositivo de teste ou uma máquina virtual
Este tutorial usa uma VM (máquina virtual) do Ubuntu Server 18.04 LTS como exemplo.
Instalar o Agente da Atualização de Dispositivo e as dependências
Registre packages.microsoft.com no repositório de pacotes APT:
sudo apt-get update sudo apt install curl curl https://packages.microsoft.com/config/ubuntu/18.04/multiarch/prod.list > ~/microsoft-prod.list sudo cp ~/microsoft-prod.list /etc/apt/sources.list.d/ curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > ~/microsoft.gpg sudo cp ~/microsoft.gpg /etc/apt/trusted.gpg.d/ sudo apt-get update
Instale o deviceupdate-agent no dispositivo IoT. Baixe o arquivo Debian mais recente de atualização de dispositivo em packages.microsoft.com:
sudo apt-get install deviceupdate-agent
Opcionalmente, copie o arquivo Debian baixado para a VM de teste. Se estiver usando o PowerShell em seu computador, execute o seguinte comando do shell:
scp <path to the .deb file> tester@<your vm's ip address>:~
Em seguida, acesse sua VM remotamente e execute o seguinte comando do shell na pasta base:
#go to home folder cd ~ #install latest Device Update agent sudo apt-get install ./<debian file name from the previous step>
Vá para o Hub IoT do Azure e copie a cadeia de conexão primária do módulo de Atualização de Dispositivo do dispositivo IoT. Substitua qualquer valor padrão para o campo
connectionData
pela cadeia de conexão primária no arquivo du-config.json:sudo nano /etc/adu/du-config.json
Observação
Você pode copiar a cadeia de conexão primária para o dispositivo, mas é recomendável usar a cadeia de caracteres para o módulo Atualização de Dispositivo. Para obter informações sobre como configurar o módulo, consulte Provisionamento do Agente de Atualização de Dispositivo.
Verifique se /etc/adu/du-diagnostics-config.json contém as configurações corretas para a coleta de log. Por exemplo:
{ "logComponents":[ { "componentName":"adu", "logPath":"/var/log/adu/" }, { "componentName":"do", "logPath":"/var/log/deliveryoptimization-agent/" } ], "maxKilobytesToUploadPerLogPath":50 }
Reiniciar o agente da Atualização de Dispositivo:
sudo systemctl restart adu-agent
Componentes de simulação de instalação
Para fins de teste e demonstração, criaremos os seguintes componentes fictícios no dispositivo:
- Três motores
- Duas câmeras
- "hostfs"
- "rootfs"
Importante
A configuração de componente anterior baseia-se na implementação de uma extensão de enumerador de componente de exemplo chamada libcontoso-component-enumerator.so. Ele também requer esse arquivo de dados de inventário de componente simulado: usr/local/contoso-devices/components-inventory.json.
Copie a pasta de demonstração para o diretório base na VM de teste. Em seguida, execute o seguinte comando para copiar os arquivos necessários para os locais certos:
`~/demo/tools/reset-demo-components.sh`
O
reset-demo-components.sh
comando segue as seguintes etapas em seu nome:Ele copia components-inventory.json e o adiciona à pasta /usr/local/contoso-devices.
Ele copia a extensão do enumerador de componentes contoso (libcontoso-component-enumerator.so) da pasta Ativos e a adiciona à pasta /var/lib/adu/extensions/sources.
Ele registra a extensão:
sudo /usr/bin/AducIotAgent -E /var/lib/adu/extensions/sources/libcontoso-component-enumerator.so
Exiba e registre a versão do software dos componentes atuais usando o comando a seguir para configurar a VM a fim de dar suporte às atualizações de proxy:
~/demo/show-demo-components.sh
Importar uma atualização de exemplo
Se você ainda não tiver feito isso, crie uma conta e uma instância de Atualização de Dispositivo, incluindo a configuração de um Hub IoT. Em seguida, inicie o procedimento a seguir.
Na versão mais recente da Atualização de Dispositivo, em Ativos, baixe os manifestos de importação de atualizações de proxy e imagens para atualizações de proxy.
Entre no portal do Azure e vá para o Hub IoT com a Atualização de Dispositivo. No painel esquerdo, selecione Gerenciamento de Dispositivos>Atualizações.
Selecione a guia Atualizações.
Selecione + Importar nova atualização.
Selecione + Selecionar do contêiner de armazenamento e escolha sua conta de Armazenamento e o contêiner.
Selecione Carregar para adicionar os arquivos que você baixou na etapa 1.
Carregue o manifesto de importação pai, o manifesto de importação filho e os arquivos de conteúdo para o contêiner.
O exemplo a seguir mostra os arquivos de exemplo carregados para as câmeras de atualização conectadas a um dispositivo aspirador inteligente. Ele também inclui um script de pré-instalação para desligar as câmeras antes da atualização over-the-air.
No exemplo, o manifesto de importação pai é contoso.Virtual-Vacuum-virtual-camera.1.4.importmanifest.json. O manifesto de importação filho com detalhes para a atualização da câmera é Contoso.Virtual-Vacuum.3.3.importmanifest.json. Observe que ambos os nomes de arquivo de manifesto seguem o formato necessário e terminam com .importmanifest.json.
Escolha Selecionar.
A interface do usuário agora mostra a lista de arquivos que serão importados para a Atualização de Dispositivo. Selecione Importar atualização.
O processo de importação é iniciado, e a tela é alterada para a seção Importar histórico. Selecione Atualizar para exibir o progresso até que o processo de importação seja concluído. Dependendo do tamanho da atualização, a importação pode terminar em alguns minutos ou demorar mais.
Quando a coluna Status indicar que a importação foi bem-sucedida, selecione a guia Atualizações Disponíveis. Você deve ver a atualização importada na lista agora.
Saiba mais sobre a importação de atualizações.
Criar grupo de atualizações
Acesse a guia Grupos e Implantações na parte superior da página.
Selecione uma marca de Hub IoT e Classe de Dispositivo na lista e, em seguida, selecione Criar grupo.
Depois que o grupo for criado, você verá que a lista de gráficos e grupos de conformidade de atualização será atualizada. O gráfico de conformidade da atualização mostra a contagem de dispositivos em vários estados de conformidade: em atualização mais recente, novas atualizações disponíveis e atualizações em andamento. Saiba mais sobre a conformidade de atualizações.
Você deve ver o grupo recém-criado e todas as atualizações disponíveis para os dispositivos do novo grupo. Se houver dispositivos que não atendem aos requisitos de classe de dispositivo do grupo, eles aparecerão em um grupo inválido correspondente. É possível implantar a melhor atualização disponível no grupo novo definido pelo usuário dessa exibição clicando no botão "implantar" ao lado do grupo.
Saiba mais sobre como adicionar marcas e criar grupos de atualização
Implantar atualização
Após criar o grupo, você verá uma nova atualização disponível para o grupo de dispositivos junto a um link para a atualização em Melhor Atualização (talvez seja necessário Atualizar uma vez). Saiba mais sobre a conformidade das atualizações.
Selecione o grupo de destino clicando no nome do grupo. Você será direcionado para os detalhes do grupo em Noções básicas do grupo.
- Para iniciar a implantação, acesse a guia de implantação Atual. Clique no link implantar ao lado da atualização desejada na seção de Atualizações disponíveis. A melhor atualização disponível para um determinado grupo será indicada com um "Melhor" realçado.
- Agende sua implantação para iniciar imediatamente ou no futuro e, em seguida, selecione Criar.
- O status em detalhes da Implantação deve se tornar Ativo e a atualização implantada deve ser marcada com "(implantando)".
Exiba o gráfico de conformidade. Será possível ver que a atualização está em andamento.
Depois de atualizar seu dispositivo com êxito, será possível conferir o gráfico de conformidade e a atualização dos detalhes da implantação para refletir as mesmas informações.
Monitorar uma implantação de atualização
Selecione a guia histórico de Implantações na parte superior da página.
Selecione o link detalhes ao lado da implantação que você criou.
Selecione Atualizar para exibir os detalhes mais recentes do status.
Agora você concluiu uma atualização de proxy de ponta a ponta bem-sucedida usando a Atualização de Dispositivo para Hub IoT.
Limpar os recursos
Quando não forem mais necessários, limpe a conta da atualização de dispositivo, a instância, o Hub IoT e o dispositivo IoT.
Próximas etapas
Você pode usar os seguintes tutoriais para uma demonstração simples da Atualização de Dispositivo para Hub IoT:
Tutorial de Atualização de Dispositivo para Hub IoT do Azure usando a imagem de referência do Raspberry Pi 3 B+ (extensível por meio de software livre para criar suas próprias imagens para outras arquiteturas, conforme necessário)