Partilhar via


Atualizar o IoT Edge

Aplica-se a: Marca de verificação do IoT Edge 1.5 IoT Edge 1.5 Marca de verificação do IoT Edge 1.4 IoT Edge 1.4

Importante

IoT Edge 1.5 LTS e IoT Edge 1.4 LTS são versões suportadas. O IoT Edge 1.4 LTS termina a vida útil em 12 de novembro de 2024.

À medida que o serviço IoT Edge lança novas versões, atualize os seus dispositivos IoT Edge para obter as funcionalidades e melhorias de segurança mais recentes. Este artigo fornece informações sobre como atualizar seus dispositivos IoT Edge quando uma nova versão estiver disponível.

Dois componentes lógicos de um dispositivo IoT Edge precisam ser atualizados se você quiser mudar para uma versão mais recente.

  • Subsistema de segurança - Ele é executado no dispositivo, lida com tarefas baseadas em segurança e inicia os módulos quando o dispositivo é iniciado. O subsistema de segurança só pode ser atualizado a partir do próprio dispositivo.

  • Tempo de execução do IoT Edge - O tempo de execução do IoT Edge é composto pelos módulos IoT Edge hub (edgeHub) e IoT Edge agent (edgeAgent). Dependendo de como você estrutura sua implantação, o tempo de execução pode ser atualizado do dispositivo ou remotamente.

Como atualizar

Use as seções deste artigo para atualizar o subsistema de segurança e os contêineres de tempo de execução em um dispositivo.

Lançamentos de patches

Quando você atualiza entre versões de patch , por exemplo 1.4.1 para 1.4.2, a ordem de atualização não é importante. Você pode atualizar o subsistema de segurança ou os contêineres de tempo de execução antes ou depois do outro. Para atualizar entre versões de patch:

  1. Atualizar o subsistema de segurança
  2. Atualizar os contêineres de tempo de execução
  3. Verificar se as versões correspondem

Você pode solucionar problemas do processo de atualização a qualquer momento.

Lançamentos maiores ou menores

Ao atualizar entre versões principais ou secundárias, por exemplo, de 1.4 para 1.5, atualize o subsistema de segurança e os contêineres de tempo de execução. Antes de uma versão, testamos o subsistema de segurança e a combinação de versão do contêiner de tempo de execução. Para atualizar entre versões principais ou secundárias de produtos:

  1. No dispositivo, pare o IoT Edge usando o comando sudo systemctl stop iotedge e desinstale.

  2. No dispositivo, atualize seu mecanismo de contêiner, Docker ou Moby.

  3. No dispositivo, instale o IoT Edge.

    Se você estiver importando uma configuração antiga usando iotedge config importo , modifique a imagem [agent.config] do arquivo gerado /etc/aziot/config.toml para usar a imagem 1.4 para edgeAgent.

    Para obter mais informações, consulte Definir configurações de dispositivo do IoT Edge.

  4. No Hub IoT, atualize a implantação do módulo para fazer referência aos módulos de sistema mais recentes.

  5. No dispositivo, inicie o IoT Edge usando sudo iotedge config applyo .

Você pode solucionar problemas do processo de atualização a qualquer momento.

Atualizar o subsistema de segurança

O subsistema de segurança do IoT Edge inclui um conjunto de componentes nativos que precisam ser atualizados usando o gerenciador de pacotes no dispositivo IoT Edge.

Verifique a versão do subsistema de segurança em execução no seu dispositivo usando o comando iotedge version. Se você estiver usando o IoT Edge para Linux no Windows, precisará SSH na máquina virtual Linux para verificar a versão.

Em dispositivos Linux x64, use apt-get ou seu gerenciador de pacotes apropriado para atualizar o subsistema de segurança para a versão mais recente.

Atualização apt:

sudo apt-get update

Nota

Para obter instruções sobre como obter a configuração de repositório mais recente da Microsoft, consulte as etapas preliminares para instalar o IoT Edge.

Verifique quais versões do IoT Edge estão disponíveis:

apt list -a aziot-edge

Atualizar o IoT Edge:

sudo apt-get install aziot-edge

A execução apt-get install aziot-edge atualiza o subsistema de segurança e instala o serviço de identidade, aziot-identity-service, como uma dependência necessária.

Em seguida, reaplique a configuração para garantir que o sistema esteja totalmente atualizado.

sudo iotedge config apply

Atualizar os contêineres de tempo de execução

A maneira como você atualiza o agente do IoT Edge e os contêineres do hub do IoT Edge depende se você usa marcas contínuas (como 1.5) ou tags específicas (como 1.5.1) em sua implantação.

Verifique a versão do agente do IoT Edge e dos módulos do hub do IoT Edge atualmente no seu dispositivo usando os comandos iotedge logs edgeAgent ou iotedge logs edgeHub. Se você estiver usando o IoT Edge para Linux no Windows, precisará SSH na máquina virtual Linux para verificar as versões do módulo de tempo de execução.

Captura de tela de onde encontrar a versão do contêiner nos logs do console.

Compreender as tags do IoT Edge

