Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a: Edge 1.5
Importante
IoT Edge 1.5 LTS è la versione supportata. IoT Edge 1.4 LTS è di fine vita a partire dal 12 novembre 2024. Se si usa una versione precedente, vedere Aggiornare IoT Edge.
In questa esercitazione viene creato un processo di Analisi di flusso di Azure nel portale di Azure e distribuito come modulo IoT Edge senza codice aggiuntivo.
In questa esercitazione si apprenderà come:
- Creare un processo di Analisi di flusso di Azure per elaborare i dati al limite.
- Connettere il nuovo processo di Analisi di flusso di Azure con altri moduli IoT Edge.
- Distribuire il processo di Analisi di flusso di Azure in un dispositivo IoT Edge dal portale di Azure.
Il modulo di Analisi di flusso in questa esercitazione calcola la temperatura media in una finestra mobile di 30 secondi. Quando la media raggiunge 70, il modulo invia un avviso per consentire al dispositivo di intervenire. In questo caso, l'azione consiste nel reimpostare il sensore di temperatura simulato. In un ambiente di produzione è possibile usare questa funzionalità per spegnere un computer o adottare misure preventive quando la temperatura raggiunge livelli pericolosi.
Perché usare Analisi di flusso di Azure in IoT Edge?
Molte soluzioni IoT usano servizi di analisi per ottenere informazioni sui dati quando arrivano nel cloud dai dispositivi IoT. Con Azure IoT Edge si sposta la logica di Analisi di flusso di Azure nel dispositivo stesso. L'elaborazione dei flussi di telemetria all'edge riduce la quantità di dati caricati e il tempo necessario per reagire alle intuizioni azionabili. Azure IoT Edge e Analisi di flusso di Azure si integrano per semplificare lo sviluppo del carico di lavoro.
Analisi di flusso di Azure usa una sintassi di query strutturata per l'analisi dei dati nel cloud e nei dispositivi IoT Edge. Per altre informazioni, vedere Documentazione di Analisi di flusso di Azure.
Prerequisiti
Se non si ha un account Azure, creare un account gratuito prima di iniziare.
Un dispositivo Azure IoT Edge.
Usare una macchina virtuale di Azure come dispositivo IoT Edge seguendo la procedura descritta nella guida introduttiva per dispositivi Linux o Windows.
Un hub IoT di livello Gratuito o Standard in Azure.
Creare un processo di Analisi di flusso di Azure
In questa sezione viene creato un processo di Analisi di flusso di Azure che:
- Riceve i dati dal dispositivo IoT Edge.
- Esegue una query sui dati di telemetria per i valori esterni a un intervallo impostato.
- Esegue un'azione sul dispositivo IoT Edge in base ai risultati della query.
Creare un account di archiviazione
Quando si crea un processo di Analisi di flusso di Azure da eseguire in un dispositivo IoT Edge, è necessario archiviarlo in modo che il dispositivo possa accedervi. È possibile usare un account di archiviazione di Azure esistente o crearne uno nuovo.
Nel portale di Azure fare clic su Crea una risorsa>Archiviazione>Account di archiviazione.
Specificare i valori seguenti per creare l'account di archiviazione:
Campo Valore Abbonamento Scegliere la stessa sottoscrizione dell'hub IoT. Gruppo di risorse Usare lo stesso gruppo di risorse per tutte le risorse di test per le guide introduttive e le esercitazioni di IoT Edge. Ad esempio, IoTEdgeResources. Nome Immettere un nome univoco per l'account di archiviazione. Ufficio Selezionare una posizione nelle vicinanze. Mantenere i valori predefiniti per gli altri campi e selezionare Rivedi e crea.
Esaminare le impostazioni e quindi selezionare Crea.
Creazione di una nuova commessa
Nel portale di Azure, selezionare:
- Crea una risorsa
- Internet delle cose dal menu a sinistra
- Digitare Analisi di flusso nella barra di ricerca per trovarla in Azure Marketplace
- Selezionare Crea, quindi Processo di Analisi di flusso dal menu a discesa
Specificare i valori seguenti per creare il nuovo processo di Analisi di flusso:
Campo Valore Nome Dare un nome al processo. Ad esempio, IoTEdgeJob Abbonamento Scegliere la stessa sottoscrizione dell'hub IoT. Gruppo di risorse Usare lo stesso gruppo di risorse per tutte le risorse di test create durante le guide introduttive e le esercitazioni di IoT Edge. Ad esempio, una risorsa denominata IoTEdgeResources. Area Scegliere una località vicina. Ambiente di hosting Selezionare Edge. Questa opzione consente di eseguire la distribuzione in un dispositivo IoT Edge anziché nel cloud. Selezionare Rivedi e crea.
Confermare le opzioni e quindi selezionare Crea.
Configurare il processo
Dopo aver creato il processo di Analisi di flusso nel portale di Azure, configurarlo con un input, un output e una query da eseguire sui dati che passano.
Questa sezione illustra come creare un processo che riceve i dati relativi alla temperatura da un dispositivo IoT Edge. Analizza i dati in una finestra di 30 secondi in sequenza. Se la temperatura media in tale finestra supera i 70 gradi, il processo invia un avviso al dispositivo IoT Edge.
Nota
Si specifica da dove provengono i dati e dove vanno nella sezione successiva, Configurare le impostazioni di IoT Edge, quando si distribuisce il processo.
Impostare l'input e l'output
Passare al processo di Analisi di flusso nel portale di Azure.
In Topologia processo, selezionare Input, quindi selezionare Aggiungi input.
Scegliere Hub edge dall'elenco a discesa.
Se nell'elenco non viene visualizzata l'opzione Hub Edge , è possibile che sia stato creato il processo di Analisi di flusso come processo ospitato nel cloud. Provare a creare un nuovo processo e assicurarsi di selezionare Edge come ambiente di hosting.
Nel riquadro Nuovo input, inserire la temperatura come Alias di input.
Mantenere i valori predefiniti per gli altri campi e selezionare Salva.
In Topologia processo selezionare Output, quindi selezionare Aggiungi.
Scegliere Hub Edge dall'elenco a discesa.
Nel riquadro Nuovo output inserire avviso come alias di output.
Mantenere i valori predefiniti per gli altri campi e selezionare Salva.
Creare una query
In Topologia processo selezionare Query.
Sostituire il testo predefinito con la query seguente:
SELECT 'reset' AS command INTO alert FROM temperature TIMESTAMP BY timeCreated GROUP BY TumblingWindow(second,30) HAVING Avg(machine.temperature) > 70
In questa query, il codice SQL invia un comando reset all'output dell'avviso se la temperatura media della macchina in una finestra di 30 secondi raggiunge i 70 gradi. Il comando reset è preprogrammato nel sensore come azione.
Selezionare Salva query.
Configurare le impostazioni di IoT Edge
Per distribuire il processo di Analisi di flusso in un dispositivo IoT Edge, associare il processo di Analisi di flusso di Azure a un account di archiviazione. Quando si distribuisce il processo, la definizione del processo viene esportata nell'account di archiviazione come un contenitore.
Nel servizio Stream Analytics, nel menu Impostazioni, selezionare Impostazioni account di archiviazione.
Scegliere l'opzione Seleziona archiviazione BLOB/ADLS Gen 2 dalle sottoscrizioni.
L'account di archiviazione di Azure viene visualizzato automaticamente nella pagina. Se non viene mostrato alcun account, assicurarsi di creare una risorsa di archiviazione. Se è necessario scegliere una risorsa di archiviazione diversa da quella elencata nel campo Account di archiviazione , selezionarla dal menu a discesa.
Selezionare Salva se sono state apportate modifiche.
Distribuire il processo
È ora possibile iniziare la distribuzione del processo di Analisi di flusso di Azure nel dispositivo IoT Edge.
In questa sezione si usa la procedura guidata Imposta moduli nel portale di Azure per creare un manifesto della distribuzione. Un manifesto della distribuzione è un file JSON che descrive tutti i moduli distribuiti in un dispositivo. Il manifesto mostra anche i registri contenitori che archiviano le immagini del modulo, le modalità di gestione dei moduli le modalità di comunicazione tra moduli. Il dispositivo IoT Edge recupera il manifesto della distribuzione dall'hub IoT, quindi usa le informazioni contenute per distribuire e configurare tutti i moduli assegnati.
Per questa esercitazione, si distribuiscono due moduli. Il primo è SimulatedTemperatureSensor, un modulo che simula un sensore di temperatura e umidità. Il secondo è il processo di Analisi di flusso. Il modulo del sensore fornisce il flusso di dati analizzati dalla query del processo.
Nel portale di Azure passare all'hub IoT.
Selezionare Dispositivi nel menu Gestione dei dispositivi, quindi selezionare il dispositivo IoT Edge per aprirlo.
Selezionare Imposta moduli.
Se il modulo SimulatedTemperatureSensor è stato distribuito in precedenza in questo dispositivo, la compilazione dei campi potrebbe essere automatica. Se non dovesse aprirsi, aggiungere il modulo con questa procedura:
- Selezionare + Aggiungi e scegliere modulo IoT Edge.
- Per il nome digitare SimulatedTemperatureSensor.
- Per l'URI dell'immagine, immettere mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:1.5.
- Lasciare le altre impostazioni come predefinite e quindi selezionare Aggiungi.
Aggiungere il processo Edge di Analisi di flusso di Azure seguendo questa procedura:
- Selezionare + Aggiungi e scegliere Modulo analisi di flusso di Azure.
- Selezionare la sottoscrizione e il processo Edge di Analisi di flusso di Azure creato.
- Seleziona Salva.
Dopo aver salvato le modifiche, i dettagli del processo di analisi di flusso vengono pubblicati nel contenitore di archiviazione creato.
Al termine della distribuzione dell’elemento aggiuntivo Analisi di flusso, verificare che nella pagina Imposta moduli appaiano due nuovi moduli.
Selezionare Rivedi e crea. Viene mostrato il manifesto della distribuzione.
Seleziona Crea.
Nella pagina Imposta moduli del dispositivo, compariranno dopo alcuni minuti i moduli elencati e in esecuzione. Se i moduli non compaiono, aggiornare la pagina o attendere alcuni minuti e quindi aggiornarla di nuovo.
Familiarizzarsi con i due nuovi moduli
Nella scheda Imposta moduli del dispositivo, selezionare il nome del modulo di Analisi di flusso per passare alla pagina Aggiorna modulo IoT Edge. Qui è possibile aggiornare le impostazioni.
La scheda Impostazioni contiene l'URI dell'immagine che punta a un'immagine standard di Analisi di flusso di Azure. Questa singola immagine viene usata per ogni modulo di analisi di flusso che viene distribuito in un dispositivo IoT Edge.
La scheda Impostazioni modulo gemello mostra il codice JSON che definisce la proprietà di Analisi di flusso di Azure denominata ASAJobInfo. Il valore di tale proprietà punta alla definizione del processo nel contenitore di archiviazione. Questa proprietà determina come l'immagine di Analisi di flusso viene configurata con i dettagli specifici del processo.
Per impostazione predefinita, il modulo di analisi di flusso prende lo stesso nome del processo su cui si basa. Se lo si desidera, è possibile modificare il nome del modulo in questa pagina, ma non è necessario.
Selezionare Applica se sono state apportate modifiche o Annulla se non sono state apportate modifiche.
Assegnare route ai moduli
Nella pagina Imposta moduli nel dispositivo:<your-device-name>, selezionare Avanti: Route.
Nella scheda Route è possibile definire come vengono passati i messaggi tra i moduli e l'hub IoT. I messaggi vengono costruiti mediante coppie nome e valore.
Aggiungere i nomi e i valori della route con le coppie mostrate nella tabella seguente. Sostituire le istanze di
{moduleName}
con il nome del modulo di Analisi di flusso di Azure. Questo modulo deve avere lo stesso nome mostrato nell'elenco dei moduli del dispositivo nella pagina Imposta moduli, come illustrato nel portale di Azure.Nome Valore telemetryToCloud FROM /messages/modules/SimulatedTemperatureSensor/* INTO $upstream
alertsToCloud FROM /messages/modules/{moduleName}/* INTO $upstream
avvisiDaReimpostare FROM /messages/modules/{moduleName}/* INTO BrokeredEndpoint("/modules/SimulatedTemperatureSensor/inputs/control")
telemetria verso Asa FROM /messages/modules/SimulatedTemperatureSensor/* INTO BrokeredEndpoint("/modules/{moduleName}/inputs/temperature")
Le route dichiarate qui definiscono il flusso di dati attraverso il dispositivo IoT Edge. I dati di telemetria vengono inviati dal modulo SimulatedTemperatureSensor all'hub IoT e all'input temperature configurato nel processo di Analisi di flusso. I messaggi di output alert vengono inviati all'hub IoT e al modulo SimulatedTemperatureSensor per attivare il comando reset.
Selezionare Avanti: Rivedi e crea.
Nella scheda Rivedi e crea è possibile osservare come le informazioni fornite nella procedura guidata vengono convertite in un manifesto della distribuzione JSON.
Una volta revisionato il manifesto, selezionare Crea per completare l'impostazione del modulo.
Visualizzare i dati
Passare al dispositivo IoT Edge per visualizzare l'interazione tra il modulo Analisi di flusso di Azure e il modulo SimulatedTemperatureSensor.
Nota
Se si usa una macchina virtuale per un dispositivo, usare Azure Cloud Shell per accedere direttamente a tutti i servizi autenticati di Azure.
Verificare che tutti i moduli siano in esecuzione in Docker:
iotedge list
Visualizzare tutti i log di sistema e i dati di metrica. Sostituire {moduleName} con il nome del modulo di Analisi di flusso di Azure:
iotedge logs -f {moduleName}
Osservare l'effetto del comando reset sul modulo SimulatedTemperatureSensor visualizzando i log del sensore:
iotedge logs SimulatedTemperatureSensor
È possibile osservare un progressivo aumento della temperatura del computer fino a raggiungere i 70 gradi per 30 secondi. Il modulo di Analisi di flusso attiva quindi la reimpostazione e la temperatura del computer ritorna a 21.
Pulire le risorse
Se si vuole continuare con l'articolo consigliato successivo, mantenere le risorse e le configurazioni create e riutilizzarle. È anche possibile continuare a usare lo stesso dispositivo IoT Edge come dispositivo di test.
In caso contrario, eliminare le configurazioni locali e le risorse di Azure usate in questo articolo per evitare addebiti.
Eliminare le risorse di Azure
L'eliminazione delle risorse e dei gruppi di risorse di Azure è irreversibile. Assicurarsi di non eliminare accidentalmente il gruppo di risorse sbagliato o le risorse errate. Se è stato creato l'hub IoT all'interno di un gruppo di risorse esistente con risorse da mantenere, eliminare solo la risorsa dell'hub IoT stessa, non il gruppo di risorse.
Per eliminare le risorse:
Accedere al portale di Azure e selezionare Gruppi di risorse.
Selezionare il nome del gruppo di risorse contenente le risorse di test di IoT Edge.
Esaminare l'elenco delle risorse contenute nel gruppo di risorse. Per eliminarle tutte, è possibile selezionare Elimina gruppo di risorse. Se se ne vogliono eliminare solo alcune, è possibile selezionare ogni risorsa per eliminarle singolarmente.
Passaggi successivi
In questa esercitazione si configura un processo di Analisi di flusso di Azure per analizzare i dati dal dispositivo IoT Edge. Il modulo Analisi di flusso di Azure è stato caricato nel dispositivo IoT Edge per elaborare e reagire all'aumento della temperatura in locale e inviare il flusso di dati aggregati al cloud. Per informazioni su come Azure IoT Edge può aiutare a creare altre soluzioni, provare l'esercitazione successiva.