Che cos'è AWS IoT Greengrass? - AWS IoT Greengrass

AWS IoT Greengrass Version 1 è entrato nella fase di estensione della vita utile il 30 giugno 2023. Per ulteriori informazioni, consulta la politica AWS IoT Greengrass V1 di manutenzione. Dopo questa data, AWS IoT Greengrass V1 non rilascerà aggiornamenti che forniscano funzionalità, miglioramenti, correzioni di bug o patch di sicurezza. I dispositivi che funzionano AWS IoT Greengrass V1 non subiranno interruzioni e continueranno a funzionare e a connettersi al cloud. Ti consigliamo vivamente di eseguire la migrazione a AWS IoT Greengrass Version 2, che aggiunge nuove importanti funzionalità e supporto per piattaforme aggiuntive.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Che cos'è AWS IoT Greengrass?

AWS IoT Greengrass è un software che estende le funzionalità cloud ai dispositivi locali. Consente ai dispositivi di raccogliere e analizzare i dati più vicini all'origine delle informazioni, reagire autonomamente a eventi locali e comunicare in modo sicuro tra di loro sulle reti locali. I dispositivi locali possono anche comunicare in modo sicuro AWS IoT Core ed esportare i dati IoT in. Cloud AWS AWS IoT Greengrass gli sviluppatori possono utilizzare AWS Lambda funzioni e connettori predefiniti per creare applicazioni serverless che vengono distribuite sui dispositivi per l'esecuzione locale.

Il diagramma seguente mostra l'architettura di base di. AWS IoT Greengrass

Greengrass core consente l'esecuzione locale di Lambda, messaggistica, ombre dei dispositivi e sicurezza. Il core di Greengrass interagisce con Cloud AWS e funziona localmente con connettività intermittente.

AWS IoT Greengrass consente ai clienti di creare dispositivi IoT e logica applicativa. In particolare, AWS IoT Greengrass fornisce la gestione basata sul cloud della logica applicativa che viene eseguita sui dispositivi. Le funzioni e i connettori Lambda distribuiti localmente vengono attivati da eventi locali, messaggi dal cloud o altre fonti.

In AWS IoT Greengrass, i dispositivi comunicano in modo sicuro su una rete locale e scambiano messaggi tra loro senza doversi connettere al cloud. AWS IoT Greengrass fornisce un gestore di messaggi pub/sub locale in grado di bufferizzare in modo intelligente i messaggi in caso di interruzione della connettività, in modo da preservare i messaggi in entrata e in uscita sul cloud.

AWS IoT Greengrass protegge i dati degli utenti:

  • Attraverso l'autenticazione e l'autorizzazione sicura dei dispositivi.

  • Attraverso la connettività sicura nella rete locale.

  • Tra i dispositivi locali e il cloud.

Le credenziali di sicurezza dei dispositivi funzionano in gruppo fino alla revoca, anche in caso di interruzione della connettività al cloud, in modo che i dispositivi possano continuare a comunicare in modo sicuro a livello locale.

AWS IoT Greengrass fornisce over-the-air aggiornamenti sicuri delle funzioni Lambda.

AWS IoT Greengrass è composto da:

  • Distribuzioni software

    • AWS IoT Greengrass Software di base

    • AWS IoT Greengrass SDK principale

  • Servizio cloud

    • AWS IoT Greengrass API

  • Funzionalità

    • Runtime Lambda

    • Implementazione shadow

    • Gestore messaggistica

    • Gestione di gruppo

    • Servizio di individuazione

    • O agente di ver-the-air aggiornamento

    • Stream manager

    • Accesso alle risorse locali

    • Inferenza del Machine Learning locale

    • Secrets Manager locale

    • Connettori con integrazione predefinita con servizi, protocolli e software

AWS IoT Greengrass Software di base

Il software AWS IoT Greengrass Core offre le seguenti funzionalità:

  • Implementazione ed esecuzione locale di connettori e funzioni Lambda.

  • Elabora i flussi di dati localmente con esportazioni automatiche verso. Cloud AWS

  • Messaggistica MQTT sulla rete locale tra dispositivi, connettori e funzioni Lambda utilizzando abbonamenti gestiti.

  • Messaggistica MQTT tra AWS IoT dispositivi, connettori e funzioni Lambda utilizzando abbonamenti gestiti.

  • Connessioni sicure tra dispositivi e Cloud AWS utilizzo dell'autenticazione e dell'autorizzazione dei dispositivi.

  • Sincronizzazione shadow locale dei dispositivi. Le ombre possono essere configurate per la sincronizzazione con. Cloud AWS

  • Accesso controllato alle risorse volume e dispositivo locali.

  • Distribuzione di modelli di machine learning formati nel cloud per l'esecuzione di un'inferenza locale.

  • Rilevamento automatico dell'indirizzo IP che permette ai dispositivi di scoprire il dispositivo Greengrass core.

  • Distribuzione centralizzata di una configurazione del gruppo, nuova o aggiornata. Dopo il download dei dati di configurazione, il dispositivo core viene riavviato automaticamente.

  • Aggiornamenti software sicuri over-the-air (OTA) delle funzioni Lambda definite dall'utente.

  • Archiviazione sicura e crittografata dei segreti locali e accesso controllato tramite connettori e funzioni Lambda.

AWS IoT Greengrass le istanze principali sono configurate tramite AWS IoT Greengrass API che creano e aggiornano le definizioni di AWS IoT Greengrass gruppo archiviate nel cloud.

AWS IoT Greengrass Versioni software principali

AWS IoT Greengrass fornisce diverse opzioni per l'installazione del software AWS IoT Greengrass Core, inclusi i file di download tar.gz, uno script di avvio rapido e apt installazioni su piattaforme Debian supportate. Per ulteriori informazioni, consulta Installare il software AWS IoT Greengrass Core..

Le seguenti schede descrivono le novità e le modifiche apportate alle versioni del software AWS IoT Greengrass Core.

GGC v1.11
1.11.6

Correzione di bug e miglioramenti:

  • Maggiore resilienza in caso di interruzione improvvisa dell'alimentazione durante una distribuzione.

  • È stato risolto un problema a causa del quale il danneggiamento dei dati dello stream manager poteva impedire l'avvio del software AWS IoT Greengrass Core.

  • È stato risolto un problema per cui i nuovi dispositivi client non potevano connettersi al core in determinati scenari.

  • È stato risolto un problema a causa del quale i nomi degli stream manager non potevano contenere.log.

1.11.5

Correzione di bug e miglioramenti:

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.11.4

Correzione di bug e miglioramenti:

  • È stato risolto un problema con lo stream manager che impediva gli aggiornamenti al AWS IoT Greengrass software Core v1.11.3. Se utilizzi stream manager per esportare dati nel cloud, ora puoi utilizzare un aggiornamento OTA per aggiornare una versione precedente v1.x del software Core alla v1.11.4. AWS IoT Greengrass

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.11.3

Correzione di bug e miglioramenti:

  • È stato risolto un problema che impediva al software AWS IoT Greengrass Core, eseguito in un attimo, di rispondere in un attimo su un dispositivo Ubuntu dopo un'improvvisa interruzione dell'alimentazione del dispositivo.

  • È stato risolto un problema che causava un ritardo nella consegna dei messaggi MQTT a funzioni Lambda di lunga durata.

  • È stato risolto un problema che impediva l'invio corretto dei messaggi MQTT quando il maxWorkItemCount valore era impostato su un valore maggiore di. 1024

  • È stato risolto un problema che faceva sì che l'agente di aggiornamento OTA ignorasse il KeepAlive periodo MQTT specificato nella keepAlive proprietà in. config.json

  • Miglioramenti delle prestazioni generali e correzioni di bug.

Importante

Se utilizzi stream manager per esportare dati nel cloud, non eseguire l'aggiornamento al software AWS IoT Greengrass Core v1.11.3 da una versione precedente v1.x. Se stai abilitando lo stream manager per la prima volta, ti consigliamo vivamente di installare prima la versione più recente del software Core. AWS IoT Greengrass

1.11.1

Correzione di bug e miglioramenti:

  • È stato risolto un problema che causava un maggiore utilizzo della memoria per lo stream manager.

  • È stato risolto un problema che faceva sì che lo stream manager reimpostasse il numero di sequenza dello stream 0 se il dispositivo principale Greengrass era spento per un periodo più lungo del periodo specificato time-to-live (TTL) dei dati del flusso.

  • È stato risolto un problema che impediva allo stream manager di interrompere correttamente i tentativi di esportare i dati in. Cloud AWS

