Aggiornare IoT Edge

Si applica a:Segno di spunta IoT Edge 1.5 IoT Edge 1.5 Segno di spunta IoT Edge 1.4 IoT Edge 1.4

Importante

IoT Edge 1.5 LTS e IoT Edge 1.4 LTS sono versioni supportate. IoT Edge 1.4 LTS è di fine vita il 12 novembre 2024.

Con la disponibilità di versioni sempre nuove del servizio IoT Edge, aggiornare i dispositivi IoT Edge per le funzionalità ed i miglioramenti della sicurezza più recenti. Questo articolo fornisce informazioni su come aggiornare i dispositivi IoT Edge quando è disponibile una nuova versione.

Se si vuole passare a una versione più recente, è necessario aggiornare due componenti logici di un dispositivo IoT Edge.

  • Sottosistema di sicurezza: viene eseguito nel dispositivo, gestisce le attività basate sulla sicurezza e avvia i moduli all'avvio del dispositivo. Il sottosistema di sicurezza può essere aggiornato solo dal dispositivo stesso.

  • Runtime di IoT Edge: il runtime di IoT Edge è costituito dai moduli dell'hub IoT Edge (edgeHub) e dell'agente IoT Edge (edgeAgent). A seconda della struttura della distribuzione, il runtime può essere aggiornato dal dispositivo o in remoto.

Come eseguire l'aggiornamento

Usare le sezioni di questo articolo per aggiornare sia il sottosistema di sicurezza che i contenitori di runtime in un dispositivo.

Versioni patch

Quando si esegue l'aggiornamento tra le versioni patch , ad esempio da 1.4.1 a 1.4.2, l'ordine di aggiornamento non è importante. È possibile aggiornare il sottosistema di sicurezza o i contenitori di runtime prima o dopo l'altro. Per eseguire l'aggiornamento tra le versioni patch:

  1. Aggiornare il sottosistema di sicurezza
  2. Aggiornare i contenitori di runtime
  3. Verificare la corrispondenza delle versioni

È possibile risolvere i problemi del processo di aggiornamento in qualsiasi momento.

Versioni principali o secondarie

Quando si esegue l'aggiornamento tra le versioni principali o secondarie, ad esempio dalla versione 1.4 alla 1.5, aggiornare sia il sottosistema di sicurezza che i contenitori di runtime. Prima di una versione, viene testato il sottosistema di sicurezza e la combinazione di versione del contenitore di runtime. Per eseguire l'aggiornamento tra le versioni principali o secondarie del prodotto:

  1. Nel dispositivo arrestare IoT Edge usando il comando sudo systemctl stop iotedge e la disinstallazione.

  2. Nel dispositivo aggiornare il motore del contenitore, Docker o Moby.

  3. Nel dispositivo installare IoT Edge.

    Se si importa una configurazione precedente usando iotedge config import, modificare l'immagine [agent.config] del file generato /etc/aziot/config.toml per usare l'immagine 1.4 per edgeAgent.

    Per altre informazioni, vedere Configurare le impostazioni del dispositivo IoT Edge.

  4. In hub IoT aggiornare la distribuzione del modulo per fare riferimento ai moduli di sistema più recenti.

  5. Nel dispositivo avviare IoT Edge usando sudo iotedge config apply.

È possibile risolvere i problemi del processo di aggiornamento in qualsiasi momento.

Aggiornare il sottosistema di sicurezza

Il sottosistema di sicurezza IoT Edge include un set di componenti nativi che devono essere aggiornati usando la gestione pacchetti nel dispositivo IoT Edge.

Controllare la versione del sottosistema di sicurezza in esecuzione nel dispositivo usando il comando iotedge version. Se si usa IoT Edge per Linux in Windows, è necessario eseguire SSH nella macchina virtuale Linux per verificare la versione.

Nei dispositivi Linux x64 usare apt-get o lo strumento di gestione pacchetti appropriato per aggiornare il sottosistema di sicurezza alla versione più recente.

Aggiornamentoapt:

sudo apt-get update

