Condividi tramite


Esercitazione: Aggiornamento del dispositivo per hub IoT di Azure usando l'agente di riferimento del simulatore Ubuntu (18.04 x64)

L'aggiornamento del hub IoT di Azure supporta gli aggiornamenti basati su immagini, pacchetti e script.

Gli aggiornamenti delle immagini offrono un livello di attendibilità superiore nello stato finale del dispositivo. In genere è più semplice replicare i risultati di un aggiornamento delle immagini tra un ambiente di preproduzione e un ambiente di produzione perché non pone gli stessi problemi dei pacchetti e delle relative dipendenze. A causa della loro natura atomica, è anche possibile adottare facilmente un modello di failover A/B.

Questa esercitazione illustra i passaggi per completare un aggiornamento completo basato su immagini, usando l'Aggiornamento dei dispositivi per l'hub IoT.

In questa esercitazione si apprenderà come:

  • Scaricare e installare un'immagine.
  • Aggiungere un tag al dispositivo IoT.
  • Importare un aggiornamento.
  • Creare un gruppo di dispositivi.
  • Implementare l'aggiornamento dell'immagine.
  • Monitorare la distribuzione degli aggiornamenti.

Prerequisiti

Se non l'hai già fatto, crea un account di Device Update e un'istanza, e configura un hub IoT.

Scaricare il file ZIP denominato Tutorial_Simulator.zip da Release Assets nella versione più recente e decomprimerlo.

Aggiungere un dispositivo all'hub IoT di Azure

Dopo che l'agente di Aggiornamento dispositivi è in esecuzione in un dispositivo IoT, è necessario aggiungere il dispositivo all'hub IoT. Dall'hub IoT viene generata una stringa di connessione per un determinato dispositivo.

  1. Dal portale di Azure avviare l'aggiornamento dei dispositivi per l'hub IoT.

  2. Creare un nuovo dispositivo.

  3. Nel riquadro sinistro, passare a i Dispositivi . Quindi seleziona Nuovo.

  4. In ID dispositivo immettere un nome per il dispositivo. Assicurarsi che la casella di controllo Chiavi generate automaticamente sia selezionata.

  5. Seleziona Salva.

  6. A questo momento, si torna alla pagina Dispositivi e il dispositivo creato dovrebbe trovarsi nell'elenco. Selezionare il dispositivo.

  7. Nella visualizzazione del dispositivo, selezionare l'icona Copy accanto a stringa di connessione primaria .

  8. Incollare i caratteri copiati da qualche parte per usarli in un secondo momento nei passaggi seguenti:

    Questa stringa copiata è la stringa di connessione del dispositivo.

Installare un agente di aggiornamento dispositivi per testarlo come simulatore

  1. Seguire le istruzioni per installare il runtime di Azure IoT Edge seguendo il passaggio.

    Nota

    L'agente di aggiornamento dei dispositivi non dipende da IoT Edge. Ma si basa sul daemon del servizio di gestione delle identità IoT installato con IoT Edge (1.2.0 e versioni successive) per ottenere un'identità e connettersi all'hub IoT.

    Anche se non trattato in questa esercitazione, il daemon del servizio di gestione delle identità IoT può essere installato in modalità autonoma nei dispositivi IoT basati su Linux. La sequenza di installazione è importante. L'agente del pacchetto di Aggiornamento Dispositivi deve essere installato dopo il servizio di gestione delle identità IoT. In caso contrario, l'agente del pacchetto non verrà registrato come componente autorizzato per stabilire una connessione all'hub IoT.

  2. Quindi, installare i pacchetti .deb dell'agente di Aggiornamento dispositivi.

    sudo apt-get install deviceupdate-agent deliveryoptimization-plugin-apt 
    
  3. Immettere la stringa di connessione primaria del modulo o del dispositivo IoT nel file di configurazione (a seconda di come è stato effettuato il provisioning del dispositivo con Device Update) eseguendo il seguente comando:

    sudo nano /etc/adu/du-config.json
    
  4. Impostare l'agente per farlo funzionare come simulatore. Eseguire il comando seguente nel dispositivo IoT in modo che l'agente di Aggiornamento dispositivi richiami il gestore del simulatore per elaborare un aggiornamento del pacchetto con APT ('microsoft/apt:1'):

    sudo /usr/bin/AducIotAgent --register-content-handler /var/lib/adu/extensions/sources/libmicrosoft_simulator_1.so --update-type 'microsoft/apt:1'
    

    Per registrare e richiamare il gestore del simulatore, usare il formato seguente, inserendo i segnaposto:

    sudo /usr/bin/AducIotAgent --register--content-handler <full path to the handler file> --update-type <update type name>

  5. Sarà necessario il file sample-du-simulator-data.json dal Tutorial_Simulator.zip scaricato nei prerequisiti.

    Aprire il file sample-du-simulator-data.json e copiare il contenuto negli Appunti:

    nano sample-du-simulator-data.json
    

    Selezionare il contenuto del file e premere CTRL+C. Premere CTRL+X per chiudere il file e non salvare le modifiche.

    Eseguire il comando seguente per creare e modificare il file du-simulator-data.json nella cartella tmp:

    sudo nano /tmp/du-simulator-data.json
    

    Premere CTRL+V per incollare il contenuto nell'editor. Selezionare CTRL+X per salvare le modifiche e quindi Y.

    Modificare le autorizzazioni:

    sudo chown adu:adu /tmp/du-simulator-data.json
    sudo chmod 664 /tmp/du-simulator-data.json
    

    Se /tmp non esiste, allora:

     sudo mkdir/tmp
     sudo chown root:root/tmp
     sudo chmod 1777/tmp
    
  6. Riavviare l'agente di Aggiornamento dispositivi eseguendo il comando seguente:

     sudo systemctl restart adu-agent
    