As imagens do agente do IoT Edge e do hub do IoT Edge são marcadas com a versão do IoT Edge à qual estão associadas. Há duas maneiras diferentes de usar tags com as imagens de tempo de execução:

  • Etiquetas contínuas - Utilize apenas os dois primeiros valores do número da versão para obter a imagem mais recente que corresponda a esses dígitos. Por exemplo, o 1.5 é atualizado sempre que há uma nova versão para apontar para a versão 1.5.x mais recente. Se o tempo de execução do contêiner no dispositivo IoT Edge extrair a imagem novamente, os módulos de tempo de execução serão atualizados para a versão mais recente. Implantações do portal do Azure padrão para marcas contínuas. Esta abordagem é sugerida para fins de desenvolvimento.

  • Tags específicas - Use os três valores do número da versão para definir explicitamente a versão da imagem. Por exemplo, a versão 1.5.0 não será alterada após sua versão inicial. Você pode declarar um novo número de versão no manifesto de implantação quando estiver pronto para atualizar. Esta abordagem é sugerida para fins de produção.

Atualizar uma imagem de etiqueta contínua

Se você usar tags contínuas em sua implantação (por exemplo, mcr.microsoft.com/azureiotedge-hub:1.5), precisará forçar o tempo de execução do contêiner em seu dispositivo para extrair a versão mais recente da imagem.

Exclua a versão local da imagem do seu dispositivo IoT Edge. Em máquinas Windows, desinstalar o subsistema de segurança também remove as imagens de tempo de execução, portanto, você não precisa dar essa etapa novamente.

docker rmi mcr.microsoft.com/azureiotedge-hub:1.5
docker rmi mcr.microsoft.com/azureiotedge-agent:1.5

Pode ser necessário usar o sinalizador de força -f para remover as imagens.

O serviço IoT Edge extrai as versões mais recentes das imagens de tempo de execução e as inicia automaticamente no seu dispositivo novamente.

Atualizar uma imagem de tag específica

Se você usar tags específicas em sua implantação (por exemplo, mcr.microsoft.com/azureiotedge-hub:1.4), tudo o que você precisa fazer é atualizar a tag no manifesto de implantação e aplicar as alterações ao seu dispositivo.

  1. No Hub IoT no portal do Azure, selecione seu dispositivo IoT Edge e selecione Definir módulos.

  2. Na guia Módulos, selecione Configurações de tempo de execução.

  3. Em Configurações de tempo de execução, atualize o valor de URI de imagem na seção Agente de Borda com a versão desejada. Por exemplo, mcr.microsoft.com/azureiotedge-agent:1.5 não selecione Aplicar ainda.

  4. Selecione a guia Edge Hub e atualize o valor do URI da imagem com a mesma versão desejada. Por exemplo, mcr.microsoft.com/azureiotedge-hub:1.5.

  5. Selecione Aplicar para salvar as alterações.

  6. Selecione Revisar + criar, revise a implantação conforme visto no arquivo JSON e selecione Criar.

Atualizar URIs do módulo de parceiro

Se você usar módulos de parceiro, atualize suas implantações de módulo com URIs de imagem fornecidos pelo parceiro. Entre em contato com o editor do módulo IoT Edge para obter o URI da imagem de contêiner atualizada. Atualize as configurações do dispositivo com o novo URI de imagem fornecido pelo editor.

  1. Entre no portal do Azure e navegue até seu Hub IoT.
  2. No painel esquerdo, selecione Dispositivos no menu Gerenciamento de dispositivos.
  3. Selecione o dispositivo IoT Edge que usa o módulo de parceiro na lista.
  4. Na barra superior, selecione Definir módulos.
  5. Escolha o módulo de parceiro do IoT Edge que você deseja atualizar com o novo URI de imagem.
  6. Atualize o valor do URI da imagem com o novo URI da imagem fornecido pelo editor.
  7. Selecione Aplicar para salvar as alterações.
  8. Selecione Revisar + criar, revise a implantação conforme visto no arquivo JSON e selecione Criar.

Verificar se as versões correspondem

  1. No dispositivo, use iotedge version para verificar a versão do subsistema de segurança. A saída inclui os números de versão principal, secundária e de revisão. Por exemplo, iotedge 1.4.2.

  2. Nas configurações de tempo de execução da implantação do dispositivo, verifique se as versões do URI da imagem edgeHub e edgeAgent correspondem à versão principal e secundária do subsistema de segurança. Se a versão do subsistema de segurança for 1.4.2, as versões de imagem serão 1.4. Por exemplo, mcr.microsoft.com/azureiotedge-hub:1.4 e mcr.microsoft.com/azureiotedge-agent:1.4.

Nota

Atualize o subsistema de segurança do IoT Edge e os contêineres de tempo de execução para a mesma versão de lançamento suportada. Embora sejam suportadas versões desajustadas, não testámos todas as combinações de versões.

Para encontrar a versão mais recente do Azure IoT Edge, consulte Versões do Azure IoT Edge.

Resolução de Problemas

Você pode visualizar os logs do seu sistema a qualquer momento, executando os seguintes comandos do seu dispositivo.

  • Inicie a solução de problemas usando o comando check . Ele executa uma coleção de testes de configuração e conectividade para problemas comuns.

    sudo iotedge check --verbose
    
  • Para exibir o status do sistema IoT Edge, execute:

    sudo iotedge system status 
    
  • Para exibir logs de componentes do host, execute:

    sudo iotedge system logs
    
  • Para verificar se há problemas recorrentes relatados com o edgeAgent e o edgeHub, execute:

    Certifique-se de substituir <module> pelo seu próprio nome de módulo. Se não houver problemas, você não verá nenhuma saída.

    sudo iotedge logs <module>
    

Para obter mais informações, consulte Solucionar problemas do dispositivo IoT Edge.

Próximos passos

Veja as versões mais recentes do Azure IoT Edge.

Mantenha-se atualizado com atualizações e anúncios recentes no blog da Internet das Coisas