1.11.0

Nuove caratteristiche:

  • Un agente di telemetria sul core di Greengrass raccoglie dati di telemetria locali e li pubblica su. Cloud AWS Per recuperare i dati di telemetria per un'ulteriore elaborazione, i clienti possono creare una EventBridge regola Amazon e iscriversi a un target. Per ulteriori informazioni, consulta Raccolta di dati di telemetria sanitaria del sistema dai dispositivi principali. AWS IoT Greengrass

  • Un'API HTTP locale restituisce un'istantanea dello stato corrente dei processi di lavoro locali avviati da. AWS IoT Greengrass Per ulteriori informazioni, consulta Chiamare l'API per il controllo sanitario locale.

  • Un gestore di flussi esporta automaticamente i dati in Amazon S3 e. AWS IoT SiteWise

    I nuovi parametri dello stream manager consentono di aggiornare gli stream esistenti e sospendere o riprendere l'esportazione dei dati.

  • Support per l'esecuzione di funzioni Lambda di Python 3.8.x sul core.

  • Una nuova ggDaemonPort proprietà da utilizzare per configurare il numero di porta IPC principale di Greengrass. config.json Il numero di porta predefinito è 8000.

    Una nuova systemComponentAuthTimeout proprietà config.jsonche si utilizza per configurare il timeout per l'autenticazione IPC di base di Greengrass. Il timeout predefinito è di 5000 millisecondi.

  • Il numero massimo di AWS IoT dispositivi per AWS IoT Greengrass gruppo è stato aumentato da 200 a 2500.

    È stato aumentato il numero massimo di abbonamenti per gruppo da 1000 a 10000.

    Per ulteriori informazioni, consulta Endpoint e quote per AWS IoT Greengrass.

Correzione di bug e miglioramenti:

  • Ottimizzazione generale che può ridurre l'utilizzo della memoria dei processi di servizio Greengrass.

  • Un nuovo parametro di configurazione di runtime (mountAllBlockDevices) consente a Greengrass di utilizzare i bind mount per montare tutti i dispositivi a blocchi in un contenitore dopo aver configurato OverlayFS. Questa funzionalità ha risolto un problema che causava il fallimento della distribuzione di Greengrass se /usr non rientrava nella / gerarchia.

  • È stato risolto un problema che causava un errore di AWS IoT Greengrass base se /tmp si trattava di un collegamento simbolico.

  • È stato risolto un problema che consentiva all'agente di distribuzione Greengrass di rimuovere gli artefatti del modello di machine learning inutilizzati dalla cartella. mlmodel_public

  • Miglioramenti delle prestazioni generali e correzioni di bug.

Extended life versions
1.10.5

Correzione di bug e miglioramenti:

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.10.4

Correzione di bug e miglioramenti:

  • È stato risolto un problema che impediva al software AWS IoT Greengrass Core, eseguito in un attimo, di rispondere in un attimo su un dispositivo Ubuntu dopo un'improvvisa interruzione dell'alimentazione del dispositivo.

  • È stato risolto un problema che causava un ritardo nella consegna dei messaggi MQTT a funzioni Lambda di lunga durata.

  • È stato risolto un problema che impediva l'invio corretto dei messaggi MQTT quando il maxWorkItemCount valore era impostato su un valore maggiore di. 1024

  • È stato risolto un problema che faceva sì che l'agente di aggiornamento OTA ignorasse il KeepAlive periodo MQTT specificato nella keepAlive proprietà in. config.json

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.10.3

Correzione di bug e miglioramenti:

  • Una nuova systemComponentAuthTimeout proprietà config.jsonche si utilizza per configurare il timeout per l'autenticazione IPC di base di Greengrass. Il timeout predefinito è di 5000 millisecondi.

  • È stato risolto un problema che causava un maggiore utilizzo della memoria per lo stream manager.

1.10.2

Correzione di bug e miglioramenti:

  • Una nuova mqttOperationTimeout proprietà in config.json che potete utilizzare per impostare il timeout per le operazioni di pubblicazione, sottoscrizione e annullamento dell'iscrizione nelle connessioni MQTT con. AWS IoT Core

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.10.1

Correzione di bug e miglioramenti:

  • Stream manager è più resiliente al danneggiamento dei dati dei file.

  • Risolto un problema che causava un errore di montaggio di sysfs sui dispositivi che utilizzavano Linux kernel 5.1 e versioni successive.

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.10.0

Nuove caratteristiche:

  • Gli aggiornamenti O ver-the-air (OTA) con integrazione della sicurezza hardware possono essere configurati con OpenSSL 1.1.

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.9.4

Correzione di bug e miglioramenti:

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.9.3

Nuove caratteristiche:

  • Support per ARMv6L. AWS IoT Greengrass Il software di base v1.9.3 o successivo può essere installato su distribuzioni Raspbian su architetture ARMv6L (ad esempio, su dispositivi Raspberry Pi Zero).

  • Aggiornamenti OTA sulla porta 443 con ALPN. I core Greengrass che utilizzano la porta 443 per il traffico MQTT ora supportano gli aggiornamenti software over-the-air (OTA). AWS IoT Greengrass utilizza l'estensione TLS Application Layer Protocol Network (ALPN) per abilitare queste connessioni. Per ulteriori informazioni, consulta Aggiornamenti OTA del software AWS IoT Greengrass Core e Connessione alla porta 443 o tramite un proxy di rete.

Correzione di bug e miglioramenti:

  • Risolve un bug introdotto nella versione 1.9.0 che impediva alle funzioni Lambda di Python 2.7 di inviare payload binari ad altre funzioni Lambda.

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.9.2

Nuove caratteristiche:

  • Support per OpenWrt. AWS IoT Greengrass Il software di base v1.9.2 o successivo può essere installato su OpenWrt distribuzioni con architetture Armv8 (AArch64) e ARMv7l. OpenWrt Attualmente, non supporta l'inferenza ML.

1.9.1

Correzione di bug e miglioramenti:

  • Correzione di un bug introdotto nella v1.9.0 che invia messaggi da cloud contenenti i caratteri jolly nell'argomento.

1.9.0

Nuove caratteristiche:

  • Support per i runtime Lambda di Python 3.7 e Node.js 8.10. Le funzioni Lambda che utilizzano i runtime Python 3.7 e Node.js 8.10 ora possono essere eseguite su un core. AWS IoT Greengrass (AWS IoT Greengrass continua a supportare i runtime Python 2.7 e Node.js 6.10.)

  • Connessioni MQTT ottimizzate. Il core Greengrass stabilisce meno connessioni con AWS IoT Core. Questa modifica è in grado di ridurre i costi operativi per le spese basate sul numero di connessioni.

  • Chiave Elliptic Curve (EC) per il server MQTT locale. Il server locale MQTT supporta le chiavi EC in aggiunta alle chiavi RSA. Il certificato del server MQTT ha una firma RSA SHA-256, indipendentemente dal tipo di chiave. Per ulteriori informazioni, consulta AWS IoT Greengrass principi di sicurezza fondamentali.

Correzione di bug e miglioramenti:

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.8.4

È stato risolto un problema relativo alla sincronizzazione shadow e alla riconnessione di Device Certificate Manager (DCM).

Miglioramenti delle prestazioni generali e correzioni di bug.

1.8.3

Miglioramenti delle prestazioni generali e correzioni di bug.

1.8.2

Miglioramenti delle prestazioni generali e correzioni di bug.

1.8.1

Miglioramenti delle prestazioni generali e correzioni di bug.

1.8.0

