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 è di fine vita a partire dal 12 novembre 2024. Se si usa una versione precedente, vedere Aggiornare IoT Edge.
IoT Edge sposta la logica di business esistente ai dispositivi edge. Per preparare le applicazioni e i carichi di lavoro per l'esecuzione 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 moduli IoT Edge personalizzati.
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 distribuire i moduli a tale computer.
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 che possono eseguire un motore del contenitore. 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.
Non è necessario che i sistemi operativi del computer di sviluppo e dei dispositivi IoT Edge corrispondano. 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 a 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 è la possibilità di distribuire in modalità remota la logica di business e cloud ai dispositivi creando pacchetti nei contenitori. Per creare i container, è necessario un motore di container sulla macchina di sviluppo.
Qualsiasi motore di contenitori compatibile con Open Container Initiative, come Docker, è in grado di compilare immagini del modulo IoT Edge. Moby è il motore di contenitori 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
Azure IoT Edge Dev Tool è uno strumento da riga di comando per sviluppare e testare moduli IoT Edge. È possibile creare nuovi scenari IoT Edge, compilare immagini del modulo, eseguire moduli in un simulatore e monitorare i messaggi inviati all'hub IoT. Lo strumento iotedgedev è lo strumento consigliato per lo sviluppo di moduli IoT Edge.
Sia Visual Studio che Visual Studio Code hanno estensioni aggiuntive per sviluppare soluzioni IoT Edge. Queste estensioni forniscono modelli specifici del linguaggio per aiutare a creare e distribuire nuovi scenari di IoT Edge. Le estensioni di Azure IoT Edge per Visual Studio e Visual Studio Code consentono di codificare, compilare e distribuire soluzioni IoT Edge e a eseguirne il debug. È possibile creare un'intera soluzione IoT Edge contenente più moduli; le estensioni aggiornano automaticamente un modello di manifesto della distribuzione con ogni nuova aggiunta di moduli. Le estensioni consentono anche la gestione dei dispositivi IoT da Visual Studio o Visual Studio Code. È possibile distribuire moduli in un dispositivo, monitorare lo stato e visualizzare i messaggi man mano che arrivano all'hub IoT. 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.
Strumento di sviluppo IoT Edge
Lo strumento di sviluppo di 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 il contenitore di sviluppo IoT Edge predefinito per eseguire lo strumento iotedgedev in un contenitore.
Per altre informazioni e per iniziare, vedere wiki di IoT Edge Dev Tool.
Estensione Visual Studio Code
L'estensione Azure IoT Edge per Visual Studio Code offre modelli di moduli IoT Edge basati su linguaggi di programmazione come C, C#, Java, Node.js e Python. Sono inclusi anche i modelli per le funzioni di Azure in C#.
Importante
L'estensione Azure IoT Edge per Visual Studio Code è in modalità di manutenzione. 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 risultare utili quando si sviluppano i moduli.
L'estensione Hub IoT di Azure è utile come supporto per l'estensione Azure IoT Edge.
Estensione di Visual Studio 2019/2022
Gli strumenti di Azure IoT Edge per Visual Studio offrono un modello di modulo IoT Edge basato su C# e C.
Importante
Le estensioni di Visual Studio di Azure IoT Edge 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
Sono disponibili vari strumenti di test per aiutare a simulare i dispositivi IoT Edge o eseguire il debug dei moduli 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. |
| Contenitore per lo sviluppo IoT Edge | iotedgedev | Windows, Linux, macOS | Sviluppo senza installazione delle dipendenze. |
Strumento di sviluppo IoT EdgeHub
Lo strumento di sviluppo Azure IoT EdgeHub offre un'esperienza di sviluppo e debug locale. Lo strumento consente di avviare moduli senza runtime IoT Edge, in modo da poter creare, sviluppare ed eseguire moduli e soluzioni IoT Edge in locale ed eseguirne il debug. 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 di 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à di manutenzione. Prendere in considerazione l'uso di una macchina virtuale Linux con il runtime di IoT Edge installato, un dispositivo fisico o EFLOW.
Per altre informazioni e per l'installazione, vedere Azure IoT EdgeHub Dev Tool.
Contenitore per lo sviluppo IoT Edge
Azure IoT Edge Dev Container è un contenitore Docker con tutte le dipendenze necessarie per lo sviluppo di IoT Edge. Questo contenitore rende più semplice iniziare con qualsiasi linguaggio di programmazione desiderato per lo sviluppo, tra cui C#, Python, Node.js e 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 strumenti DevOps, tra cui Azure DevOps, Azure DevOps Projects 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 nello strumento di sviluppo IoT Edge.
Passaggi successivi
- Integrazione continua e distribuzione continua su dispositivi Azure IoT Edge
- IoT Edge DevOps GitHub repo (Il repository GitHub per DevOps IoT Edge)