Condividi tramite


Preparare l'ambiente di sviluppo e test per IoT Edge

Applica a:IoT Edge 1.5 segno di spunta IoT Edge 1.5

Importante

IoT Edge 1.5 LTS è la versione supportata. IoT Edge 1,4 LTS ha raggiunto la fine della vita il 12 novembre 2024. Se si usa una versione precedente, vedere Update IoT Edge.

IoT Edge sposta la logica di business esistente nei dispositivi che operano all'esterno. Per preparare le applicazioni e i carichi di lavoro da eseguire come moduli IoT Edge, è necessario compilarli come contenitori. Questo articolo fornisce indicazioni su come configurare l'ambiente di sviluppo in modo da poter creare correttamente una soluzione IoT Edge. Dopo aver configurato l'ambiente di sviluppo, è possibile imparare a sviluppare i propri moduli IoT Edge.

In qualsiasi soluzione IoT Edge considerare almeno due computer: il dispositivo IoT Edge (o i dispositivi) che esegue il modulo IoT Edge e il computer di sviluppo che compila, testa e distribuisce moduli. Questo articolo è incentrato principalmente sul computer di sviluppo. A scopo di test, le due macchine possono essere le stesse. È possibile eseguire IoT Edge nel computer di sviluppo e distribuirvi i moduli.

Sistema operativo

IoT Edge viene eseguito in un set specifico di sistemi operativi supportati. Quando si sviluppa per IoT Edge, è possibile usare la maggior parte dei sistemi operativi in grado di eseguire un motore di contenitori. Il motore del contenitore è un requisito nel computer di sviluppo per compilare i moduli come contenitori ed eseguirne il push in un registro contenitori.

Se il computer di sviluppo non è in grado di eseguire IoT Edge, passare alla sezione Strumenti di test di questo articolo per informazioni su come testare ed eseguire il debug in locale.

I sistemi operativi del computer di sviluppo e i dispositivi IoT Edge non devono corrispondere. Tuttavia, il sistema operativo del contenitore deve essere coerente tra il computer di sviluppo e il dispositivo IoT Edge. Ad esempio, è possibile sviluppare moduli in un computer Windows e distribuirli in un dispositivo Linux. Il computer Windows deve eseguire contenitori Linux per compilare i moduli per il dispositivo Linux.

Motore del contenitore

Il concetto centrale di IoT Edge consiste nel fatto che è possibile distribuire in remoto la logica aziendale e cloud ai dispositivi tramite la creazione di pacchetti in contenitori. Per creare i container, è necessario un motore di container sulla macchina di sviluppo.

Qualsiasi motore di contenitori compatibile con l'Open Container Initiative, come Docker, può creare immagini dei moduli IoT Edge. Moby è il motore di container supportato per i dispositivi IoT Edge nell'ambiente di produzione. Se si usano gli Ubuntu Core snaps, Canonical gestisce lo snap Docker e lo supporta per scenari di produzione.

Strumenti di sviluppo

Lo strumento Azure IoT Edge Dev Tool è uno strumento da riga di comando per sviluppare e testare moduli IoT Edge. È possibile creare nuovi scenari di IoT Edge, compilare immagini del modulo, eseguire moduli in un simulatore e monitorare i messaggi inviati a IoT Hub. Lo strumento iotedgedev è lo strumento consigliato per lo sviluppo di moduli IoT Edge.

Sia Visual Studio che Visual Studio Code dispongono di estensioni aggiuntive per lo sviluppo di soluzioni IoT Edge. Queste estensioni forniscono modelli specifici del linguaggio per creare e distribuire nuovi scenari di IoT Edge. Le estensioni Azure IoT Edge per Visual Studio e Visual Studio Code consentono di scrivere codice, compilare, distribuire ed eseguire il debug delle soluzioni IoT Edge. È possibile creare un'intera soluzione IoT Edge che contiene più moduli e le estensioni aggiornano automaticamente un modello manifesto di distribuzione con ogni nuova aggiunta di modulo. Le estensioni consentono anche la gestione dei dispositivi IoT dall'interno di Visual Studio o Visual Studio Code. È possibile distribuire moduli in un dispositivo, monitorare lo stato e visualizzare i messaggi quando arrivano a IoT Hub. Infine, entrambe le estensioni usano lo strumento di sviluppo IoT EdgeHub per abilitare l'esecuzione locale e il debug dei moduli nel computer di sviluppo.

IoT Edge Dev Tool (Strumento di Sviluppo per Edge IoT)

Lo strumento di sviluppo Azure IoT Edge semplifica lo sviluppo di IoT Edge con funzionalità della riga di comando. Questo strumento offre comandi dell'interfaccia della riga di comando per sviluppare e testare i moduli ed eseguirne il debug. Lo strumento di sviluppo IoT Edge funziona con il sistema di sviluppo, indipendentemente dal fatto che le dipendenze siano state installate manualmente nel computer o usino lo strumento predefinito IoT Edge Dev Container per eseguire lo strumento iotedgedev in un contenitore.