Nuove caratteristiche:

  • Identità di accesso predefinita configurabile per le funzioni Lambda nel gruppo. Questa impostazione a livello di gruppo determina le autorizzazioni predefinite utilizzate per eseguire le funzioni Lambda. Puoi impostare l'ID utente, l'ID gruppo o entrambi. Le singole funzioni Lambda possono sovrascrivere l'identità di accesso predefinita del relativo gruppo. Per ulteriori informazioni, consulta Impostazione dell'identità di accesso predefinita per le funzioni Lambda in un gruppo.

  • Traffico HTTPS sulla porta 443. La comunicazione HTTPS può essere configurata per viaggiare sulla porta 443 anziché sulla porta predefinita 8443. Ciò integra il AWS IoT Greengrass supporto per l'estensione TLS Application Layer Protocol Network (ALPN) e consente a tutto il traffico di messaggistica Greengrass, sia MQTT che HTTPS, di utilizzare la porta 443. Per ulteriori informazioni, consulta Connessione alla porta 443 o tramite un proxy di rete.

  • ID client AWS IoT con nomi prevedibili per le connessioni. Questa modifica abilita il supporto per AWS IoT Device Defender e gli eventi del ciclo di vita AWS IoT, in modo da poter ricevere notifiche per eventi di connessione, disconnessione, sottoscrizione e annullamento sottoscrizione. La denominazione prevedibile semplifica inoltre la creazione della logica intorno agli ID di connessione (ad esempio, per creare modelli di policy di sottoscrizione basati su attributi dei certificati). Per ulteriori informazioni, consulta ID client per connessioni MQTT con AWS IoT.

Correzione di bug e miglioramenti:

  • È stato risolto un problema relativo alla sincronizzazione shadow e alla riconnessione di Device Certificate Manager (DCM).

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.7.1

Nuove caratteristiche:

Correzione di bug e miglioramenti:

  • Miglioramenti delle prestazioni generali e correzioni di bug.

In aggiunta, le seguenti caratteristiche sono disponibili con questo rilascio:

  • Il AWS IoT Device Tester for AWS IoT Greengrass, che puoi utilizzare per verificare il funzionamento dell'architettura della CPU, della configurazione del kernel e dei driver. AWS IoT Greengrass Per ulteriori informazioni, consulta Utilizzo di AWS IoT Device Tester per AWS IoT Greengrass V1.

  • I pacchetti AWS IoT Greengrass Core software, AWS IoT Greengrass Core SDK e AWS IoT Greengrass Machine Learning SDK possono essere scaricati tramite Amazon. CloudFront Per ulteriori informazioni, consulta AWS IoT Greengrass download.

1.6.1

Nuove caratteristiche:

Correzione di bug e miglioramenti:

  • Miglioramento delle performance relative alla pubblicazione di messaggi all'interno di Greengrass Core e tra dispositivi e il dispositivo principale.

  • Riduzione delle risorse di calcolo necessarie per elaborare i log generati dalle funzioni Lambda definite dall'utente.

1.5.0

Nuove caratteristiche:

Correzione di bug e miglioramenti:

  • Riduzione complessiva dell'impatto sulla memoria.

  • Miglioramenti delle prestazioni per l'invio di messaggi al cloud.

  • Miglioramenti delle prestazioni e della stabilità per l'agente di download, Device Certificate Manager e l'agente di aggiornamento OTA.

  • Correzioni di bug minori.

1.3.0

Nuove caratteristiche:

1.1.0

Nuove caratteristiche:

  • AWS IoT Greengrass I gruppi distribuiti possono essere ripristinati eliminando funzioni, sottoscrizioni e configurazioni Lambda. Per ulteriori informazioni, consulta Reimpostazione delle distribuzioni.

  • Support per i runtime Node.js 6.10 e Java 8 Lambda, oltre a Python 2.7.

Per migrare dalla versione precedente del core: AWS IoT Greengrass

  • Copia i certificati dalla cartella /greengrass/configuration/certs a /greengrass/certs.

  • Copia /greengrass/configuration/config.json su /greengrass/config/config.json.

  • Esegui /greengrass/ggc/core/greengrassd invece di /greengrass/greengrassd.

  • Distribuisci il gruppo al nuovo core.

1.0.0

Versione iniziale

AWS IoT Greengrass gruppi

Un gruppo Greengrass è un insieme di impostazioni e componenti, ad esempio un nucleo Greengrass, dispositivi e sottoscrizioni. I gruppi vengono utilizzati per definire una portata di interazione. Ad esempio, un gruppo può rappresentare un piano di un edificio, un camion o un intero sito minerario. Il seguente diagramma mostra i componenti che possono far parte di un gruppo Greengrass.

AWS IoT Core, Greengrass e componenti Lambda, con elementi Core, Settings, Lambda, Subscriptions, Connectors, Devices e Resources interconnessi.

Nello schema precedente:

A: Definizione del gruppo Greengrass

Informazioni sulle impostazioni di gruppo e sui componenti.

B: Impostazioni del gruppo Greengrass

Ciò include:

C: Greengrass core

La AWS IoT cosa (dispositivo) che rappresenta il nucleo di Greengrass. Per ulteriori informazioni, consulta Configurazione di AWS IoT Greengrass Core.

D: Definizione della funzione Lambda

Un elenco di funzioni Lambda eseguite localmente sul core, con i dati di configurazione associati. Per ulteriori informazioni, consulta Esegui le funzioni Lambda sul core AWS IoT Greengrass.

E: definizione di sottoscrizione

Un elenco di sottoscrizioni che consentono le comunicazioni tramite messaggi MQTT. Una sottoscrizione definisce:

  • Un'origine e una destinazione del messaggio. Questi possono essere dispositivi client, funzioni Lambda AWS IoT Core, connettori e il servizio shadow locale.

  • Un argomento (o oggetto) utilizzato per filtrare i messaggi.

Per ulteriori informazioni, consulta Sottoscrizioni gestite nel flusso di lavoro di messaggistica MQTT.

F: definizione di un connettore

Un elenco di connettori eseguiti in locale nel core, con i dati di configurazione associati. Per ulteriori informazioni, consulta Integrazione con servizi e protocolli tramite i connettori Greengrass.

G: definizione di dispositivo

Un elenco di AWS IoT elementi (noti come dispositivi o dispositivi client) che fanno parte del gruppo Greengrass, con i dati di configurazione associati. Per ulteriori informazioni, consulta Dispositivi in AWS IoT Greengrass.

H: definizione di risorsa

Un elenco delle risorse locali, delle risorse di Machine Learning e delle risorse segrete su Greengrass core, con i relativi dati di configurazione. Per ulteriori informazioni, consulta Accedi alle risorse locali con funzioni e connettori Lambda, Esecuzione dell'inferenza di Machine Learning e Distribuzione dei segreti nel core AWS IoT Greengrass.

Una volta implementate, la definizione del gruppo Greengrass, le funzioni Lambda, i connettori, le risorse e la tabella di sottoscrizione vengono copiate nel dispositivo principale. Per ulteriori informazioni, consulta Distribuzione di gruppi AWS IoT Greengrass in un AWS IoT Greengrass Core.

Dispositivi in AWS IoT Greengrass

Un gruppo Greengrass può contenere due tipi di AWS IoT dispositivi:

Core Greengrass

Un core Greengrass è un dispositivo che esegue il software AWS IoT Greengrass Core, che gli consente di comunicare direttamente con AWS IoT Core e con il AWS IoT Greengrass servizio. Un core dispone del proprio certificato del dispositivo utilizzato per l'autenticazione con. AWS IoT Core Dispone di un'ombra del dispositivo e di una voce nel AWS IoT Core registro. I core Greengrass eseguono un runtime Lambda locale, un agente di distribuzione e un tracker di indirizzi IP che invia le informazioni sull'indirizzo IP al AWS IoT Greengrass servizio per consentire ai dispositivi client di scoprire automaticamente il gruppo e le informazioni di connessione principali. Per ulteriori informazioni, consulta Configurazione di AWS IoT Greengrass Core.

Nota

Un gruppo Greengrass deve contenere un solo core.

Dispositivo client

I dispositivi client (chiamati anche dispositivi connessi, dispositivi Greengrass o dispositivi) sono dispositivi che si connettono a un core Greengrass tramite MQTT. Dispongono del proprio certificato di AWS IoT Core autenticazione, di un dispositivo shadow e di una voce nel registro. AWS IoT Core I dispositivi client possono eseguire FreerTOS o utilizzare Device SDK AWS IoT Greengrass o Discovery API per ottenere informazioni di rilevamento utilizzate per connettersi e autenticarsi con il core AWS IoT dello stesso gruppo Greengrass. Per informazioni su come utilizzare la AWS IoT console per creare e configurare un dispositivo client per, consulta. AWS IoT GreengrassModulo 4: Interagire con i dispositivi client in unAWS IoT Greengrassgruppo Oppure, per esempi che mostrano come utilizzare per creare e configurare un dispositivo client AWS IoT Greengrass, consulta create-device-definitionla sezione AWS CLI Command Reference. AWS CLI

