Architettura di Azure IoT Central

IoT Central è un ambiente pronto per la valutazione rapida dello scenario IoT. Si tratta di una soluzione IoT aPaaS (Application Platform as a Service) e la relativa interfaccia principale è un'interfaccia utente Web. È disponibile anche un'API REST che consente di interagire con l'applicazione a livello di codice.

Questo articolo offre una panoramica degli elementi chiave in un'architettura della soluzione IoT Central.

Diagramma che mostra l'architettura generale di una soluzione IoT Central.

Le funzionalità principali in un'applicazione IoT Central includono:

Gestire i dispositivi

IoT Central consente di gestire la flotta di dispositivi IoT che inviano dati alla soluzione. È ad esempio possibile:

  • Controllare quali dispositivi possono connettersi all'applicazione e come eseguono l'autenticazione.
  • Usare i modelli di dispositivo per definire i tipi di dispositivo che possono connettersi all'applicazione.
  • Gestire i dispositivi impostando proprietà o chiamando comandi nei dispositivi connessi. Ad esempio, impostare una proprietà temperatura di destinazione per un dispositivo termostato o chiamare un comando per attivare un dispositivo afffinché aggiorni il firmware. È possibile impostare proprietà e chiamare i comandi su:
    • Singoli dispositivi tramite un'interfaccia utente Web personalizzabile.
    • Più dispositivi con processi pianificati o su richiesta.
  • Gestire i metadati del dispositivo, ad esempio l'indirizzo del cliente o l'ultima data del servizio.

Visualizzare e analizzare i dati

In un'applicazione IoT Central è possibile visualizzare e analizzare i dati per i singoli dispositivi o i dati aggregati da più dispositivi:

  • Usare il mapping per trasformare i dati di telemetria complessi dei dispositivi in dati strutturati all'interno di IoT Central.
  • Usare i modelli di dispositivo per definire visualizzazioni personalizzate per singoli dispositivi di tipi specifici. Ad esempio, è possibile tracciare la temperatura nel tempo per un singolo termostato o mostrare la posizione in tempo reale di un camion di consegna.
  • Usare l'analisi predefinita per visualizzare i dati aggregati per più dispositivi. Ad esempio, è possibile visualizzare l'occupazione totale in più negozi al dettaglio o identificare i negozi con le percentuali di occupazione più alte o più basse.
  • Creare dashboard personalizzati per gestire i dispositivi. Ad esempio, è possibile aggiungere mappe, riquadri e grafici per visualizzare i dati di telemetria dei dispositivi.

Proteggere la soluzione

In IoT Central è possibile configurare e gestire la sicurezza nelle aree seguenti:

  • Accesso degli utenti all'applicazione.
  • Accesso dei dispositivi all'applicazione.
  • Accesso programmatico all'applicazione.
  • Autenticazione ad altri servizi dall'applicazione.
  • I log di controllo tengono traccia dell'attività nell'applicazione.

Per altre informazioni, vedere la Guida alla sicurezza di IoT Central.

Dispositivi

I dispositivi raccolgono dati dai sensori e li inviano come flusso di dati di telemetria a un'applicazione IoT Central. Ad esempio, un'unità di raffreddamento invia un flusso di valori di temperatura o un camion di consegna trasmette la sua posizione.

Un dispositivo può usare le proprietà per segnalarne lo stato, ad esempio se una valvola è aperta o chiusa. Un'applicazione IoT Central può anche usare le proprietà per impostare lo stato del dispositivo, ad esempio impostando una temperatura di destinazione per un termostato.

IoT Central può anche controllare i dispositivi chiamando i comandi nel dispositivo. Ad esempio, per indicare a un dispositivo di scaricare e installare un aggiornamento del firmware.

I dati di telemetria, le proprietà e i comandi che un dispositivo implementa sono noti collettivamente come funzionalità del dispositivo. Queste funzionalità vengono definite in un modello condiviso dal dispositivo e dall'applicazione IoT Central. In IoT Central questo modello fa parte del modello di dispositivo che definisce un tipo specifico di dispositivo. Per altre informazioni, vedere Assegnare un dispositivo a un modello di dispositivo.

L'implementazione del dispositivo deve seguire le convenzioni Plug and play IoT per assicurarsi che possa comunicare con IoT Central. Per altre informazioni, vedere gli SDK e gli esempi per i vari linguaggi.

I dispositivi si connettono a IoT Central usando uno dei protocolli supportati: MQTT, AMQP o HTTP.

Gateway

I dispositivi gateway locali sono utili in diversi scenari, ad esempio:

  • Dispositivi che non possono connettersi direttamente a IoT Central perché non possono connettersi a Internet. Ad esempio, potrebbe essere presente una raccolta di sensori di occupazione abilitati per Bluetooth che devono connettersi tramite un dispositivo gateway.
  • La quantità di dati generati dai dispositivi è elevata. Per ridurre i costi, combinare o aggregare i dati in un gateway locale prima di inviarli all'applicazione IoT Central.
  • La soluzione richiede risposte rapide alle anomalie nei dati. È possibile eseguire regole in un dispositivo gateway che identificano le anomalie e intraprendono un'azione in locale senza la necessità di inviare i dati all'applicazione IoT Central.

I dispositivi gateway richiedono in genere una maggiore potenza di elaborazione rispetto a un dispositivo autonomo. Un'opzione per implementare un dispositivo gateway consiste nell'usare Azure IoT Edge e applicare uno dei modelli di gateway IoT Edge standard. È anche possibile eseguire il codice gateway personalizzato in un dispositivo idoneo.

