Aggiornare IoT Edge
Si applica a: IoT Edge 1.5 IoT Edge 1.4
Importante
IoT Edge 1.5 LTS e IoT Edge 1.4 LTS sono versioni supportate. IoT Edge 1.4 LTS raggiungerà il 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:
- Aggiornare il sottosistema di sicurezza
- Aggiornare i contenitori di runtime
- 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:
Nel dispositivo arrestare IoT Edge usando il comando
sudo systemctl stop iotedge
e la disinstallazione.Nel dispositivo aggiornare il motore del contenitore, Docker o Moby.
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.
In hub IoT aggiornare la distribuzione del modulo per fare riferimento ai moduli di sistema più recenti.
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
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.
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.
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, il tag 1.5 viene aggiornato ogni volta che è disponibile una nuova versione in modo da puntare 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 per finalità 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, il tag 1.5.0 non verrà modificato dopo il rilascio iniziale. Quando si è pronti per l'aggiornamento, è possibile dichiarare un nuovo numero di versione nel manifesto della distribuzione. Questo approccio è consigliato per finalità 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.
Nella hub IoT nel portale di Azure selezionare il dispositivo IoT Edge e selezionare Imposta moduli.
Nella scheda Moduli selezionare Impostazioni di runtime.
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 .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
.Selezionare Applica per salvare le modifiche.
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.
- Accedere al portale di Azure e passare all'hub IoT.
- Nel riquadro sinistro selezionare Dispositivi nel menu Gestione dispositivi.
- Selezionare il dispositivo IoT Edge che usa il modulo partner dall'elenco.
- Sulla barra superiore selezionare Imposta moduli.
- Scegliere il modulo partner IoT Edge che si vuole aggiornare con il nuovo URI dell'immagine.
- Aggiornare il valore dell'URI dell'immagine con il nuovo URI immagine fornito dal server di pubblicazione.
- Selezionare Applica per salvare le modifiche.
- Selezionare Rivedi e crea, esaminare la distribuzione come illustrato nel file JSON e selezionare Crea.
Verificare la corrispondenza delle versioni
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.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