Aggiornamento del dispositivo per il software dell'hub IoT di Azure è soggetto alle condizioni di licenza seguenti:

Leggere le condizioni di licenza prima di usare l'agente. L'installazione e l'utilizzo costituiscono l'accettazione di queste condizioni. Se non si accettano le condizioni di licenza, non usare l'agente di Aggiornamento Dispositivi per l'Hub IoT.

Nota

Dopo il test con il simulatore, eseguire il comando seguente per richiamare il gestore APT e distribuire gli aggiornamenti del pacchetto over-the-air:

# sudo /usr/bin/AducIotAgent --register-content-handler /var/lib/adu/extensions/sources/libmicrosoft_apt_1.so --update-type 'microsoft/a pt:1'

Aggiungere un tag al dispositivo

  1. Accedere al portale di Azure e passare all'hub IoT.

  2. Da Dispositivi nel riquadro sinistro, individuare il dispositivo IoT e accedere al dispositivo gemello o al modulo gemello.

  3. Nel modulo gemello dell'agente di aggiornamento dei dispositivi, eliminare tutti i valori dei tag di aggiornamento dispositivo già esistenti impostandoli su nulla. Se si usa l'identità del dispositivo con un agente di Aggiornamento dispositivi, apportare queste modifiche nel dispositivo gemello.

  4. Aggiungere un nuovo valore del tag Device Update, come illustrato di seguito:

        "tags": {
                "ADUGroup": "<CustomTagValue>"
                }
    

Importare l'aggiornamento

  1. Saranno necessari i file TutorialImportManifest_Sim.importmanifest.json e adu-update-image-raspberrypi3.swu dal Tutorial_Simulator.zip scaricato nei prerequisiti. Il file di aggiornamento viene riutilizzato dal tutorial su Raspberry Pi. Poiché l'aggiornamento in questa esercitazione viene simulato, il contenuto del file specifico non è rilevante.

  2. Accedere al portale di Azure e andare al tuo hub IoT con Aggiornamento dei dispositivi. Nel riquadro sinistro, in Gestione dispositivi automatico, selezionare Aggiornamenti.

  3. Selezionare la scheda Aggiornamenti.

  4. Selezionare + Importa nuovo aggiornamento.

  5. Seleziona + Seleziona dal contenitore di archiviazione. Seleziona un account esistente oppure crea un nuovo account utilizzando + Account di archiviazione. Selezionare quindi un contenitore esistente o creare un nuovo contenitore usando + Contenitore. Questo contenitore verrà usato per preparare i file di aggiornamento per l'importazione.

    Nota

    È consigliabile usare un nuovo contenitore ogni volta che si importa un aggiornamento per evitare l'importazione accidentale di file da aggiornamenti precedenti. Se non si usa un nuovo contenitore, assicurarsi di eliminare eventuali file dal contenitore esistente prima di completare questo passaggio.

    Screenshot che mostra gli account di archiviazione e i contenitori.

  6. Nel contenitore selezionare Carica e passare ai file scaricati nel passaggio 1. Dopo aver selezionato tutti i tuoi file di aggiornamento, selezionare Carica. Selezionare quindi il pulsante Seleziona per tornare alla pagina Importa aggiornamento .

    Screenshot che mostra la selezione dei file caricati.

    Questo screenshot mostra il passaggio di importazione. I nomi di file potrebbero non corrispondere a quelli usati nell'esempio.

  7. Esaminare i file da importare nella pagina Importa aggiornamento. Selezionare quindi Importa aggiornamento per avviare il processo di importazione.

    Screenshot che mostra l'aggiornamento di importazione.

  8. Viene avviato il processo di importazione e la schermata passa alla sezione Cronologia importazione . Quando la colonna Stato indica che l'importazione è riuscita, selezionare l'intestazione Aggiornamenti disponibili . L'aggiornamento importato dovrebbe essere visualizzato nell'elenco.

    Screenshot che mostra lo stato del lavoro.

