Procedure consigliate per la configurazione di dispositivi in una soluzione IoT

La gestione automatica dei dispositivi nell'hub IoT di Azure consente di automatizzare molte attività ripetitive e complesse per la gestione di un numero elevato di dispositivi nel loro intero ciclo di vita. Questo articolo definisce molte delle procedure consigliate per i vari ruoli coinvolti nello sviluppo e nel funzionamento di una soluzione IoT.

  • Produttore/integratore hardware IoT: Produttori di hardware IoT, integratori che assembla hardware da vari produttori o fornitori che forniscono hardware per una distribuzione IoT prodotta o integrata da altri fornitori. Coloro che svolgono questo ruolo sono coinvolti nello sviluppo e nell'integrazione di firmware, sistemi operativi incorporati e software incorporato.

  • Sviluppatore di soluzioni IoT: Lo sviluppo di una soluzione IoT viene in genere eseguito da uno sviluppatore di soluzioni. che può far parte di un team interno o essere un integratore di sistemi specializzato in questa attività. Lo sviluppatore di soluzioni IoT può sviluppare vari componenti della soluzione IoT da zero, integrare vari componenti standard o open source.

  • Operatore soluzione IoT: Dopo la distribuzione della soluzione IoT, richiede operazioni a lungo termine, monitoraggio, aggiornamenti e manutenzione. Queste operazioni possono essere eseguite da un team interno costituito da esperti di tecnologie informatiche, da team che svolgono operazioni hardware e attività di manutenzione, nonché da specialisti di dominio che monitorano il corretto funzionamento dell'intera infrastruttura IoT.

Informazioni sulla gestione automatica dei dispositivi per la configurazione di dispositivi IoT su larga scala

La gestione automatica dei dispositivi include i numerosi vantaggi offerti dai dispositivi gemelli e dai moduli gemelli per sincronizzare gli stati desiderati e segnalati tra il cloud e i dispositivi. Le configurazioni automatiche dei dispositivi aggiornano automaticamente grandi set di gemelli e riepilogano lo stato di avanzamento e la conformità. I seguenti passaggi generali descrivono come viene sviluppata e usata la gestione automatica dei dispositivi:

  • Il produttore/integratore di hardware IoT implementa le funzionalità di gestione dei dispositivi all'interno di un'applicazione incorporata usando dispositivi gemelli. Queste funzionalità possono includere gli aggiornamenti del firmware, l'installazione e l'aggiornamento del software e la gestione delle impostazioni.

  • Lo sviluppatore di soluzioni IoT implementa il livello di gestione per le operazioni di gestione dei dispositivi usando dispositivi gemelli e configurazioni automatiche dei dispositivi. La soluzione deve includere la definizione di un'interfaccia per operatore per eseguire le attività di gestione dei dispositivi.

  • L'operatore di soluzioni IoT usa la soluzione IoT per eseguire attività di gestione dei dispositivi, in particolare per raggruppare i dispositivi, avviare modifiche di configurazione, ad esempio aggiornamenti al firmware, monitorare lo stato di avanzamento e risolvere i problemi che si verificano.

Produttore/integratore di hardware IoT

Di seguito sono presentate le procedure consigliate per i produttori e gli integratori di hardware che si occupano dello sviluppo di software incorporato:

  • Implementare i dispositivi gemelli: I dispositivi gemelli consentono la sincronizzazione della configurazione desiderata dal cloud e per la creazione di report delle proprietà correnti e dei dispositivi. Il modo migliore per implementare dispositivi gemelli all'interno di applicazioni incorporate è tramite gli SDK IoT di Azure. I dispositivi gemelli sono particolarmente adatti alla configurazione per i motivi seguenti:

    • Supportano le comunicazioni bidirezionali.
    • Consentono lo stato connesso e disconnesso dei dispositivi.
    • Seguono il principio della coerenza finale.
    • Sono completamente disponibili per query nel cloud.
  • Strutturare il dispositivo gemello per la gestione dei dispositivi: Il dispositivo gemello deve essere strutturato in modo che le proprietà di gestione dei dispositivi siano raggruppate logicamente in sezioni. In questo modo, le modifiche di configurazione possono essere isolate senza alcun impatto sulle altre sezioni del dispositivo gemello. È ad esempio possibile creare una sezione all'interno delle proprietà desiderate per il firmware, un'altra sezione per il software e una terza sezione per le impostazioni di rete.

  • Segnalare gli attributi del dispositivo utili per la gestione dei dispositivi: Gli attributi come il make e il modello fisico, il firmware, il sistema operativo, il numero di serie e altri identificatori sono utili per la creazione di report e come parametri per le modifiche alla configurazione di destinazione.

  • Definire gli stati principali per lo stato di creazione di report e lo stato di avanzamento: Gli stati di primo livello devono essere enumerati in modo che possano essere segnalati all'operatore. Un aggiornamento del firmware può ad esempio essere segnalato come corrente, in fase di download, in fase di applicazione, in corso e in stato di errore. Definire campi aggiuntivi per altre informazioni su ogni stato.