In un gruppo Greengrass, è possibile creare abbonamenti che consentono ai dispositivi client di comunicare tramite MQTT con funzioni Lambda, connettori e altri dispositivi client del gruppo e AWS IoT Core con o il servizio shadow locale. I messaggi MQTT vengono instradati tramite il core. Se il dispositivo principale perde la connettività al cloud, i dispositivi client possono continuare a comunicare sulla rete locale. Le dimensioni dei dispositivi client possono variare, da dispositivi più piccoli basati su microcontrollori a dispositivi di grandi dimensioni. Attualmente, un gruppo Greengrass può contenere fino a 2.500 dispositivi client. Un dispositivo client può far parte di un massimo di 10 gruppi.

Nota

OPC-UA è uno standard di scambio di informazioni per la comunicazione industriale. Per implementare il supporto per OPC-UA sul core Greengrass, puoi utilizzare il connettore IoT. SiteWise Il connettore invia i dati dei dispositivi industriali dai server OPC-UA alle proprietà degli asset in. AWS IoT SiteWise

La tabella seguente mostra come questi tipi di dispositivi sono correlati tra loro.

AWS IoT Core e la matrice delle funzionalità del dispositivo che mostra configurazioni come Certificate, IoT Policy, IoT Thing supportate sia sul lato Core che Device, con le autorizzazioni Device Gateway, Sensor/Actuator e Functions esterne al Greengrass Group contrassegnate.

Il dispositivo AWS IoT Greengrass principale archivia i certificati in due posizioni:

  • Certificato dispositivo core in /greengrass-root/certs In genere, il certificato del dispositivo core è denominato hash.cert.pem (ad esempio 86c84488a5.cert.pem). Questo certificato viene utilizzato dal AWS IoT client per l'autenticazione reciproca quando il core si connette ai AWS IoT Greengrass servizi AWS IoT Core and.

  • Certificato server MQTT in /greengrass-root/ggc/var/state/server. Il certificato del server MQTT è denominato server.crt. Questo certificato viene utilizzato per l'autenticazione reciproca tra il server MQTT locale (nel core Greengrass) e i dispositivi Greengrass.

    Nota

    greengrass-root rappresenta il percorso in cui il software AWS IoT Greengrass Core è installato sul dispositivo. In genere, questa è la directory /greengrass.

SDK

I seguenti SDK AWS forniti vengono utilizzati per lavorare con: AWS IoT Greengrass

AWS SDK

Usa l' AWS SDK per creare applicazioni che interagiscono con qualsiasi AWS servizio, tra cui Amazon S3, Amazon DynamoDB e altro ancora. AWS IoT AWS IoT Greengrass Nel contesto di AWS IoT Greengrass, puoi utilizzare l' AWS SDK nelle funzioni Lambda distribuite per effettuare chiamate dirette a qualsiasi servizio. AWS Per ulteriori informazioni, consulta SDK AWS.

AWS IoT SDK del dispositivo

Il AWS IoT Device SDK aiuta i dispositivi a connettersi a AWS IoT Core e. AWS IoT Greengrass Per ulteriori informazioni, consulta AWS IoT Device SDK nella AWS IoT Device Guide.

I dispositivi client possono utilizzare qualsiasi piattaforma AWS IoT Device SDK v2 per scoprire informazioni di connettività per un core Greengrass. Le informazioni sulla connettività includono:

  • Gli ID dei gruppi Greengrass a cui appartiene il dispositivo client.

  • Gli indirizzi IP del core Greengrass in ogni gruppo. Questi sono anche chiamati endpoint principali.

  • Il certificato CA di gruppo, utilizzato dai dispositivi per l'autenticazione reciproca con il core. Per ulteriori informazioni, consulta Flusso di lavoro di connessione del dispositivo.

Nota

Nella versione 1 dei AWS IoT Device SDK, solo le piattaforme C++ e Python forniscono il supporto di discovery integrato.

AWS IoT Greengrass SDK principale

Il AWS IoT Greengrass Core SDK consente alle funzioni Lambda di interagire con il core Greengrass, pubblicare messaggi AWS IoT, interagire con il servizio shadow locale, richiamare altre funzioni Lambda distribuite e accedere a risorse segrete. Questo SDK viene utilizzato dalle funzioni Lambda eseguite su AWS IoT Greengrass un core. Per ulteriori informazioni, consulta Core SDK AWS IoT Greengrass.

AWS IoT Greengrass SDK per il Machine Learning

Il AWS IoT Greengrass Machine Learning SDK consente alle funzioni Lambda di utilizzare modelli di machine learning distribuiti nel core di Greengrass come risorse di apprendimento automatico. Questo SDK viene utilizzato dalle funzioni Lambda che vengono eseguite su AWS IoT Greengrass un core e interagiscono con un servizio di inferenza locale. Per ulteriori informazioni, consulta AWS IoT GreengrassSDK per il Machine Learning.

Piattaforme supportate e requisiti

Le schede seguenti elencano le piattaforme e i requisiti supportati per il software Core. AWS IoT Greengrass

Nota

È possibile scaricare il software AWS IoT Greengrass Core dalla sezione Download del software AWS IoT Greengrass principale.

GGC v1.11

Piattaforme supportate:

  • Architettura: Armv7l

    • Sistema operativo: Linux

    • Sistema operativo: Linux (OpenWrt)

  • Architettura: Armv8 (AArch64)

    • Sistema operativo: Linux

    • Sistema operativo: Linux (OpenWrt)

  • Architettura: Armv6l

    • Sistema operativo: Linux

  • Architettura: x86_64

    • Sistema operativo: Linux

  • Le piattaforme Windows, macOS e Linux possono essere eseguite AWS IoT Greengrass in un contenitore Docker. Per ulteriori informazioni, consulta Esecuzione di AWS IoT Greengrass in un container Docker.

Requisiti:

  • Almeno 128 MB di spazio su disco disponibile per il software AWS IoT Greengrass Core. Se si utilizza l'agente di aggiornamento OTA, il minimo è 400 MB.

  • Almeno 128 MB di RAM assegnati al software AWS IoT Greengrass Core. Con stream manager abilitato, il valore minimo è 198 MB di RAM.

    Nota

    Lo Stream Manager è abilitato per impostazione predefinita se si utilizza l'opzione di creazione del gruppo predefinito sulla AWS IoT console per creare il gruppo Greengrass.

  • Versione kernel Linux:

  • GNU C Library (glibc) versione 2.14 o successiva. OpenWrt le distribuzioni richiedono musl C Library versione 1.1.16 o successiva.

  • La directory /var/run deve essere presente sul dispositivo.

  • I file /dev/stdin, /dev/stdout e /dev/stderr devono essere disponibili.

  • La protezione hardlink e softlink deve essere attivata sul dispositivo. Altrimenti, AWS IoT Greengrass può essere eseguito solo in modalità non sicura, utilizzando il flag. -i

  • Le seguenti configurazioni del kernel Linux devono essere abilitate sul dispositivo:

    • Spazio dei nomi:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Cgroups:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      Il kernel deve supportare cgroups. I seguenti requisiti si applicano all'esecuzione AWS IoT Greengrass con contenitori:

      • Il memory cgroup deve essere abilitato e montato per consentire di AWS IoT Greengrass impostare il limite di memoria per le funzioni Lambda.

      • Il device cgroup deve essere abilitato e montato se le funzioni Lambda con accesso alle risorse locali vengono utilizzate per aprire file AWS IoT Greengrass sul dispositivo principale.

    • Altri:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • Il certificato root per Amazon S3 AWS IoT deve essere presente nell'archivio di fiducia del sistema.

  • Stream Manager richiede il runtime Java 8 e un minimo di 70 MB di RAM oltre ai requisiti di memoria del software AWS IoT Greengrass Core di base. Lo Stream Manager è abilitato per impostazione predefinita quando si utilizza l'opzione di creazione del gruppo predefinito sulla AWS IoT console. Stream manager non è supportato nelle OpenWrt distribuzioni.

  • Librerie che supportano il AWS Lambda runtime richiesto dalle funzioni Lambda che desideri eseguire localmente. Le librerie obbligatorie devono essere installate sul core e aggiunte alla variabile di ambiente PATH. È possibile installare più librerie nello stesso core.

    • Python versione 3.8 per funzioni che utilizzano il runtime Python 3.8.

    • Python versione 3.7 per funzioni che usano il runtime Python 3.7.

    • Python versione 2.7 per funzioni che usano il runtime Python 2.7.

    • Node.js versione 12.x per le funzioni che utilizzano il runtime Node.js 12.x.

    • Java versione 8 o successive per funzioni che usano il runtime Java 8.

      Nota

      L'esecuzione di Java su una OpenWrt distribuzione non è supportata ufficialmente. Tuttavia, se la tua OpenWrt build supporta Java, potresti essere in grado di eseguire funzioni Lambda create in Java sui tuoi dispositivi. OpenWrt

      Per ulteriori informazioni sul AWS IoT Greengrass supporto per i runtime Lambda, consulta. Esegui le funzioni Lambda sul core AWS IoT Greengrass

  • I seguenti comandi di shell (non le BusyBox varianti) sono richiesti dall'agente di aggiornamento over-the-air (OTA):

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

    • /bin/bash