Nota

Per istruzioni su come ottenere la configurazione più recente del repository da Microsoft, vedere i passaggi preliminari per installare IoT Edge.

Verificare quali versioni di IoT Edge sono disponibili:

apt list -a aziot-edge

Aggiornare IoT Edge:

sudo apt-get install aziot-edge defender-iot-micro-agent-edge

L'esecuzione apt-get install aziot-edge di aggiorna il sottosistema di sicurezza e installa il servizio di identità, aziot-identity-service, come dipendenza necessaria.

È consigliabile installare il micro agente con l'agente Edge per abilitare il monitoraggio della sicurezza e la protezione avanzata dei dispositivi Perimetrali. Per altre informazioni su Microsoft Defender per IoT, vedere Che cos'è Microsoft Defender per IoT per i generatori di dispositivi.

Quindi, riapplicare la configurazione per assicurarsi che il sistema sia completamente aggiornato.

sudo iotedge config apply

Aggiornare i contenitori del runtime

Il modo in cui si aggiornano i contenitori dell'agente IoT Edge e dell'hub IoT Edge dipende dal fatto che si usino tag in sequenza (ad esempio 1.5) o tag specifici (ad esempio 1.5.1) nella distribuzione.

Controllare la versione dei moduli dell'agente IoT Edge e dell'hub di IoT Edge attualmente presenti nel dispositivo usando i comandi iotedge logs edgeAgent o iotedge logs edgeHub. Se si usa IoT Edge per Linux in Windows, è necessario eseguire SSH nella macchina virtuale Linux per controllare le versioni del modulo di runtime.

Screenshot della posizione in cui trovare la versione del contenitore nei log della console.

Informazioni sui tag di IoT Edge

Le immagini dell'agente IoT Edge e dell'hub IoT Edge sono contrassegnate con la versione di IoT Edge a cui sono associati. Esistono due diversi modi per usare i tag con le immagini di runtime:

  • Tag di versioni. Vengono usati solo i primi due valori del numero di versione per ottenere l'immagine più recente corrispondente a tali cifre. Ad esempio, la versione 1.5 viene aggiornata ogni volta che è presente una nuova versione in modo che punti alla versione 1.5.x più recente. Se il runtime del contenitore nel dispositivo IoT Edge esegue nuovamente il pull dell'immagine, i moduli del runtime vengono aggiornati alla versione più recente. Nelle distribuzioni dal portale di Azure vengono usati i tag di versioni per impostazione predefinita. Questo approccio è consigliato a scopo di sviluppo.

  • Tag specifici. Vengono usati tutti e tre i valori del numero di versione per impostare in modo esplicito la versione dell'immagine. Ad esempio, 1.5.0 non cambierà dopo la versione iniziale. Quando si è pronti per l'aggiornamento, è possibile dichiarare un nuovo numero di versione nel manifesto della distribuzione. Questo approccio è consigliato a scopo di produzione.

Aggiornare un'immagine con tag di versioni

Se si usano tag in sequenza nella distribuzione (ad esempio, mcr.microsoft.com/azureiotedge-hub:1.5), è necessario forzare il runtime del contenitore nel dispositivo per eseguire il pull della versione più recente dell'immagine.

Eliminare la versione locale dell'immagine dal dispositivo IoT Edge. Nei computer Windows, la disinstallazione del sottosistema di sicurezza rimuove anche le immagini di runtime, quindi non è necessario eseguire di nuovo questo passaggio.

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

Potrebbe essere necessario usare il flag force -f per rimuovere le immagini.

Il servizio IoT Edge esegue il pull delle versioni più recenti delle immagini di runtime e le avvia automaticamente nel dispositivo.

Aggiornare un'immagine con tag specifici

