Tutorial: Concluir uma atualização de proxy com a Atualização de Dispositivos para Hub IoT do Azure

Se ainda não o fez, veja Utilizar atualizações de proxy com a Atualização de Dispositivos para Hub IoT do Azure.

Configurar um dispositivo de teste ou uma máquina virtual

Este tutorial utiliza uma máquina virtual (VM) do Ubuntu Server 18.04 LTS como exemplo.

Instalar o Agente de Atualização de Dispositivos e as dependências

  1. Registe packages.microsoft.com num 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. Transfira o ficheiro Debian de Atualização de Dispositivos mais recente a partir de packages.microsoft.com:

    sudo apt-get install deviceupdate-agent
    

    Em alternativa, copie o ficheiro Debian transferido para a VM de teste. Se estiver a utilizar o PowerShell no computador, execute o seguinte comando da shell:

    scp <path to the .deb file> tester@<your vm's ip address>:~
    

    Em seguida, aceda remotamente à VM e execute o seguinte comando de shell na pasta home page:

    #go to home folder 
    cd ~
    #install latest Device Update agent
    sudo apt-get install ./<debian file name from the previous step>
    
  3. Aceda a Hub IoT do Azure e copie a cadeia de ligação primária para o módulo Atualização de Dispositivos do seu dispositivo IoT. Substitua qualquer valor predefinido para o connectionData campo pela cadeia de ligação primária no ficheiro du-config.json :

    sudo nano /etc/adu/du-config.json  
    

    Nota

    Em vez disso, pode copiar a cadeia de ligação primária para o dispositivo, mas recomendamos que utilize a cadeia para o módulo Atualização de Dispositivos. Para obter informações sobre como configurar o módulo, veja Aprovisionamento do Agente de Atualização de Dispositivos.

  4. Certifique-se de que /etc/adu/du-diagnostics-config.json contém as definições corretas para a coleção de registos. Por exemplo:

    {
      "logComponents":[
        {
          "componentName":"adu",
           "logPath":"/var/log/adu/"
        },
        {
          "componentName":"do",
          "logPath":"/var/log/deliveryoptimization-agent/"
        }
      ],
      "maxKilobytesToUploadPerLogPath":50
    }
    
  5. Reinicie o agente de Atualização de Dispositivos:

    sudo systemctl restart deviceupdate-agent
    

Configurar componentes de simulação

Para fins de teste e demonstração, vamos criar os seguintes componentes simulados no dispositivo:

  • Três motores
  • Duas câmaras
  • "hostfs"
  • "rootfs"

Importante

A configuração do componente anterior baseia-se na implementação de uma extensão de enumerador de componentes de exemplo denominada libcontoso-component-enumerator.so. Também requer este ficheiro de dados de inventário de componentes simulados: /usr/local/contoso-devices/components-inventory.json.

  1. Copie a pasta de demonstração para o diretório principal na VM de teste. Em seguida, execute o seguinte comando para copiar os ficheiros necessários para as localizações certas:

    `~/demo/tools/reset-demo-components.sh` 
    

    O reset-demo-components.sh comando segue os seguintes passos em seu nome:

    • Copia components-inventory.json e adiciona-o à pasta /usr/local/contoso-devices .

    • Copia a extensão do enumerador de componentes da Contoso (libcontoso-component-enumerator.so) da pasta Recursos e adiciona-a à pasta /var/lib/adu/extensions/sources .

    • Regista a extensão:

      sudo /usr/bin/AducIotAgent -E /var/lib/adu/extensions/sources/libcontoso-component-enumerator.so
      

Importar uma atualização de exemplo