GGC v1.10

Piattaforme supportate:

  • Architettura: Armv7l

    • Sistema operativo: Linux

    • Sistema operativo: Linux (OpenWrt)

  • Architettura: Armv8 (AArch64)

    • Sistema operativo: Linux

    • Sistema operativo: Linux (OpenWrt)

  • Architettura: Armv6l

    • Sistema operativo: Linux

  • Architettura: x86_64

    • Sistema operativo: Linux

  • Le piattaforme Windows, macOS e Linux possono essere eseguite AWS IoT Greengrass in un contenitore Docker. Per ulteriori informazioni, consulta Esecuzione di AWS IoT Greengrass in un container Docker.

Requisiti:

  • Almeno 128 MB di spazio su disco disponibile per il software AWS IoT Greengrass Core. Se si utilizza l'agente di aggiornamento OTA, il minimo è 400 MB.

  • Almeno 128 MB di RAM assegnati al software AWS IoT Greengrass Core. Con stream manager abilitato, il valore minimo è 198 MB di RAM.

    Nota

    Lo Stream Manager è abilitato per impostazione predefinita se si utilizza l'opzione di creazione del gruppo predefinito sulla AWS IoT console per creare il gruppo Greengrass.

  • Versione kernel Linux:

  • GNU C Library (glibc) versione 2.14 o successiva. OpenWrt le distribuzioni richiedono musl C Library versione 1.1.16 o successiva.

  • La directory /var/run deve essere presente sul dispositivo.

  • I file /dev/stdin, /dev/stdout e /dev/stderr devono essere disponibili.

  • La protezione hardlink e softlink deve essere attivata sul dispositivo. Altrimenti, AWS IoT Greengrass può essere eseguito solo in modalità non sicura, utilizzando il flag. -i

  • Le seguenti configurazioni del kernel Linux devono essere abilitate sul dispositivo:

    • Spazio dei nomi:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Cgroups:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      Il kernel deve supportare cgroups. I seguenti requisiti si applicano all'esecuzione AWS IoT Greengrass con contenitori:

      • Il memory cgroup deve essere abilitato e montato per consentire di AWS IoT Greengrass impostare il limite di memoria per le funzioni Lambda.

      • Il device cgroup deve essere abilitato e montato se le funzioni Lambda con accesso alle risorse locali vengono utilizzate per aprire file AWS IoT Greengrass sul dispositivo principale.

    • Altri:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • Il certificato root per Amazon S3 AWS IoT deve essere presente nell'archivio di fiducia del sistema.

  • Stream Manager richiede il runtime Java 8 e un minimo di 70 MB di RAM oltre ai requisiti di memoria del software AWS IoT Greengrass Core di base. Lo Stream Manager è abilitato per impostazione predefinita quando si utilizza l'opzione di creazione del gruppo predefinito sulla AWS IoT console. Stream manager non è supportato nelle OpenWrt distribuzioni.

  • Librerie che supportano il AWS Lambda runtime richiesto dalle funzioni Lambda che desideri eseguire localmente. Le librerie obbligatorie devono essere installate sul core e aggiunte alla variabile di ambiente PATH. È possibile installare più librerie nello stesso core.

    • Python versione 3.7 per funzioni che usano il runtime Python 3.7.

    • Python versione 2.7 per funzioni che usano il runtime Python 2.7.

    • Node.js versione 12.x per le funzioni che utilizzano il runtime Node.js 12.x.

    • Java versione 8 o successive per funzioni che usano il runtime Java 8.

      Nota

      L'esecuzione di Java su una OpenWrt distribuzione non è supportata ufficialmente. Tuttavia, se la tua OpenWrt build supporta Java, potresti essere in grado di eseguire funzioni Lambda create in Java sui tuoi dispositivi. OpenWrt

      Per ulteriori informazioni sul AWS IoT Greengrass supporto per i runtime Lambda, consulta. Esegui le funzioni Lambda sul core AWS IoT Greengrass

  • I seguenti comandi di shell (non le BusyBox varianti) sono richiesti dall'agente di aggiornamento over-the-air (OTA):

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

    • /bin/bash

GGC v1.9

Piattaforme supportate:

  • Architettura: Armv7l

    • Sistema operativo: Linux

    • Sistema operativo: Linux (OpenWrt)

  • Architettura: Armv8 (AArch64)

    • Sistema operativo: Linux

    • Sistema operativo: Linux (OpenWrt)

  • Architettura: Armv6l

    • Sistema operativo: Linux

  • Architettura: x86_64

    • Sistema operativo: Linux

  • Le piattaforme Windows, macOS e Linux possono essere eseguite AWS IoT Greengrass in un contenitore Docker. Per ulteriori informazioni, consulta Esecuzione di AWS IoT Greengrass in un container Docker.

Requisiti:

  • Almeno 128 MB di spazio su disco disponibile per il software AWS IoT Greengrass Core. Se si utilizza l'agente di aggiornamento OTA, il minimo è 400 MB.

  • Almeno 128 MB di RAM assegnati al software AWS IoT Greengrass Core.

  • Versione kernel Linux:

  • GNU C Library (glibc) versione 2.14 o successiva. OpenWrt le distribuzioni richiedono musl C Library versione 1.1.16 o successiva.

  • La directory /var/run deve essere presente sul dispositivo.

  • I file /dev/stdin, /dev/stdout e /dev/stderr devono essere disponibili.

  • La protezione hardlink e softlink deve essere attivata sul dispositivo. Altrimenti, AWS IoT Greengrass può essere eseguito solo in modalità non sicura, utilizzando il flag. -i

  • Le seguenti configurazioni del kernel Linux devono essere abilitate sul dispositivo:

    • Spazio dei nomi:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Cgroups:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      Il kernel deve supportare cgroups. I seguenti requisiti si applicano all'esecuzione AWS IoT Greengrass con contenitori:

      • Il memory cgroup deve essere abilitato e montato per consentire di AWS IoT Greengrass impostare il limite di memoria per le funzioni Lambda.

      • Il device cgroup deve essere abilitato e montato se le funzioni Lambda con accesso alle risorse locali vengono utilizzate per aprire file AWS IoT Greengrass sul dispositivo principale.

    • Altri:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • Il certificato root per Amazon S3 AWS IoT deve essere presente nell'archivio di fiducia del sistema.

  • Librerie che supportano il AWS Lambda runtime richiesto dalle funzioni Lambda che desideri eseguire localmente. Le librerie obbligatorie devono essere installate sul core e aggiunte alla variabile di ambiente PATH. È possibile installare più librerie nello stesso core.

    • Python versione 2.7 per funzioni che usano il runtime Python 2.7.

    • Python versione 3.7 per funzioni che usano il runtime Python 3.7.

    • Node.js versione 6.10 o successive per funzioni che usano il runtime Node.js 6.10.

    • Node.js versione 8.10 o successive per funzioni che usano il runtime Node.js 8.10.

    • Java versione 8 o successive per funzioni che usano il runtime Java 8.

      Nota

      L'esecuzione di Java su una OpenWrt distribuzione non è supportata ufficialmente. Tuttavia, se la tua OpenWrt build supporta Java, potresti essere in grado di eseguire funzioni Lambda create in Java sui tuoi dispositivi. OpenWrt

      Per ulteriori informazioni sul AWS IoT Greengrass supporto per i runtime Lambda, consulta. Esegui le funzioni Lambda sul core AWS IoT Greengrass

  • I seguenti comandi di shell (non le BusyBox varianti) sono richiesti dall'agente di aggiornamento over-the-air (OTA):

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

