Tutorial: Atualização de Dispositivo do Azure para Hub IoT usando o agente de pacote do Ubuntu 22.04
A Atualização de Dispositivo para Hub IoT do Azure é compatível com atualizações baseadas em imagem, pacote e script. Este tutorial demonstra uma atualização de pacote de ponta a ponta usando o agente de pacote Ubuntu Server 22.04 x64 de atualização do Azure IoT Edge.
As atualizações baseadas em pacote são voltadas para alterar apenas um componente ou aplicativo específico do dispositivo. Essas atualizações têm menor consumo de largura de banda e tempos de download e instalação mais curtos do que as atualizações baseadas em imagem, incorrendo em menos tempo de inatividade do dispositivo e evitando a sobrecarga de criar imagens. Em uma atualização baseada em pacote, um manifesto APT fornece ao agente de Atualização de Dispositivo as informações necessárias para baixar e instalar pacotes especificados e suas dependências de um repositório designado.
Este tutorial explica como instalar o Microsoft Defender para IoT, mas você pode atualizar outros pacotes usando etapas semelhantes, como o próprio IoT Edge ou o mecanismo de contêiner que ele usa. As ferramentas e os conceitos neste tutorial se aplicam mesmo se você usar uma configuração de plataforma do sistema operacional diferente.
Neste tutorial, você:
- Baixar e instalar um agente de Atualização de Dispositivo e as respectivas dependências.
- Adicione uma marca de grupo ao seu dispositivo.
- Importe a atualização do pacote.
- Implante a atualização do pacote.
- Exiba o histórico de implantação de atualização.
Pré-requisitos
- Uma conta de Atualização de Dispositivo e uma instância configurada com um hub IoT.
- Um dispositivo do Azure IoT Edge registrado no hub IoT com a cadeia de conexão copiada.
Preparar o dispositivo
Por conveniência, este tutorial usa um modelo ARM (Azure Resource Manager) baseado em cloud-init para configurar rapidamente uma VM (máquina virtual) Ubuntu 22.04 LTS. O modelo instala o runtime do IoT Edge e o agente de pacote de Atualização de Dispositivo e configura automaticamente o dispositivo com informações de provisionamento usando a cadeia de conexão de dispositivo do IoT Edge fornecida. O uso do modelo do ARM também evita a necessidade de iniciar uma sessão de SSH (secure shell) para concluir a instalação.
Para executar o modelo, selecione o seguinte botão Implantar no Azure:
Preencha as seguintes informações:
- Assinatura: a assinatura ativa do Azure na qual implantar a VM.
- Grupo de recursos: um grupo de recursos existente ou novo para conter a VM e seus recursos.
- Região: a região geográfica na qual implantar a VM, que usa como padrão a localização do grupo de recursos.
- Prefixo de rótulo Dns: um valor para prefixar o nome do host da VM.
- Nome de usuário administrador: um nome de usuário para fornecer privilégios raiz na implantação.
- Tipo de autenticação: escolha sshPublicKey ou senha.
- Senha de administrador ou Fonte de chave pública SSH, Tipo de chave SSH, Nome do par de chaves: as informações de senha ou chave pública SSH com base na escolha do tipo de autenticação.
- Tamanho da VM: o tamanho da VM a ser implantada.
- Versão do sistema operacional Ubuntu: deixe em 22_04-lts.
- Cadeia de conexão do dispositivo: a cadeia de conexão do IoT Edge copiada anteriormente.
Selecione Revisar + criar na parte inferior da página. Quando a validação for bem-sucedida, selecione Criar para iniciar a implantação do modelo.
Verifique se a implantação foi concluída com sucesso e permita que alguns minutos após a implantação seja concluída para que a pós-instalação e a configuração terminem de instalar o IoT Edge e o agente de atualização do pacote do dispositivo.
Você deve ver um recurso de VM no grupo de recursos selecionado. Observe o nome do computador, que está no formato
vm-0000000000000
. Selecione o nome da VM e, na página Visão geral da VM, anote o nome DNS, que está no formato<dnsLabelPrefix>
.<location>.cloudapp.azure.com
.
Dica
Para SSH nessa VM após a instalação, use o nome DNS associado com o comando ssh <admin username>@<DNS name>
.
Instalar o agente de Atualização de Dispositivo na VM
Importante
O software de Atualização de Dispositivo do Azure para Hub IoT está sujeito aos seguintes termos de licença:
Leia os termos de licença antes de usar o agente. A instalação e o uso do agente constituem a aceitação desses termos. Se você não concordar com os termos de licença, não use o agente de Atualização de Dispositivo.
Para instalar o agente de Atualização de Dispositivo na VM, execute o comando a seguir.
sudo apt-get install deviceupdate-agent
Abra o arquivo de detalhes de configuração do du-config.json usando o comando a seguir.
sudo nano /etc/adu/du-config.json
No arquivo, substitua todos os valores
<placeholder>
por sua própria configuração. DefinaconnectionType
como"AIS"
econnectionData
como uma cadeia de caracteres vazia. Para obter um arquivo de exemplo, consulte Conteúdo do arquivo de exemplo du-config.json.Reinicie o agente de Atualização de Dispositivo executando o comando a seguir.
sudo systemctl restart deviceupdate-agent
Observação
Se você usou o agente do simulador neste dispositivo anteriormente, execute o comando a seguir para invocar o manipulador do APT e implantar atualizações de pacotes no ar para este tutorial.
sudo /usr/bin/AducIotAgent --register-content-handler /var/lib/adu/extensions/sources/libmicrosoft_apt_1.so --update-type 'microsoft/apt:1'
Adicionar uma marca de grupo ao seu dispositivo
A Atualização de Dispositivo organiza automaticamente dispositivos em grupos com base em suas marcas atribuídas e propriedades de compatibilidade. Cada dispositivo pode pertencer a apenas um grupo, mas os grupos podem ter vários subgrupos para classificar classes de dispositivo diferentes. Para obter mais informações sobre as marcas e os grupos, consulte Gerenciar grupos de dispositivos.
Na página do hub IoT do portal do Azure para sua instância de Atualização de Dispositivo, selecione Gerenciamento de dispositivo>Dispositivos na navegação à esquerda.
Vá para Dispositivo gêmeo ou gêmeo da Identidade do módulo para o seu dispositivo.
No arquivo do agente dispositivo gêmeo ou Atualização de Dispositivo Gêmeo da Identidade do módulo, exclua todos os valores de marca de Atualização de Dispositivo existentes definindo-os como
null
e, em seguida, adicione a nova marca de grupo atualização de dispositivo a seguir.Se você estiver usando a identidade do dispositivo com o agente de Atualização de Dispositivo, faça essas alterações no dispositivo gêmeo. Se você estiver usando uma identidade de módulo com o módulo do agente de Atualização de Dispositivo, adicione a marca no Gêmeo da Identidade do módulo.
"tags": { "ADUGroup": "<GroupTagValue>" },
A captura de tela a seguir mostra onde no arquivo para adicionar a marca.
Selecione Salvar.
Importar a atualização
O arquivo Tutorial_IoTEdge_PackageUpdate.zip tem os arquivos necessários para o tutorial.
Baixe o arquivo Tutorial_IoTEdge_PackageUpdate.zip da seção Ativos da versão mais recente na página Versões de Atualização de Dispositivo do GitHub.
Descompacte o arquivo . A pasta Tutorial_IoTEdge_PackageUpdate extraída contém o manifesto APT de exemplo sample-defender-iot-apt-manifest.json e seu manifesto de importação sample-defender-iot--importManifest.json correspondente.
Na página do hub IoT do portal do Azure para sua instância de Atualização de Dispositivo, selecione Gerenciamento de dispositivo>Atualizações na navegação à esquerda.
Na página Atualizações, selecione Importar uma nova atualização.
Na página Importar atualização, selecione Selecionar no contêiner de armazenamento.
Na página Contas de Armazenamento, selecione uma conta de armazenamento existente ou crie uma conta selecionando Conta de armazenamento.
Na página Contêineres, selecione um contêiner existente ou crie um novo contêiner selecionando Contêiner. Você usa o contêiner para preparar os arquivos de atualização para importação.
Dica
Para evitar a importação acidental de arquivos de atualizações anteriores, use um novo contêiner sempre que importar uma atualização. Se você não usar um novo contêiner, exclua todos os arquivos do contêiner existente.
Na página do contêiner, selecione Carregar, arrastar e soltar ou procurar e selecionar os arquivos de atualização que você baixou e selecione Carregar. Depois de carregarem, os arquivos serão exibidos na página do contêiner.
Examine e selecione os arquivos a serem importados e selecione Selecionar.
Na tela Importar atualização, selecione Importar atualização.
O processo de importação começa e a tela muda para a tela Atualizações. Depois que a importação for bem-sucedida, ela será exibida na guia Atualizações. Para obter mais informações sobre o processo de importação, consulte Importar uma atualização para a Atualização de Dispositivo.
Selecione o grupo de dispositivos
Você pode usar a marca de grupo aplicada ao dispositivo para implantar a atualização no grupo de dispositivos. Selecione a guia Grupos e Implantações na parte superior da página Atualizações para exibir a lista de grupos e implantações 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. Para obter mais informações, confira a Conformidade da Atualização de Dispositivo.
Em Nome do grupo, você vê uma lista de todos os grupos de dispositivos para dispositivos conectados a esse hub IoT e suas atualizações disponíveis, com links para implantar as atualizações em Status. Todos os dispositivos que não atendem aos requisitos de classe de dispositivo de um grupo aparecem em um grupo inválido correspondente. Para obter mais informações sobre as marcas e os grupos, consulte Gerenciar grupos de dispositivos.
Você deverá ver o grupo de dispositivos que contém o dispositivo configurado neste tutorial, juntamente com as atualizações disponíveis para os dispositivos no grupo. Talvez seja necessário atualizar a página. Para implantar a melhor atualização disponível para o grupo nessa exibição, selecione Implantar ao lado do grupo.
Implantar a atualização
Na página Detalhes do Grupo, selecione a guia Implantação atual e, em seguida, selecione Implantar ao lado da atualização desejada na seção Atualizações disponíveis. A melhor atualização disponível para o grupo é indicada com um Melhor em destaque.
Na página Criar implantação, agende sua implantação para iniciar imediatamente ou no futuro e selecione Criar.
Dica
Por padrão, a data e a hora de Início são 24 horas a partir do horário atual. Selecione uma data e hora diferentes se desejar que a implantação comece mais cedo.
Na página Detalhes do Grupo, em Detalhes da Implantação, o Status se torna Ativo. Em Atualizações disponíveis, a atualização selecionada é marcada com (implantando).
Na guia Grupos e Implantações da página Atualizações, exiba o gráfico de conformidade para ver se a atualização está em andamento. Depois que o dispositivo for atualizado com êxito, o gráfico de conformidade e os detalhes da implantação serão atualizados para refletir esse status.
Exibir o histórico de implantação de atualização
Selecione a guia Histórico de implantação na parte superior da página Detalhes do Grupo e selecione o link de detalhes ao lado da implantação que você criou.
Na página Detalhes da Implantação, selecione o ícone Atualizar para exibir os detalhes de status mais recentes.
Limpar os recursos
Quando você não precisar mais dos recursos criados para este tutorial, poderá excluí-los.
- No portal do Azure, navegue até o grupo de recursos que contém os recursos.
- Se você quiser excluir todos os recursos do grupo, selecione Excluir grupo de recursos.
- Se você quiser excluir apenas alguns dos recursos, use as caixas de seleção para selecionar os recursos e selecione Excluir.