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:
IoT Edge 1.5
Importante
IoT Edge 1.5 LTS è la versione supportata. IoT Edge 1.4 LTS è in fine vita a partire dal 12 novembre 2024. Se si usa una versione precedente, vedere Aggiornare IoT Edge.
Per provare Azure IoT Edge in questa guida introduttiva, distribuire il codice in Linux in un dispositivo IoT Edge Windows. IoT Edge consente di gestire in remoto il codice nei dispositivi, in modo da poter inviare più carichi di lavoro ai dispositivi perimetrali. Per questo avvio rapido, è consigliabile usare il proprio dispositivo Client Windows in modo da poter constatare quanto sia facile usare Azure IoT Edge per Linux in Windows. Se si vuole usare Windows Server o una macchina virtuale di Azure per creare la distribuzione, seguire la procedura descritta nella guida pratica sull'installazione e il provisioning di Azure IoT Edge per Linux in un dispositivo Windows.
In questa guida introduttiva si apprende come:
- Creare un hub IoT.
- Registrare un dispositivo IoT Edge nell'hub IoT.
- Installare e avviare IoT Edge per Linux in Windows Runtime nel dispositivo.
- Distribuire in remoto un modulo in un dispositivo IoT Edge e inviare dati di telemetria.
Questo avvio rapido illustra come configurare in un dispositivo Azure IoT Edge per Linux in Windows. Verrà quindi distribuito un modulo dal portale di Azure nel dispositivo. Il modulo che verrà usato è un sensore simulato che genera dati relativi a temperatura, umidità e pressione. Altre esercitazioni su Azure IoT Edge si basano sulle operazioni eseguite qui tramite la distribuzione di moduli che analizzano dati simulati per ottenere informazioni aziendali accurate.
Se non si ha una sottoscrizione di Azure attiva, creare un account gratuito prima di iniziare.
Prerequisiti
Preparare l'ambiente per l'interfaccia della riga di comando di Azure.
Utilizzare l'ambiente Bash in Azure Cloud Shell. Per altre informazioni, vedere Introduzione ad Azure Cloud Shell.
Se si preferisce, per eseguire localmente i comandi di riferimento CLI, installare l'interfaccia della riga di comando di Azure per eseguire i relativi comandi di riferimento. Per l'esecuzione in Windows o macOS, è consigliabile eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker. Per altre informazioni, vedere Come eseguire l’interfaccia della riga di comando di Azure in un contenitore Docker.
Se si usa un'installazione locale, accedere all'interfaccia della riga di comando di Azure con il comando az login. Per completare il processo di autenticazione, seguire la procedura visualizzata nel terminale. Per altre opzioni di accesso, vedere Eseguire l'autenticazione ad Azure con l'interfaccia della riga di comando di Azure.
Quando richiesto, installare l'estensione dell'interfaccia della riga di comando di Azure al primo utilizzo. Per altre informazioni sulle estensioni, vedere Usare e gestire le estensioni con l'interfaccia della riga di comando di Azure.
Eseguire az version per trovare la versione e le librerie dipendenti installate. Per eseguire l'aggiornamento alla versione più recente, eseguire az upgrade.
Creare un gruppo cloud di risorse per la gestione di tutte le risorse usate in questa guida introduttiva.
az group create --name IoTEdgeResources --location westus2
Assicurarsi che il dispositivo IoT Edge soddisfi i requisiti seguenti:
Requisiti di sistema
- Windows 101/11 (Pro, Enterprise, IoT Enterprise) 1 Windows 10 build minima 17763 con tutti gli aggiornamenti cumulativi correnti installati.
Requisiti hardware
- Memoria minima disponibile: 1 GB
- Spazio libero su disco minimo: 10 GB
Creare un hub IoT
Per iniziare, creare un hub IoT con l'interfaccia della riga di comando di Azure.
Per questa guida introduttiva è possibile usare il livello gratuito dell'hub IoT Azure. Se l'hub IoT è già stato usato in passato ed è disponibile un hub, è possibile usarlo qui.
Il codice seguente crea un hub F1 gratuito nel gruppo di risorse IoTEdgeResources. Sostituire {hub_name} con un nome univoco per l'hub IoT. La creazione di un hub IoT potrebbe richiedere alcuni minuti.
az iot hub create --resource-group IoTEdgeResources --name {hub_name} --sku F1 --partition-count 2
Se si verifica un errore perché è già presente un hub gratuito nella sottoscrizione, modificare lo SKU in S1. Se si verifica un errore che indica che il nome dell'hub IoT non è disponibile, qualcuno ha già un hub con lo stesso nome. Provare con un nuovo nome.
Registrare un dispositivo IoT Edge
Registrare un dispositivo IoT Edge con l'hub IoT appena creato.
Creare un'identità del dispositivo per il dispositivo simulato in modo che possa comunicare con l'hub IoT. L'identità del dispositivo si trova nel cloud e si usa una stringa di connessione del dispositivo univoca per associare un dispositivo fisico a un'identità del dispositivo.
I dispositivi IoT Edge si comportano e possono essere gestiti in modo diverso rispetto a tipici dispositivi IoT. Usare il flag --edge-enabled per dichiarare che questa identità è destinata a un dispositivo IoT Edge.
In Azure Cloud Shell immettere il comando seguente per creare un dispositivo denominato myEdgeDevice nell'hub.
az iot hub device-identity create --device-id myEdgeDevice --edge-enabled --hub-name {hub_name}Se viene visualizzato un errore relativo alle
iothubownerchiavi dei criteri iothubowner, assicurarsi che Cloud Shell esegua la versione più recente dell'estensione IoT Azure.Visualizzare la stringa di connessione per il dispositivo, che collega il dispositivo fisico alla sua identità nell'hub IoT. Contiene il nome dell'hub IoT, il nome del dispositivo e quindi una chiave condivisa che autentica le connessioni tra i due.
az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name {hub_name}Copiare il valore della chiave
connectionStringdall'output JSON e salvarlo. Questo valore corrisponde alla stringa di connessione del dispositivo. Questa stringa verrà usata per configurare il runtime IoT Edge nella sezione successiva.Ad esempio, la stringa di connessione può essere simile a
HostName=contoso-hub.azure-devices.net;DeviceId=myEdgeDevice;SharedAccessKey=<DEVICE_SHARED_ACCESS_KEY>.
Installare e avviare il runtime di IoT Edge
Installare IoT Edge per Linux in Windows nel dispositivo e configurarlo con la stringa di connessione del dispositivo.
Eseguire i comandi di PowerShell seguenti nel dispositivo di destinazione in cui si vuole distribuire Azure IoT Edge per Linux in Windows. Per eseguire la distribuzione in un dispositivo di destinazione remota tramite PowerShell, usare Remote PowerShell per stabilire una connessione a un dispositivo remoto ed eseguire questi comandi in remoto su tale dispositivo.
In una sessione di PowerShell con privilegi elevati, eseguire il comando seguente per abilitare Hyper-V. Per altre informazioni, vedere Hyper-V in Windows 10.
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -AllIn una sessione di PowerShell con privilegi elevati, eseguire ognuno dei comandi seguenti per scaricare IoT Edge per Linux in Windows.
X64/AMD64
$msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi')) $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_5_LTS_X64" -OutFile $msiPathARM64
$msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi')) $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_5_LTS_ARM64" -OutFile $msiPath
Installare IoT Edge per Linux in Windows nel dispositivo.
Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"Impostare su
AllSignedi criteri di esecuzione nel dispositivo di destinazione, se non lo sono già. È possibile controllare i criteri di esecuzione correnti in un prompt di PowerShell con privilegi elevati usando:Get-ExecutionPolicy -ListSe il criterio di esecuzione di
local machinenon èAllSigned, è possibile impostare i criteri di esecuzione come segue:Set-ExecutionPolicy -ExecutionPolicy AllSigned -ForceCreare la distribuzione di IoT Edge per Linux in Windows.
Deploy-EflowImmettere 'Y' per accettare le condizioni di licenza.
Immettere 'O' o 'R' per attivare o disattivare i Dati di diagnostica facoltativi, a seconda delle preferenze dell'utente. Di seguito è riportata una distribuzione corretta.
Effettuare il provisioning del dispositivo usando la stringa di connessione del dispositivo recuperata nella sezione precedente. Sostituire il segnaposto con valore personalizzato.
Provision-EflowVm -provisioningType ManualConnectionString -devConnString "<CONNECTION_STRING_HERE>"
Il dispositivo IoT Edge è ora configurato. È pronto per eseguire i moduli distribuiti nel cloud.
Distribuire un modulo
Gestire il dispositivo Azure IoT Edge dal cloud per distribuire un modulo che invia dati di telemetria all'hub IoT.
Una delle principali funzionalità di Azure IoT Edge è la possibilità di distribuire codice ai dispositivi IoT Edge dal cloud. I moduli IoT Edge sono pacchetti eseguibili implementati come contenitori. In questa sezione viene distribuito un modulo predefinito dalla sezione Moduli IoT Edge di Microsoft Artifact Registry.
Questo modulo simula un sensore e invia i dati generati. Si tratta di un codice utile per iniziare a usare IoT Edge, perché è possibile usare i dati simulati per lo sviluppo e i test. Per informazioni specifiche sul funzionamento di questo modulo, è possibile visualizzare il codice sorgente del sensore temperatura simulato.
Seguire questa procedura per distribuire il primo modulo.
Accedere al portale di Azure e passare all'hub IoT.
Dal menu a sinistra, selezionare Dispositivi nel menu Gestione dispositivi.
Selezionare l'ID dispositivo di destinazione dall'elenco dei dispositivi.
Note
Quando si crea un nuovo dispositivo IoT Edge, verrà visualizzato il codice di stato
417 -- The device's deployment configuration is not setnel portale di Azure. Questo stato è normale e significa che il dispositivo è pronto per ricevere una distribuzione del modulo.Sulla barra superiore selezionare Imposta moduli.
Scegliere i moduli da eseguire nel dispositivo. È possibile scegliere tra i moduli già creati, i moduli di Registro artefatti Microsoft o i moduli creati manualmente. In questa guida introduttiva si distribuirà un modulo dal Registro artefatti Microsoft.
Nella sezione Moduli IoT Edge, selezionare Aggiungi e scegliere Modulo IoT Edge.
Aggiornare le impostazioni del modulo seguenti:
Impostazione valore Nome modulo IoT SimulatedTemperatureSensorURI dell'immagine mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:latestCriterio di riavvio sempre Stato desiderato in esecuzione Selezionare Avanti: Route per continuare a configurare le route.
Aggiungere una route che invia tutti i messaggi dal modulo temperatura simulata all'hub IoT.
Impostazione valore Nome SimulatedTemperatureSensorToIoTHubvalore FROM /messages/modules/SimulatedTemperatureSensor/* INTO $upstreamSelezionare Avanti: Rivedi e crea.
Esaminare il file JSON e quindi selezionare Crea. Il file JSON definisce tutti i moduli distribuiti nel dispositivo IoT Edge.
Note
Quando si invia una nuova distribuzione a un dispositivo IoT Edge, non viene eseguito il push di alcun elemento al dispositivo. Al contrario, il dispositivo richiede periodicamente eventuali nuove istruzioni all'hub IoT. Se il dispositivo trova un manifesto della distribuzione aggiornato, usa le informazioni sulla nuova distribuzione per eseguire il pull delle immagini dei moduli dal cloud, quindi avvia l'esecuzione dei moduli in locale. Il processo potrebbe richiedere alcuni minuti.
Dopo aver creato i dettagli della distribuzione dei moduli, la procedura guidata torna nella pagina Dettagli dispositivo. Visualizzare lo stato della distribuzione nella scheda Moduli.
Saranno elencati tre moduli: $edgeAgent, $edgeHub, e SimulatedTemperatureSensor. Se uno o più moduli hanno Sì in Specificato in distribuzione ma non in Segnalato da dispositivo, il dispositivo IoT Edge li sta ancora avviando. Attendere alcuni minuti e quindi aggiornare la pagina.
In caso di problemi di distribuzione dei moduli, vedere Risolvere problemi relativi ai dispositivi IoT Edge dal portale di Azure.
Visualizzare i dati generati
In questa guida introduttiva è stato creato un nuovo dispositivo IoT Edge, nel quale è stato installato il runtime di IoT Edge. È stato quindi usato il portale di Azure per distribuire un modulo di IoT Edge da eseguire nel dispositivo senza dovere apportare modifiche al dispositivo stesso.
Il modulo di cui è stato eseguito il push crea i dati dell'ambiente di esempio che potranno essere usati successivamente per il test. Il sensore simulato monitora un macchinario e l'ambiente intorno al macchinario. Questo sensore può trovarsi ad esempio in una sala server, in una fabbrica o su una turbina eolica. I messaggi inviati includono la temperatura e l'umidità dell'ambiente, la temperatura e la pressione dell'apparecchiatura e un timestamp. Le esercitazioni di IoT Edge usano i dati creati da questo modulo come dati di test per le analisi.
Accedere alla macchina virtuale IoT Edge per Linux in Windows usando il comando seguente nella sessione di PowerShell:
Connect-EflowVmNote
L'unico account autorizzato a connettersi tramite SSH alla macchina virtuale è quello dell'utente che lo ha creato.
Dopo aver eseguito l'accesso, è possibile controllare l'elenco dei moduli IoT Edge in esecuzione usando il comando Linux seguente:
sudo iotedge listVisualizzare i messaggi inviati dal modulo del sensore temperatura al cloud usando il comando Linux seguente:
sudo iotedge logs SimulatedTemperatureSensor -fSuggerimento
Quando viene fatto riferimento a nomi di moduli, i comandi di IoT Edge fanno distinzione tra maiuscole e minuscole.
Pulire le risorse
Se si vuole continuare con le esercitazioni di IoT Edge, ignorare questo passaggio. È possibile usare il dispositivo registrato e configurato in questo avvio rapido. In caso contrario, è possibile eliminare le risorse di Azure create per evitare addebiti.
Se la macchina virtuale e l'hub IoT sono stati creati in un nuovo gruppo di risorse, è possibile eliminare il gruppo e tutte le risorse associate. Se non si vuole eliminare l'intero gruppo, è possibile eliminare le singole risorse.
Importante
Verificare il contenuto del gruppo di risorse per assicurarsi che non vi siano dati da conservare. L'eliminazione di un gruppo di risorse è irreversibile.
Usare il comando seguente per rimuovere il gruppo IoTEdgeResources. L'eliminazione potrebbe richiedere alcuni minuti.
az group delete --name IoTEdgeResources
Per confermare la rimozione del gruppo di risorse, usare questo comando per visualizzare l'elenco dei gruppi di risorse.
az group list
Disinstallare IoT Edge per Linux in Windows
Per rimuovere IoT Edge Azure per Linux o Windows, usare i comandi seguenti dalla riga di comando.
- Aprire Impostazioni in Windows
- Selezionare Aggiungere o Rimuovere applicazioni
- Selezionare l'app Azure IoT Edge
- Selezionare Disinstalla
Passaggi successivi
In questa guida introduttiva è stato creato un dispositivo IoT Edge ed è stata usata l'interfaccia cloud di Azure IoT Edge per distribuire il codice nel dispositivo. A questo punto, è disponibile un dispositivo di test che genera dati non elaborati relativi al proprio ambiente.
Nell'esercitazione successiva si apprenderà come monitorare l'attività e l'integrità del dispositivo dal portale di Azure.