GGC v1.8
  • Piattaforme supportate:

  • I seguenti elementi sono obbligatori:

    • Almeno 128 MB di spazio su disco disponibile per il software AWS IoT Greengrass Core. Se si utilizza l'agente di aggiornamento OTA, il minimo è 400 MB.

    • Almeno 128 MB di RAM assegnati al software AWS IoT Greengrass Core.

    • Versione kernel Linux:

    • Libreria GNU C (glibc) versione 2.14 o successiva.

    • La directory /var/run deve essere presente sul dispositivo.

    • I file /dev/stdin, /dev/stdout e /dev/stderr devono essere disponibili.

    • La protezione hardlink e softlink deve essere attivata sul dispositivo. Altrimenti, AWS IoT Greengrass può essere eseguito solo in modalità non sicura, utilizzando il flag. -i

    • Le seguenti configurazioni del kernel Linux devono essere abilitate sul dispositivo:

      • Spazio dei nomi:

        • CONFIG_IPC_NS

        • CONFIG_UTS_NS

        • CONFIG_USER_NS

        • CONFIG_PID_NS

      • Cgroups:

        • CONFIG_CGROUP_DEVICE

        • CONFIG_CGROUPS

        • CONFIG_MEMCG

        Il kernel deve supportare cgroups. I seguenti requisiti si applicano all'esecuzione AWS IoT Greengrass con contenitori:

        • Il memory cgroup deve essere abilitato e montato per consentire di AWS IoT Greengrass impostare il limite di memoria per le funzioni Lambda.

        • Il device cgroup deve essere abilitato e montato se le funzioni Lambda con accesso alle risorse locali vengono utilizzate per aprire file AWS IoT Greengrass sul dispositivo principale.

      • Altri:

        • CONFIG_POSIX_MQUEUE

        • CONFIG_OVERLAY_FS

        • CONFIG_HAVE_ARCH_SECCOMP_FILTER

        • CONFIG_SECCOMP_FILTER

        • CONFIG_KEYS

        • CONFIG_SECCOMP

        • CONFIG_SHMEM

    • Il certificato root per Amazon S3 AWS IoT deve essere presente nell'archivio di fiducia del sistema.

  • I seguenti elementi sono obbligatori in base a condizioni:

    • Librerie che supportano il AWS Lambda runtime richiesto dalle funzioni Lambda che desideri eseguire localmente. Le librerie obbligatorie devono essere installate sul core e aggiunte alla variabile di ambiente PATH. È possibile installare più librerie nello stesso core.

      • Python versione 2.7 per funzioni che usano il runtime Python 2.7.

      • Node.js versione 6.10 o successive per funzioni che usano il runtime Node.js 6.10.

      • Java versione 8 o successive per funzioni che usano il runtime Java 8.

    • I seguenti comandi di shell (non le BusyBox varianti) sono richiesti dall'agente di aggiornamento over-the-air (OTA):

      • wget

      • realpath

      • tar

      • readlink

      • basename

      • dirname

      • pidof

      • df

      • grep

      • umount

      • mv

      • gzip

      • mkdir

      • rm

      • ln

      • cut

      • cat

Per informazioni sulle AWS IoT Greengrass quote (limiti), vedere Service Quotas in. Riferimenti generali di Amazon Web Services

Per informazioni sui prezzi, consulta Prezzi di AWS IoT Greengrass e Prezzi di AWS IoT Core.

AWS IoT Greengrass download

È possibile utilizzare le informazioni riportate di seguito per trovare e scaricare il software da utilizzare con AWS IoT Greengrass.

AWS IoT Greengrass Software di base

Il software AWS IoT Greengrass Core estende AWS le funzionalità su un dispositivo AWS IoT Greengrass principale, permettendo ai dispositivi locali di agire localmente sui dati che generano.

v1.11
1.11.6

Correzione di bug e miglioramenti:

  • Maggiore resilienza in caso di interruzione improvvisa dell'alimentazione durante una distribuzione.

  • È stato risolto un problema a causa del quale il danneggiamento dei dati dello stream manager poteva impedire l'avvio del software AWS IoT Greengrass Core.

  • È stato risolto un problema per cui i nuovi dispositivi client non potevano connettersi al core in determinati scenari.

  • È stato risolto un problema a causa del quale i nomi degli stream manager non potevano contenere.log.

1.11.5

Correzione di bug e miglioramenti:

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.11.4

Correzione di bug e miglioramenti:

  • È stato risolto un problema con lo stream manager che impediva gli aggiornamenti al AWS IoT Greengrass software Core v1.11.3. Se utilizzi stream manager per esportare dati nel cloud, ora puoi utilizzare un aggiornamento OTA per aggiornare una versione precedente v1.x del software Core alla v1.11.4. AWS IoT Greengrass

  • Miglioramenti delle prestazioni generali e correzioni di bug.

1.11.3

Correzione di bug e miglioramenti:

  • È stato risolto un problema che impediva al software AWS IoT Greengrass Core, eseguito in un attimo, di rispondere in un attimo su un dispositivo Ubuntu dopo un'improvvisa interruzione dell'alimentazione del dispositivo.

  • È stato risolto un problema che causava un ritardo nella consegna dei messaggi MQTT a funzioni Lambda di lunga durata.

  • È stato risolto un problema che impediva l'invio corretto dei messaggi MQTT quando il maxWorkItemCount valore era impostato su un valore maggiore di. 1024

  • È stato risolto un problema che faceva sì che l'agente di aggiornamento OTA ignorasse il KeepAlive periodo MQTT specificato nella keepAlive proprietà in. config.json

  • Miglioramenti delle prestazioni generali e correzioni di bug.

Importante

Se utilizzi stream manager per esportare dati nel cloud, non eseguire l'aggiornamento al software AWS IoT Greengrass Core v1.11.3 da una versione precedente v1.x. Se stai abilitando lo stream manager per la prima volta, ti consigliamo vivamente di installare prima la versione più recente del software Core. AWS IoT Greengrass

1.11.1

Correzione di bug e miglioramenti:

  • È stato risolto un problema che causava un maggiore utilizzo della memoria per lo stream manager.

  • È stato risolto un problema che faceva sì che lo stream manager reimpostasse il numero di sequenza dello stream 0 se il dispositivo principale Greengrass era spento per un periodo più lungo del periodo specificato time-to-live (TTL) dei dati del flusso.

  • È stato risolto un problema che impediva allo stream manager di interrompere correttamente i tentativi di esportare i dati in. Cloud AWS

1.11.0

Nuove caratteristiche:

  • Un agente di telemetria sul core di Greengrass raccoglie dati di telemetria locali e li pubblica su. Cloud AWS Per recuperare i dati di telemetria per un'ulteriore elaborazione, i clienti possono creare una EventBridge regola Amazon e iscriversi a un target. Per ulteriori informazioni, consulta Raccolta di dati di telemetria sanitaria del sistema dai dispositivi principali. AWS IoT Greengrass

  • Un'API HTTP locale restituisce un'istantanea dello stato corrente dei processi di lavoro locali avviati da. AWS IoT Greengrass Per ulteriori informazioni, consulta Chiamare l'API per il controllo sanitario locale.

  • Un gestore di flussi esporta automaticamente i dati in Amazon S3 e. AWS IoT SiteWise

    I nuovi parametri dello stream manager consentono di aggiornare gli stream esistenti e sospendere o riprendere l'esportazione dei dati.

  • Support per l'esecuzione di funzioni Lambda di Python 3.8.x sul core.

  • Una nuova ggDaemonPort proprietà da utilizzare per configurare il numero di porta IPC principale di Greengrass. config.json Il numero di porta predefinito è 8000.

    Una nuova systemComponentAuthTimeout proprietà config.jsonche si utilizza per configurare il timeout per l'autenticazione IPC di base di Greengrass. Il timeout predefinito è di 5000 millisecondi.

  • Il numero massimo di AWS IoT dispositivi per AWS IoT Greengrass gruppo è stato aumentato da 200 a 2500.

    È stato aumentato il numero massimo di abbonamenti per gruppo da 1000 a 10000.

    Per ulteriori informazioni, consulta Endpoint e quote per AWS IoT Greengrass.