Scopri di più su come importare gli aggiornamenti.

Creare un gruppo di aggiornamento

  1. Passare alla scheda Gruppi e distribuzioni nella parte superiore della pagina.

    Screenshot che mostra i dispositivi non raggruppati.

  2. Selezionare Aggiungi gruppo per creare un nuovo gruppo.

    Screenshot che mostra l'aggiunta di un gruppo di dispositivi.

  3. Selezionare un tag dell'hub IoT e una classe dispositivo dall'elenco. Selezionare quindi Crea gruppo.

    Screenshot che mostra la selezione dei tag.

  4. Dopo aver creato il gruppo, vengono aggiornati il grafico di conformità degli aggiornamenti e l'elenco dei gruppi. Il grafico conformità degli aggiornamenti mostra il numero di dispositivi in vari stati di conformità: aggiornamento più recente, Nuovi aggiornamenti disponibili e Aggiornamenti in corso. Informati sulla conformità agli aggiornamenti

    Schermata che mostra la conformità degli aggiornamenti.

  5. Verrà visualizzato il gruppo appena creato e gli eventuali aggiornamenti disponibili per i dispositivi nel nuovo gruppo. Se sono presenti dispositivi che non soddisfano i requisiti di classe del dispositivo del gruppo, verranno visualizzati in un gruppo non valido corrispondente. Per distribuire il miglior aggiornamento disponibile al nuovo gruppo definito dall'utente da questa visualizzazione, selezionare Distribuisci accanto al gruppo.

Scopri di più su come aggiungere tag e creare gruppi di aggiornamento.

Distribuire l'aggiornamento

  1. Dopo aver creato il gruppo, verrà visualizzato un nuovo aggiornamento disponibile per il gruppo di dispositivi. Un collegamento all'aggiornamento deve trovarsi in Aggiornamento migliore. Potrebbe essere necessario eseguire l'aggiornamento una sola volta. Scopri di più sulla conformità degli aggiornamenti.

  2. Selezionare il gruppo di destinazione selezionando il nome del gruppo. Si è indirizzati ai dettagli del gruppo sotto Nozioni di base sui gruppi.

    Screenshot che mostra i dettagli del gruppo.

  3. Per avviare la distribuzione, passare alla scheda distribuzione corrente. Selezionare il collegamento distribuisci accanto all'aggiornamento desiderato nella sezione Aggiornamenti disponibili. L'aggiornamento migliore disponibile per un determinato gruppo è indicato con un'evidenziazione migliore .

    Screenshot che mostra la selezione di un aggiornamento.

  4. Pianifica la distribuzione per iniziare immediatamente o in futuro. Poi selezionare Crea.

    Screenshot che mostra la creazione della distribuzione.

  5. Nei Dettagli di distribuzione, lo stato diventa Attivo. L'aggiornamento distribuito è contrassegnato con (distribuzione).

    Screenshot che mostra che la distribuzione è attiva.

  6. Visualizzare il grafico di conformità per verificare che l'aggiornamento sia in corso.

  7. Dopo che il dispositivo è stato aggiornato correttamente, si noterà che il grafico di conformità e i dettagli della distribuzione sono stati aggiornati per riflettere lo stesso.

    Screenshot che mostra l'aggiornamento riuscito.

Monitorare la distribuzione degli aggiornamenti

  1. Selezionare la scheda Cronologia distribuzione nella parte alta della pagina.

    Screenshot che mostra la cronologia della distribuzione.

  2. Selezionare Dettagli accanto alla distribuzione creata.

    Screenshot che mostra i dettagli della distribuzione.

  3. Selezionare Aggiorna per visualizzare i dettagli dello stato più recenti.

Ora hai completato con successo un aggiornamento completo dell'immagine utilizzando Aggiornamento dispositivi per IoT Hub con l'agente di riferimento del simulatore Ubuntu (18.04 x64).

Pulire le risorse

Quando non sono più necessari, eliminare l'account di Aggiornamento dispositivi, l'istanza, l'hub IoT e il dispositivo IoT.

Passaggi successivi