Sviluppatore di soluzioni IoT

Di seguito sono presentate le procedure consigliate per gli sviluppatori di soluzioni IoT che creano sistemi basati su Azure:

  • Implementare i dispositivi gemelli: I dispositivi gemelli consentono la sincronizzazione della configurazione desiderata dal cloud e per la creazione di report delle proprietà correnti e dei dispositivi. Il modo migliore per implementare dispositivi gemelli all'interno di applicazioni soluzioni cloud è tramite gli SDK IoT di Azure. I dispositivi gemelli sono particolarmente adatti alla configurazione per i motivi seguenti:

    • Supportano le comunicazioni bidirezionali.
    • Consentono lo stato connesso e disconnesso dei dispositivi.
    • Seguono il principio della coerenza finale.
    • Sono completamente disponibili per query nel cloud.
  • Organizzare i dispositivi usando i tag dei dispositivi gemelli: La soluzione deve consentire all'operatore di definire anelli di qualità o altri set di dispositivi in base a varie strategie di distribuzione, ad esempio canary. L'organizzazione del dispositivo può essere implementata all'interno della soluzione usando tag e query di dispositivi gemelli. Questa organizzazione è necessaria per un'implementazione precisa e sicura delle configurazioni.

  • Implementare configurazioni automatiche dei dispositivi: Le configurazioni automatiche dei dispositivi distribuiscono e monitorano le modifiche di configurazione a set di dispositivi IoT di grandi dimensioni tramite dispositivi gemelli.

    Configurazioni automatiche dei dispositivi gemelli tramite la condizione di destinazione, ovvero una query sui tag dei dispositivi gemelli o sulle proprietà segnalate. Il contenuto di destinazione è il set di proprietà desiderate che verranno impostate all'interno dei dispositivi gemelli di destinazione. Il contenuto di destinazione deve essere allineato con la struttura dei dispositivi gemelli definita dal produttore/integratore dell'hardware IoT. Le metriche sono query sulle proprietà segnalate da dispositivi gemelli e devono essere allineate anche alla struttura del dispositivo gemello definita dal produttore/integratore hardware IoT.

    Le configurazioni automatiche dei dispositivi vengono eseguite per la prima volta dopo la creazione della configurazione e quindi a intervalli di cinque minuti. Traggono vantaggio anche dall'hub IoT eseguire operazioni gemelle del dispositivo a una frequenza che non supererà mai i limiti di limitazione per le letture e gli aggiornamenti del dispositivo gemello.

  • Usare il servizio Device Provisioning: gli sviluppatori di soluzioni devono usare il servizio Device Provisioning per assegnare tag dispositivi gemelli ai nuovi dispositivi, in modo che vengano configurati automaticamente dalle configurazioni automatiche dei dispositivi destinate ai gemelli con tale tag.

Operatore di soluzioni IoT

Di seguito sono presentate le procedure consigliate per gli operatori di soluzioni IoT che usano una soluzione IoT basata su Azure:

  • Organizzare i dispositivi per la gestione: La soluzione IoT deve definire o consentire la creazione di anelli di qualità o altri set di dispositivi in base a varie strategie di distribuzione, ad esempio canary. I set di dispositivi verranno usati per implementare le modifiche di configurazione ed eseguire altre operazioni di gestione dei dispositivi su larga scala.

  • Eseguire modifiche di configurazione usando un'implementazione in più fasi: Un'implementazione in più fasi è un processo complessivo in cui un operatore distribuisce le modifiche a un set esteso di dispositivi IoT. L'obiettivo è apportare le modifiche gradualmente per ridurre il rischio di introdurre modifiche che causano disservizi su larga scala.  L'operatore deve usare l'interfaccia della soluzione per creare una configurazione automatica del dispositivo e la condizione di destinazione deve essere destinata a un set iniziale di dispositivi ,ad esempio un gruppo canary. L'operatore deve quindi convalidare la modifica della configurazione nel set iniziale di dispositivi.

    Al termine della convalida, l'operatore aggiornerà la configurazione automatica dei dispositivi in modo da includere un set di dispositivi più ampio. L'operatore deve inoltre impostare la priorità per la configurazione in modo che sia superiore alle altre configurazioni attualmente assegnate a tali dispositivi. L'implementazione può essere monitorata tramite le metriche definite dalla configurazione automatica dei dispositivi.

  • Eseguire il rollback in caso di errori o configurazioni non configurate: È possibile eseguire il rollback di una configurazione automatica del dispositivo che causa errori o configurazioni non configurate modificando la condizione di destinazione in modo che i dispositivi non soddisfino più la condizione di destinazione. Assicurarsi che un'altra configurazione automatica dei dispositivi con priorità inferiore rimanga assegnata a tali dispositivi. Verificare che il rollback abbia esito positivo visualizzando le metriche: la configurazione di cui è stato eseguito il rollback non deve più mostrare lo stato dei dispositivi a cui non è assegnata e le metriche della seconda configurazione devono ora includere i conteggi per i dispositivi a cui questa è ancora assegnata.

Passaggi successivi