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.
Azure IoT Edge consente di distribuire e gestire la logica di business nei dispositivi perimetrali usando i moduli. I moduli di Azure IoT Edge sono l'unità di calcolo più piccola gestita da IoT Edge e possono contenere i servizi di Azure, ad esempio Analisi di flusso di Azure, o il codice specifico della soluzione. Per comprendere come vengono sviluppati, distribuiti e gestiti i moduli, considerare i quattro elementi concettuali di un modulo:
- Un'immagine del modulo è un pacchetto che contiene il software che definisce il modulo.
- Un'istanza del modulo è l'unità di calcolo specifica che esegue l'immagine del modulo in un dispositivo di IoT Edge. L'istanza del modulo viene avviata dal runtime di IoT Edge.
- Un'identità del modulo è una parte di informazioni (incluse le credenziali di sicurezza) archiviate in hub IoT associate a ogni istanza del modulo.
- Un modulo gemello è un documento JSON archiviato in hub IoT che contiene informazioni sullo stato per un'istanza del modulo, inclusi metadati, configurazioni e condizioni.
Istanze e immagini del moduli
Le immagini del modulo di IoT Edge contengono applicazioni che sfruttano i vantaggi delle funzionalità di gestione, sicurezza e comunicazione del runtime di IoT Edge. È possibile sviluppare le proprie immagini di modulo o esportarne una da un servizio di Azure supportato, ad esempio Analisi di flusso di Azure. Le immagini sono presenti nel cloud ed è possibile aggiornarle, modificarle e distribuirle in soluzioni diverse. Ad esempio, un modulo che usa Machine Learning per stimare l'output della linea di produzione è un'immagine separata da un modulo che usa visione artificiale per controllare un drone.
Ogni volta che il runtime di IoT Edge distribuisce e avvia un'immagine del modulo in un dispositivo, crea una nuova istanza di tale modulo. Due dispositivi in diverse parti del mondo possono usare la stessa immagine del modulo. Tuttavia, ogni dispositivo avrebbe la propria istanza del modulo quando il modulo viene avviato sul dispositivo.
Nell'implementazione, le immagini dei moduli esistono come immagini del contenitore in un repository e le istanze del modulo sono contenitori nei dispositivi.
Identità del modulo
Quando il runtime di IoT Edge crea una nuova istanza del modulo, assegna un'identità del modulo corrispondente. L'hub IoT archivia l'identità del modulo, che funge da ambito di indirizzamento e sicurezza per tutte le comunicazioni locali e cloud per l'istanza del modulo.
L'identità dell'istanza del modulo dipende dall'identità del dispositivo e dal nome assegnato al modulo nella soluzione. Ad esempio, se si assegna un nome a un modulo insight
e lo si distribuisce in un dispositivo denominato Hannover01
, il runtime di IoT Edge crea un'identità del modulo corrispondente denominata /devices/Hannover01/modules/insight
.
Negli scenari in cui è necessario distribuire più volte un'immagine del modulo nello stesso dispositivo, è possibile distribuirla con nomi diversi.
Moduli gemelli
Ogni istanza del modulo ha un modulo gemello corrispondente usato per configurarlo. L'identità del modulo collega l'istanza e il gemello.
Un modulo gemello è un documento JSON che archivia le proprietà di configurazione e le informazioni del modulo. Questo concetto è parallelo a quello di dispositivo gemello dell'hub IoT. La struttura di un modulo gemello è identica a quella di un dispositivo gemello. Le API per interagire con entrambi i tipi di gemelli sono le stesse. L'unica differenza tra i due è l'identità usata per creare un'istanza dell'SDK client.
// Create a ModuleClient object. This ModuleClient will act on behalf of a
// module since it is created with a module's connection string instead
// of a device connection string.
ModuleClient client = new ModuleClient.CreateFromEnvironmentAsync(settings);
await client.OpenAsync();
// Get the module twin
Twin twin = await client.GetTwinAsync();
Funzionalità offline
I moduli di Azure IoT Edge funzionano offline per un periodo illimitato dopo la sincronizzazione con l'hub IoT una sola volta. I dispositivi IoT Edge possono estendere questa funzionalità offline anche ad altri dispositivi IoT. Per altre informazioni, vedere Informazioni sulle funzionalità offline estese per dispositivi, moduli e dispositivi downstream IoT Edge.