Correzione di bug e miglioramenti:

  • Ottimizzazione generale che può ridurre l'utilizzo della memoria dei processi di servizio Greengrass.

  • Un nuovo parametro di configurazione di runtime (mountAllBlockDevices) consente a Greengrass di utilizzare i bind mount per montare tutti i dispositivi a blocchi in un contenitore dopo aver configurato OverlayFS. Questa funzionalità ha risolto un problema che causava il fallimento della distribuzione di Greengrass se /usr non rientrava nella / gerarchia.

  • È stato risolto un problema che causava un errore di AWS IoT Greengrass base se /tmp si trattava di un collegamento simbolico.

  • È stato risolto un problema che consentiva all'agente di distribuzione Greengrass di rimuovere gli artefatti del modello di machine learning inutilizzati dalla cartella. mlmodel_public

  • Miglioramenti delle prestazioni generali e correzioni di bug.

Per installare il software AWS IoT Greengrass Core sul dispositivo principale, scaricate il pacchetto per l'architettura e il sistema operativo (OS) in uso, quindi seguite i passaggi indicati nella Guida introduttiva.

Suggerimento

AWS IoT Greengrass fornisce anche altre opzioni per l'installazione del software AWS IoT Greengrass Core. Ad esempio, è possibile utilizzare la configurazione del dispositivo Greengrass per configurare l'ambiente e installare la versione più recente del software AWS IoT Greengrass Core. Oppure, sulle piattaforme Debian supportate, è possibile utilizzare il gestore di pacchetti APT per installare o aggiornare il AWS IoT Greengrass software Core. Per ulteriori informazioni, consulta Installare il software AWS IoT Greengrass Core..

Architettura

Sistema operativo

Link

Armv8 (AArch64)

Linux

Scarica

Armv8 (AArch64)

Linux () OpenWrt

Scarica

Armv7l

Linux

Scarica

Armv7l

Linux (OpenWrt)

Scarica

Armv6l

Linux

Scarica

x86_64

Linux

Scarica

Extended life versions
1.10.5

Le nuove caratteristiche di v1.10:

Correzione di bug e miglioramenti:

  • Gli aggiornamenti O ver-the-air (OTA) con integrazione della sicurezza hardware possono essere configurati con OpenSSL 1.1.

  • Stream manager è più resiliente al danneggiamento dei dati dei file.

  • Risolto un problema che causava un errore di montaggio di sysfs sui dispositivi che utilizzavano Linux kernel 5.1 e versioni successive.

  • Una nuova mqttOperationTimeout proprietà in config.json che potete utilizzare per impostare il timeout per le operazioni di pubblicazione, sottoscrizione e annullamento dell'iscrizione nelle connessioni MQTT con. AWS IoT Core

  • È stato risolto un problema che causava un maggiore utilizzo della memoria per lo stream manager.

  • Una nuova systemComponentAuthTimeout proprietà config.jsonche si utilizza per configurare il timeout per l'autenticazione IPC di base di Greengrass. Il timeout predefinito è di 5000 millisecondi.

  • È stato risolto un problema che faceva sì che l'agente di aggiornamento OTA ignorasse il KeepAlive periodo MQTT specificato nella proprietà in. keepAlive config.json

  • È stato risolto un problema che impediva l'invio corretto dei messaggi MQTT quando il maxWorkItemCount valore era impostato su un valore maggiore di. 1024

  • È stato risolto un problema che causava un ritardo nella consegna dei messaggi MQTT a funzioni Lambda di lunga durata.

  • È stato risolto un problema che impediva al software AWS IoT Greengrass Core, eseguito in un attimo, di rispondere in un attimo su un dispositivo Ubuntu dopo un'improvvisa interruzione dell'alimentazione del dispositivo.

  • Miglioramenti delle prestazioni generali e correzioni di bug.

Per installare il software AWS IoT Greengrass Core sul tuo dispositivo principale, scarica il pacchetto per la tua architettura e il tuo sistema operativo (OS), quindi segui i passaggi indicati nella Guida introduttiva.

Architettura

Sistema operativo

Link

Armv8 (AArch64)

Linux

Scarica

Armv8 (AArch64)

Linux (OpenWrt)

Scarica

Armv7l

Linux

Scarica

Armv7l

Linux (OpenWrt)

Scarica

Armv6l

Linux

Scarica

x86_64

Linux

Scarica

1.9.4

Le nuove caratteristiche di v1.9:

  • Support per i runtime Lambda di Python 3.7 e Node.js 8.10. Le funzioni Lambda che utilizzano i runtime Python 3.7 e Node.js 8.10 ora possono essere eseguite su un core. AWS IoT Greengrass (AWS IoT Greengrass continua a supportare i runtime Python 2.7 e Node.js 6.10.)

  • Connessioni MQTT ottimizzate. Il core Greengrass stabilisce meno connessioni con AWS IoT Core. Questa modifica è in grado di ridurre i costi operativi per le spese basate sul numero di connessioni.

  • Chiave Elliptic Curve (EC) per il server MQTT locale. Il server locale MQTT supporta le chiavi EC in aggiunta alle chiavi RSA. Il certificato del server MQTT ha una firma RSA SHA-256, indipendentemente dal tipo di chiave. Per ulteriori informazioni, consulta AWS IoT Greengrass principi di sicurezza fondamentali.

  • Support per OpenWrt. AWS IoT Greengrass Il software di base v1.9.2 o successivo può essere installato su OpenWrt distribuzioni con architetture Armv8 (AArch64) e ARMv7l. OpenWrt Attualmente, non supporta l'inferenza ML.

  • Support per ARMv6L. AWS IoT Greengrass Il software di base v1.9.3 o successivo può essere installato su distribuzioni Raspbian su architetture ARMv6L (ad esempio, su dispositivi Raspberry Pi Zero).

  • Aggiornamenti OTA sulla porta 443 con ALPN. I core Greengrass che utilizzano la porta 443 per il traffico MQTT ora supportano gli aggiornamenti software over-the-air (OTA). AWS IoT Greengrass utilizza l'estensione TLS Application Layer Protocol Network (ALPN) per abilitare queste connessioni. Per ulteriori informazioni, consulta Aggiornamenti OTA del software AWS IoT Greengrass Core e Connessione alla porta 443 o tramite un proxy di rete.

Per installare il software AWS IoT Greengrass Core sul dispositivo principale, scaricate il pacchetto per l'architettura e il sistema operativo (OS) in uso, quindi seguite i passaggi indicati nella Guida introduttiva.

Architettura

Sistema operativo

Link

Armv8 (AArch64)

Linux

Scarica

Armv8 (AArch64)

Linux (OpenWrt)

Scarica

Armv7l

Linux

Scarica

Armv7l

Linux (OpenWrt)

Scarica

Armv6l

Linux

Scarica

x86_64

Linux

Scarica

1.8.4
  • Nuove caratteristiche:

    • Identità di accesso predefinita configurabile per le funzioni Lambda nel gruppo. Questa impostazione a livello di gruppo determina le autorizzazioni predefinite utilizzate per eseguire le funzioni Lambda. Puoi impostare l'ID utente, l'ID gruppo o entrambi. Le singole funzioni Lambda possono sovrascrivere l'identità di accesso predefinita del relativo gruppo. Per ulteriori informazioni, consulta Impostazione dell'identità di accesso predefinita per le funzioni Lambda in un gruppo.

    • Traffico HTTPS sulla porta 443. La comunicazione HTTPS può essere configurata per viaggiare sulla porta 443 anziché sulla porta predefinita 8443. Ciò integra il AWS IoT Greengrass supporto per l'estensione TLS Application Layer Protocol Network (ALPN) e consente a tutto il traffico di messaggistica Greengrass, sia MQTT che HTTPS, di utilizzare la porta 443. Per ulteriori informazioni, consulta Connessione alla porta 443 o tramite un proxy di rete.

    • ID client AWS IoT con nomi prevedibili per le connessioni. Questa modifica abilita il supporto per AWS IoT Device Defender e gli eventi del ciclo di vita AWS IoT, in modo da poter ricevere notifiche per eventi di connessione, disconnessione, sottoscrizione e annullamento sottoscrizione. La denominazione prevedibile semplifica inoltre la creazione della logica intorno agli ID di connessione (ad esempio, per creare modelli di policy di sottoscrizione basati su attributi dei certificati). Per ulteriori informazioni, consulta ID client per connessioni MQTT con AWS IoT.

    Correzione di bug e miglioramenti:

    • È stato risolto un problema relativo alla sincronizzazione shadow e alla riconnessione di Device Certificate Manager (DCM).

    • Miglioramenti delle prestazioni generali e correzioni di bug.

