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

  1. 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
    
  2. 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>
    
  3. 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.

  4. 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
    }
    
  5. Reiniciar o agente da Atualização de Dispositivo:

    sudo systemctl restart deviceupdate-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.

  1. 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
      

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.

  1. 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.

  2. 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.

  3. Selecione a guia Atualizações.

  4. Selecione + Importar nova atualização.

  5. Selecione + Selecionar do contêiner de armazenamento e escolha sua conta de Armazenamento e o contêiner.

    Captura de tela que mostra o botão para selecionar a importação de um contêiner de armazenamento.

  6. Selecione Carregar para adicionar os arquivos que você baixou na etapa 1.

  7. 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. Os nomes de arquivo de manifesto seguem o formato necessário e terminam com .importmanifest.json.

    Captura de tela que mostra os arquivos de exemplo carregados para atualizar as câmeras conectadas a um dispositivo de aspirador de pó inteligente.

  8. Escolha Selecionar.

  9. 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.

    Captura de tela que mostra os arquivos listados e o botão para importar uma atualização.

  10. 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.

  11. 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.

    Captura de tela que mostra a atualização importada adicionada à lista.

Para obter mais informações sobre o processo de importação, consulte Importar uma atualização para a Atualização de Dispositivo.

Exibir grupos de dispositivos

A Atualização de Dispositivos usa grupos para organizar os dispositivos. A Atualização de Dispositivo classifica automaticamente os dispositivos em grupos com base nas marcas atribuídas e propriedades de compatibilidade. Cada dispositivo pertence a apenas um grupo, mas os grupos podem ter vários subgrupos para classificar as diferentes classes de dispositivos.

  1. Acesse a guia Grupos e Implantações na parte superior da página.

    Captura de tela que mostra dispositivos desagrupados.

  2. Exiba a lista de grupos e o gráfico de conformidade de atualização. O gráfico de conformidade da atualização mostra a contagem de dispositivos em vários estados de conformidade: Com a atualização mais recente, Novas atualizações disponíveis e Atualizações em andamento. Saiba mais sobre a conformidade de atualizações.

    Captura de tela que mostra a exibição de conformidade da atualização.

  3. Você deverá visualizar um grupo de dispositivos contendo o dispositivo simulado que você configurou neste tutorial juntamente com as atualizações disponíveis para os dispositivos no 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. Para implantar a melhor atualização disponível para o novo grupo definido pelo usuário deste modo de exibição, selecione Implantar ao lado do grupo.

Para obter mais informações sobre as marcas e os grupos, consulte Gerenciar grupos de dispositivos.

Implantar atualização

  1. 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).

    Para obter mais informações sobre a conformidade, consulte Conformidade de Atualização de Dispositivo.

  2. 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.

    Detalhes do grupo

  3. Para iniciar a implantação, acesse a guia Implantação atual. Selecione o 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.

    Selecione atualizar

  4. Agende sua implantação para iniciar imediatamente ou no futuro e, em seguida, selecione Criar.

    Criar implantação

  5. O status em detalhes da Implantação deve se tornar Ativo e a atualização implantada deve ser marcada com "(implantando)".

    Implantação ativa

  6. Exiba o gráfico de conformidade. Será possível ver que a atualização está em andamento.

  7. Após atualizar o dispositivo com êxito, você deverá ver o gráfico de conformidade e os detalhes de implantação que são atualizados para refletir as informações.

    Atualização realizada com êxito

Monitorar uma implantação de atualização

  1. Selecione a guia histórico de Implantações na parte superior da página.

    Histórico de Implantação

  2. Selecione o link detalhes ao lado da implantação que você criou.

    Detalhes de implantação

  3. 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