Se si usano tag specifici nella distribuzione (ad esempio, mcr.microsoft.com/azureiotedge-hub:1.4), è sufficiente aggiornare il tag nel manifesto della distribuzione e applicare le modifiche al dispositivo.

  1. Nella hub IoT nel portale di Azure selezionare il dispositivo IoT Edge e selezionare Imposta moduli.

  2. Nella scheda Moduli selezionare Impostazioni di runtime.

  3. In Impostazioni di runtime aggiornare il valore dell'URI dell'immagine nella sezione Agente Edge con la versione desiderata. Ad esempio, mcr.microsoft.com/azureiotedge-agent:1.5 Non selezionare Ancora Applica .

  4. Selezionare la scheda Hub Edge e aggiornare il valore dell'URI dell'immagine con la stessa versione desiderata. Ad esempio: mcr.microsoft.com/azureiotedge-hub:1.5.

  5. Selezionare Applica per salvare le modifiche.

  6. Selezionare Rivedi e crea, esaminare la distribuzione come illustrato nel file JSON e selezionare Crea.

Aggiornare gli URI del modulo partner

Se si usano i moduli partner, aggiornare le distribuzioni del modulo con gli URI di immagine forniti dal partner. Per ottenere l'URI dell'immagine del contenitore aggiornato, contattare l'editore del modulo IoT Edge. Aggiornare le configurazioni del dispositivo con il nuovo URI immagine fornito dall'editore.

  1. Accedere al portale di Azure e passare all'hub IoT.
  2. Nel riquadro sinistro selezionare Dispositivi nel menu Gestione dispositivi.
  3. Selezionare il dispositivo IoT Edge che usa il modulo partner dall'elenco.
  4. Sulla barra superiore selezionare Imposta moduli.
  5. Scegliere il modulo partner IoT Edge che si vuole aggiornare con il nuovo URI dell'immagine.
  6. Aggiornare il valore dell'URI dell'immagine con il nuovo URI immagine fornito dal server di pubblicazione.
  7. Selezionare Applica per salvare le modifiche.
  8. Selezionare Rivedi e crea, esaminare la distribuzione come illustrato nel file JSON e selezionare Crea.

Verificare la corrispondenza delle versioni

  1. Nel dispositivo usare iotedge version per controllare la versione del sottosistema di sicurezza. L'output include i numeri di versione principale, secondaria e di revisione. Ad esempio, iotedge 1.4.2.

  2. Nelle impostazioni del runtime di distribuzione del dispositivo verificare che le versioni dell'URI dell'immagine edgeHub e edgeAgent corrispondano alla versione principale e secondaria del sottosistema di sicurezza. Se la versione del sottosistema di sicurezza è 1.4.2, le versioni dell'immagine saranno 1.4. Ad esempio, mcr.microsoft.com/azureiotedge-hub:1.4 e mcr.microsoft.com/azureiotedge-agent:1.4.

Nota

Aggiornare il sottosistema di sicurezza di IoT Edge e i contenitori di runtime alla stessa versione supportata. Anche se le versioni non corrispondenti sono supportate, non sono state testate tutte le combinazioni di versioni.

Per trovare la versione più recente di Azure IoT Edge, fare riferimento alle versioni di Azure IoT Edge.

Risoluzione dei problemi

È possibile visualizzare i log del sistema in qualsiasi momento eseguendo i comandi seguenti dal dispositivo.

  • Iniziare a risolvere i problemi usando il comando check . Esegue una raccolta di test di configurazione e connettività per problemi comuni.

    sudo iotedge check --verbose
    
  • Per visualizzare lo stato del sistema IoT Edge, eseguire:

    sudo iotedge system status 
    
  • Per visualizzare i log dei componenti host, eseguire:

    sudo iotedge system logs
    
  • Per verificare la presenza di problemi ricorrenti segnalati con edgeAgent e edgeHub, eseguire:

    Assicurarsi di sostituire <module> con il nome del modulo. Se non sono presenti problemi, non viene visualizzato alcun output.

    sudo iotedge logs <module>
    

Per altre informazioni, vedere Risolvere i problemi del dispositivo IoT Edge.

Passaggi successivi

Visualizzare le versioni di Azure IoT Edge più recenti.

Rimanere aggiornati con gli aggiornamenti e gli annunci recenti nel blog internet delle cose