Per altre informazioni e per iniziare, vedere IoT Edge Dev Tool wiki.

estensione Visual Studio Code

L'estensione Azure IoT Edge per Visual Studio Code fornisce modelli di modulo IoT Edge basati su linguaggi di programmazione, tra cui C, C#, Java, Node.jse Python. Sono inclusi anche i modelli per le funzioni Azure in C#.

Importante

L'estensione Azure IoT Edge Visual Studio Code è in modalità maintenance. Lo strumento iotedgedev è lo strumento consigliato per lo sviluppo di moduli IoT Edge.

Per altre informazioni e per il download, vedere Azure IoT Edge per Visual Studio Code.

Oltre alle estensioni IoT Edge, potrebbe risultare utile installare altre estensioni per lo sviluppo. Ad esempio, è possibile usare Docker per Visual Studio Code per gestire immagini, contenitori e registri. Inoltre, tutti i principali linguaggi supportati hanno estensioni per Visual Studio Code che possono essere utili quando si sviluppano moduli.

L'estensione Azure IoT Hub è utile come complementare per l'estensione Azure IoT Edge.

estensione Visual Studio 2019/2022

Gli strumenti di Azure IoT Edge per Visual Studio forniscono un modello di modulo IoT Edge basato su C# e C.

Importante

Le estensioni Azure IoT Edge Visual Studio sono in modalità di manutenzione e non sono più disponibili in Visual Studio Marketplace. Lo strumento iotedgedev è lo strumento consigliato per lo sviluppo di moduli IoT Edge.

Strumenti di test

Esistono diversi strumenti di test per simulare IoT Edge dispositivi o moduli di debug in modo più efficiente. Nella tabella seguente viene illustrato un confronto generale tra gli strumenti. Le singole sezioni seguenti descrivono in modo più specifico ogni strumento.

Solo il runtime di IoT Edge supporta le distribuzioni di produzione, ma gli strumenti seguenti supportano lo sviluppo e il test. Usare questi strumenti per simulare o creare facilmente dispositivi IoT Edge. Questi strumenti non si escludono a vicenda, ma possono essere combinati per un'esperienza completa di sviluppo.

Strumento Detto anche Piattaforme supportate Ideale per
Strumento di sviluppo IoT EdgeHub iotedgehubdev Windows, Linux, macOS Simulazione di un dispositivo per il debug dei moduli.
IoT Edge Dev Container iotedgedev Windows, Linux, macOS Sviluppo senza installazione delle dipendenze.

Strumento di sviluppo IoT EdgeHub

Il Azure IoT EdgeHub Dev Tool offre un'esperienza di sviluppo e debug locale. Lo strumento consente di avviare IoT Edge moduli senza il runtime di IoT Edge in modo da poter creare, sviluppare, testare, eseguire ed eseguire il debug di moduli e soluzioni IoT Edge in locale. Non è necessario caricare le immagini in un registro di contenitori e distribuirle su un dispositivo per i test.

Lo strumento di sviluppo IoT EdgeHub funziona con le estensioni Visual Studio e Visual Studio Code e con lo strumento di sviluppo IoT Edge. Lo strumento di sviluppo supporta lo sviluppo di cicli interni e il test del ciclo esterno, quindi si integra anche con altri strumenti DevOps.

Importante

Lo strumento di sviluppo IoT EdgeHub è in modalità maintenance. È consigliabile usare una macchina virtuale Linux con IoT Edge runtime installato, dispositivo fisico o EFLOW.

Per altre informazioni e per l'installazione, vedere Azure IoT EdgeHub Dev Tool.

IoT Edge Dev Container

Il contenitore di sviluppo Azure IoT Edge è un contenitore Docker con tutte le dipendenze necessarie per lo sviluppo IoT Edge. Questo contenitore semplifica l'uso del linguaggio in cui si vuole sviluppare, tra cui C#, Python, Node.jse Java. Occorre solo installare un motore di contenitore, come Docker o Moby, per eseguire il pull del contenitore nel computer di sviluppo.

Per altre informazioni, vedere Azure IoT Edge Dev Container.

Strumenti DevOps

Quando si è pronti per sviluppare soluzioni su larga scala per scenari di produzione completi, sfruttare i vantaggi dei principi DevOps moderni tra cui automazione, monitoraggio e processi semplificati di ingegneria del software. IoT Edge include estensioni per supportare gli strumenti DevOps, tra cui Azure DevOps, progetti Azure DevOps e Jenkins. Se si vuole personalizzare una pipeline esistente o usare uno strumento DevOps diverso, ad esempio CircleCI o TravisCI, usare le funzionalità dell'interfaccia della riga di comando incluse in IoT Edge Dev Tool.

Passaggi successivi