Se ainda não o fez, crie uma conta e instância de Atualização de Dispositivos, incluindo a configuração de um hub IoT. Em seguida, inicie o procedimento seguinte.

  1. A partir da versão mais recente da Atualização de Dispositivos, em Recursos, transfira os manifestos de importação e imagens para atualizações de proxy.

  2. Inicie sessão no portal do Azure e aceda ao seu hub IoT com a Atualização de Dispositivos. No painel esquerdo, selecione Gestão de Dispositivos>Atualizações.

  3. Selecione o separador Atualizações.

  4. Selecione + Importar Nova Atualização.

  5. Selecione + Selecionar a partir do contentor de armazenamento e, em seguida, selecione a sua conta de armazenamento e contentor.

    Captura de ecrã que mostra o botão para selecionar importar a partir de um contentor de armazenamento.

  6. Selecione Carregar para adicionar os ficheiros que transferiu no passo 1.

  7. Carregue o manifesto de importação principal, o manifesto de importação de menores e os ficheiros payload para o contentor.

    O exemplo seguinte mostra os ficheiros de exemplo carregados para atualizar as câmaras ligadas a um dispositivo de aspirador inteligente. Também inclui um script de pré-instalação para desativar as câmaras antes da atualização para o ar.

    No exemplo, o manifesto de importação principal é contoso. Virtual-Vacuum-virtual-camera.1.4.importmanifest.json. O manifesto de importação subordinado com detalhes para atualizar a câmara é Contoso.Virtual-Vacuum.3.3.importmanifest.json. Ambos os nomes de ficheiros de manifesto seguem o formato necessário e terminam com .importmanifest.json.

    Captura de ecrã que mostra os ficheiros de exemplo carregados para atualizar as câmaras ligadas a um dispositivo de aspirador inteligente.

  8. Escolha Selecionar.

  9. A IU mostra agora a lista de ficheiros que serão importados para a Atualização de Dispositivos. Selecione Importar atualização.

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

  10. O processo de importação é iniciado e o ecrã muda para a secção Histórico de Importações . Selecione Atualizar para ver o progresso até que o processo de importação seja concluído. Dependendo do tamanho da atualização, a importação poderá terminar dentro de alguns minutos ou demorar mais tempo.

  11. Quando a coluna Estado indicar que a importação foi efetuada com êxito, selecione o separador Disponível Atualizações. Deverá ver a atualização importada na lista agora.

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

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

Ver grupos de dispositivos

A Atualização de Dispositivos utiliza grupos para organizar dispositivos. A Atualização de Dispositivos ordena automaticamente os dispositivos em grupos com base nas respetivas etiquetas atribuídas e propriedades de compatibilidade. Cada dispositivo pertence apenas a um grupo, mas os grupos podem ter vários subgrupos para ordenar classes de dispositivos diferentes.

  1. Aceda ao separador Grupos e Implementações na parte superior da página.

    Captura de ecrã a mostrar dispositivos desagrupar.

  2. Veja a lista de grupos e o gráfico de conformidade de atualização. O gráfico de conformidade de atualização mostra a contagem de dispositivos em vários estados de conformidade: na atualização mais recente, novas atualizações disponíveis e Atualizações em curso. Saiba mais sobre a conformidade de atualizações.

    Captura de ecrã que mostra a vista de conformidade de atualização.

  3. Deverá ver um grupo de dispositivos que contém o dispositivo simulado que configurou neste tutorial, juntamente com quaisquer atualizações disponíveis para os dispositivos no novo grupo. Se existirem dispositivos que não cumpram os requisitos de classe do dispositivo do grupo, estes serão apresentados num grupo inválido correspondente. Para implementar a melhor atualização disponível para o novo grupo definido pelo utilizador a partir desta vista, selecione Implementar junto ao grupo.

Para obter mais informações sobre etiquetas e grupos, veja Gerir grupos de dispositivos.

Implementar atualização

  1. Assim que o grupo for criado, deverá ver uma nova atualização disponível para o grupo de dispositivos, com uma ligação para a atualização em Melhor Atualização (poderá ter de Atualizar uma vez).

    Para obter mais informações sobre conformidade, veja Conformidade com a Atualização de Dispositivos.

  2. Selecione o grupo de destino clicando no nome do grupo. Será direcionado para os detalhes do grupo em Noções básicas do grupo.

    Detalhes do grupo

  3. Para iniciar a implementação, aceda ao separador Implementação atual. Selecione a ligação implementar junto à atualização pretendida na secção Atualizações disponíveis. A melhor atualização disponível para um determinado grupo será indicada com um realce "Best".

    Selecionar atualização

  4. Agende a implementação para começar imediatamente ou no futuro e, em seguida, selecione Criar.

    Criar implementação

  5. O Estado em Detalhes da implementação deve mudar para Ativo e a atualização implementada deve ser marcada com "(deploying)".

    Implementação ativa

  6. Ver o gráfico de conformidade. Deverá ver que a atualização está em curso.

  7. Depois de o seu dispositivo ser atualizado com êxito, deverá ver que o gráfico de conformidade e os detalhes da implementação são atualizados para refletir o mesmo.

    Atualização com êxito

Monitorizar uma implementação de atualização

  1. Selecione o separador Histórico de implementações na parte superior da página.

    Histórico de Implementações

  2. Selecione a ligação de detalhes junto à implementação que criou.

    Detalhes da implementação

  3. Selecione Atualizar para ver os detalhes de estado mais recentes.

Concluiu uma atualização de proxy ponto a ponto com êxito com a Atualização de Dispositivos para Hub IoT.

Limpar os recursos

Quando já não precisar deles, limpe a conta de Atualização de Dispositivos, a instância, o hub IoT e o dispositivo IoT.

Passos seguintes