Esportare i dati

Sebbene IoT Central disponga di funzionalità di analisi predefinite, è possibile esportare i dati in altri servizi e applicazioni.

Le trasformazioni in una definizione di esportazione dei dati di IoT Central consentono di modificare il formato e la struttura dei dati del dispositivo prima di esportarli in una destinazione.

Motivi per l'esportazione dei dati:

Archiviazione e analisi

Per l'archiviazione a lungo termine e il controllo sui criteri di archiviazione e conservazione, è possibile esportare continuamente i dati in altre destinazioni di archiviazione. L'uso di un servizio di archiviazione separato all'esterno di IoT Central consente di usare altri strumenti di analisi per derivare informazioni dettagliate dai dati nella soluzione.

Automazione aziendale

Le regole in IoT Central consentono di attivare azioni esterne, ad esempio per inviare un messaggio di e-mail o generare un evento, in risposta alle condizioni all'interno di IoT Central. Ad esempio, è possibile inviare una notifica a un tecnico se la temperatura ambientale per un dispositivo raggiunge una soglia.

Calcolo aggiuntivo

Potrebbe essere necessario trasformare o eseguire calcoli sui dati prima di poterli usare in IoT Central o in un altro servizio. Ad esempio, è possibile aggiungere informazioni meteo locali ai dati sulla posizione segnalati da un camion di consegna.

Estensione con l'API REST

Sviluppare integrazioni che consentono ad altre applicazioni e servizi di gestire l'applicazione. Ad esempio, gestire i dispositivi nell'applicazione a livello di codice o sincronizzare le informazioni utente con un sistema esterno.

Scalabilità

Le applicazioni IoT Central usano internamente più servizi di Azure, ad esempio l'hub IoT e il servizio Device Provisioning( DPS). Molti di questi servizi sottostanti sono multi-tenant. Tuttavia, per garantire l'isolamento completo dei dati dei clienti, IoT Central usa hub IoT a tenant singolo.

IoT Central ridimensiona automaticamente gli hub IoT in base ai profili di carico nell'applicazione. IoT Central può aumentare le prestazioni dei singoli hub IoT e aumentare il numero di hub IoT in un'applicazione. IoT Central ridimensiona automaticamente anche altri servizi sottostanti.

Esportazione dei dati

Le applicazioni IoT Central usano spesso altri servizi configurati dall'utente. Ad esempio, è possibile configurare l'applicazione IoT Central per esportare continuamente i dati in servizi come Hub eventi di Azure e Archiviazione BLOB di Azure.

Se un'esportazione di dati configurata non può scrivere nella destinazione, IoT Central tenta di ritrasmettere i dati per un massimo di 15 minuti, dopo il quale IoT Central contrassegna la destinazione come non riuscita. Le destinazioni non riuscite vengono controllate periodicamente per verificare se sono scrivibili.

È possibile forzare IoT Central a riavviare le esportazioni non riuscite disabilitando e riabilitando l'esportazione dei dati.

Prendere in esame le procedure consigliate per la disponibilità elevata e la scalabilità per il servizio di destinazione dell'esportazione dei dati in uso:

Disponibilità elevata e ripristino di emergenza

Le funzionalità HADR dipendono da quando è stata creata l'applicazione IoT Central:

Applicazioni create prima di aprile 2021

Alcune applicazioni create prima di aprile 2021 usano un singolo hub IoT. Per queste applicazioni, IoT Central non offre funzionalità HADR. Se l'hub IoT non è più disponibile, l'applicazione diventa non disponibile.

Usare il comando az iot central device manual-failover per verificare se l'applicazione usa ancora un singolo hub IoT. Questo comando restituisce un errore se l'applicazione ha un singolo hub IoT.

Applicazioni create dopo aprile 2021 e precedenti ad aprile 2023

Per la connettività dei dispositivi a disponibilità elevata, un'applicazione IoT Central ha sempre almeno due hub IoT. Il numero di hub può aumentare o ridursi man mano che IoT Central ridimensiona l'applicazione in risposta alle modifiche apportate al profilo di carico.

IoT Central usa anche le zone di disponibilità per rendere i vari servizi a disponibilità elevata.

Un evento imprevisto che richiede il ripristino di emergenza potrebbe variare da un sottoinsieme di servizi che diventano non disponibili in un'intera area. IoT Central segue diversi processi di ripristino a seconda della natura e della scala dell'evento imprevisto. Ad esempio, se un'intera area di Azure non è più disponibile a seguito di un errore irreversibile, le procedure di ripristino di emergenza eseguono il failover delle applicazioni in un'altra area geografica.

Applicazioni create dopo aprile 2023

Le applicazioni IoT Central create dopo aprile 2023 inizialmente hanno un singolo hub IoT. Se l'hub IoT non è più disponibile, l'applicazione diventa non disponibile. Tuttavia, IoT Central ridimensiona automaticamente l'applicazione e aggiunge un nuovo hub IoT per ogni 10.000 dispositivi connessi. Se sono necessari più hub IoT per le applicazioni con meno di 10.000 dispositivi, inviare una richiesta al supporto clienti di IoT Central.

Usare il comando az iot central device manual-failover per verificare se l'applicazione usa attualmente un singolo hub IoT. Questo comando restituisce un errore se l'applicazione ha attualmente un singolo hub IoT.