Per installare il software AWS IoT Greengrass Core sul dispositivo principale, scaricate il pacchetto per l'architettura e il sistema operativo (OS) in uso, quindi seguite i passaggi indicati nella Guida introduttiva.

Architettura

Sistema operativo

Link

Armv8 (AArch64)

Linux

Scarica

Armv7l

Linux

Scarica

x86_64

Linux

Scarica

Scaricando questo software accetti l'Accordo di licenza del software Greengrass Core.

Per informazioni su altre opzioni per l'installazione del software AWS IoT Greengrass Core sul dispositivo, consultaInstallare il software AWS IoT Greengrass Core..

 

AWS IoT Greengrass software snap

AWS IoT Greengrass snap 1.11.x consente di eseguire una versione limitata AWS IoT Greengrass tramite comodi pacchetti software, insieme a tutte le dipendenze necessarie, in un ambiente containerizzato.

Nota

Lo AWS IoT Greengrass snap è disponibile per il software Core v1.11.x. AWS IoT Greengrass AWS IoT Greengrass non fornisce uno snap per la v1.10.x. Le versioni non supportate non ricevono correzioni di bug o aggiornamenti.

Lo AWS IoT Greengrass snap non supporta i connettori e l'inferenza di machine learning (ML).

Per ulteriori informazioni, consulta Esecuzione di AWS IoT Greengrass in uno snap.

 

AWS IoT Greengrass Software Docker

AWS fornisce un Dockerfile e immagini Docker che semplificano l'esecuzione AWS IoT Greengrass in un contenitore Docker.

Dockerfile

I Dockerfile contengono il codice sorgente per la creazione di immagini di container personalizzate. AWS IoT Greengrass L'immagine può essere modificata per essere eseguita su diverse architetture di piattaforma o per ridurne le dimensioni. Per le istruzioni, consulta il file README.

Scarica la versione del software AWS IoT Greengrass Core di destinazione.

v1.11
Extended life versions
v1.10

Dockerfile per v1.10.5. AWS IoT Greengrass

v1.9

Dockerfile per v1.9.4. AWS IoT Greengrass

v1.8

Dockerfile per v1.8.1. AWS IoT Greengrass

 

immagine Docker

Le immagini Docker hanno il software AWS IoT Greengrass Core e le dipendenze installati nelle immagini di base di Amazon Linux 2 (x86_64) e Alpine Linux (x86_64, ARMv7l o AArch64). È possibile utilizzare immagini predefinite per iniziare a sperimentare AWS IoT Greengrass.

Importante

Il 30 giugno 2022, AWS IoT Greengrass è terminata la manutenzione delle immagini Docker del software AWS IoT Greengrass Core v1.x pubblicate su Amazon Elastic Container Registry (Amazon ECR) e Docker Hub. Puoi continuare a scaricare queste immagini Docker da Amazon ECR e Docker Hub fino al 30 giugno 2023, ovvero 1 anno dopo la fine della manutenzione. Tuttavia, le immagini Docker del software AWS IoT Greengrass Core v1.x non ricevono più patch di sicurezza o correzioni di bug dopo la fine della manutenzione il 30 giugno 2022. Se esegui un carico di lavoro di produzione che dipende da queste immagini Docker, ti consigliamo di creare le tue immagini Docker utilizzando i Dockerfile forniti. AWS IoT Greengrass Per ulteriori informazioni, consulta AWS IoT Greengrass Version 1politica di manutenzione.

Scarica un'immagine predefinita da Docker Hub o Amazon Elastic Container Registry (Amazon ECR).

  • Per Docker Hub, usa il tag version per scaricare una versione specifica dell'immagine Greengrass Docker. Per trovare i tag per tutte le immagini disponibili, controlla la pagina Tag nell'Hub Docker.

  • Per Amazon ECR, usa il latest tag per scaricare l'ultima versione disponibile dell'immagine Greengrass Docker. Per ulteriori informazioni sull'elenco delle versioni di immagini disponibili e sul download di immagini da Amazon ECR, consultaEsecuzione di AWS IoT Greengrass in un container Docker.

avvertimento

A partire dalla v1.11.6 del software AWS IoT Greengrass Core, le immagini Greengrass Docker non includono più Python 2.7, perché Python 2.7 end-of-life è arrivato nel 2020 e non riceve più aggiornamenti di sicurezza. Se scegli di eseguire l'aggiornamento a queste immagini Docker, ti consigliamo di verificare che le tue applicazioni funzionino con le nuove immagini Docker prima di distribuire gli aggiornamenti sui dispositivi di produzione. Se hai bisogno di Python 2.7 per la tua applicazione che utilizza un'immagine Greengrass Docker, puoi modificare il Dockerfile Greengrass per includere Python 2.7 per la tua applicazione.

AWS IoT Greengrass non fornisce immagini Docker per il software Core v1.11.1. AWS IoT Greengrass

Nota

Per impostazione predefinita, le immagini alpine-aarch64 e alpine-armv7l possono essere eseguite solo su host basati su ARM. Per eseguire queste immagini su un host x86, è possibile installare QEMU e montare le librerie QEMU sull'host. Per esempio:

docker run --rm --privileged multiarch/qemu-user-static --reset -p yes

 

AWS IoT Greengrass SDK principale

Le funzioni Lambda utilizzano il AWS IoT Greengrass Core SDK per interagire con il AWS IoT Greengrass core a livello locale. Ciò consente alle funzioni Lambda implementate di:

  • Scambia messaggi MQTT con. AWS IoT Core

  • Scambia messaggi MQTT con connettori, dispositivi client e altre funzioni Lambda nel gruppo Greengrass.

  • Interagire con il servizio shadow locale.

  • Richiama altre funzioni Lambda locali.

  • Accesso a risorse segrete.

  • Interagire con stream manager.

Scarica il AWS IoT Greengrass Core SDK per la tua lingua o piattaforma da. GitHub

Per ulteriori informazioni, consulta Core SDK AWS IoT Greengrass.

 

Runtime e librerie di Machine Learning supportati

Per eseguire l'inferenza su un core Greengrass, è necessario installare il runtime o la libreria di Machine Learning per il tipo di modello ML.

AWS IoT Greengrass supporta i seguenti tipi di modelli ML. Utilizzare questi collegamenti per trovare informazioni su come installare il runtime o la libreria per il tipo di modello e la piattaforma del dispositivo.

Esempi di Machine Learning

AWS IoT Greengrass fornisce esempi che è possibile utilizzare con i runtime e le librerie ML supportati. Questi esempi vengono rilasciati con l'Accordo di licenza del software Greengrass Core.

Deep learning runtime (DLR)

Scaricare l'esempio per la piattaforma del proprio dispositivo:

Per un tutorial che utilizza l'esempio DLR, consulta Come configurare l'inferenza di Machine Learning ottimizzata mediante la AWS Management Console.

MXNet

Scaricare l'esempio per la piattaforma del proprio dispositivo:

Per un tutorial che utilizza l'esempio MxNet, consulta Come configurare l'inferenza di Machine Learning mediante la AWS Management Console.

TensorFlow

Scarica l'esempio Tensorflow per la piattaforma del tuo dispositivo. Questo esempio funziona con Raspberry Pi, NVIDIA Jetson TX2 e Intel Atom.

 

AWS IoT Greengrass Software ML SDK

AWS IoT GreengrassSDK per il Machine LearningConsente alle funzioni Lambda create di utilizzare un modello di machine learning locale e inviare dati al connettore ML Feedback per il caricamento e la pubblicazione.

v1.1.0
v1.0.0

Ci piacerebbe conoscere la tua opinione

Apprezziamo il tuo feedback. Per contattarci, visita AWS re:POST e usa il tag.AWS IoT Greengrass