View a markdown version of this page

Nucleo di Greengrass - AWS IoT Greengrass

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à.

Nucleo di Greengrass

Il componente Greengrass nucleus (aws.greengrass.Nucleus) è un componente obbligatorio e il requisito minimo per eseguire il software AWS IoT Greengrass Core su un dispositivo. È possibile configurare questo componente per personalizzare e aggiornare il software AWS IoT Greengrass Core da remoto. Distribuisci questo componente per configurare impostazioni come proxy, ruolo del dispositivo e configurazione degli AWS IoT oggetti sui tuoi dispositivi principali.

Nota

A partire dalla versione 2.14.0 di Greengrass, è disponibile una versione ottimizzata per l'impronta di memoria del runtime del dispositivo Nucleus per i dispositivi edge con vincoli. Vedi Greengrass nucleus lite per ulteriori informazioni sulla sua configurazione e utilizzo.

Importante

Quando la versione del componente nucleus cambia o quando si modificano determinati parametri di configurazione, il software AWS IoT Greengrass Core, che include il nucleo e tutti gli altri componenti del dispositivo, si riavvia per applicare le modifiche.

Quando si distribuisce un componente, vengono AWS IoT Greengrass installate le versioni supportate più recenti di tutte le dipendenze del componente. Per questo motivo, le nuove versioni di patch dei componenti pubblici AWS forniti da -provided potrebbero essere distribuite automaticamente nei dispositivi principali se si aggiungono nuovi dispositivi a un gruppo di oggetti o si aggiorna la distribuzione destinata a tali dispositivi. Alcuni aggiornamenti automatici, come un aggiornamento Nucleus, possono causare il riavvio imprevisto dei dispositivi.

Per evitare aggiornamenti involontari per un componente in esecuzione sul dispositivo, ti consigliamo di includere direttamente la versione preferita di quel componente quando crei una distribuzione. Per ulteriori informazioni sul comportamento degli aggiornamenti per il software AWS IoT Greengrass Core, vedere. Aggiorna il AWS IoT Greengrass Software di base (OTA)

Versioni

Questo componente ha le seguenti versioni:

  • 2.18.x

  • 2.17.x

  • 2.16.x

  • 2.15.x

  • 2.14.x

  • 2.13.x

  • 2.12.x

  • 2.11.x

  • 2.10.x

  • 2.9.x

  • 2.8.x

  • 2.7.x

  • 2.6.x

  • 2.5.x

  • 2.4.x

  • 2.3.x

  • 2.2.x

  • 2.1.x

  • 2.0.x

Requisiti per il dispositivo

Nota

È possibile utilizzare AWS IoT Device Tester for per AWS IoT Greengrass verificare che il dispositivo sia in grado di eseguire il software AWS IoT Greengrass Core e comunicare con. Cloud AWS Per ulteriori informazioni, consulta Utilizzo AWS IoT Device Tester for AWS IoT Greengrass V2.

Linux
  • L'uso di un modulo Regione AWS che supporta AWS IoT Greengrass V2. Per l'elenco delle regioni supportate, consulta Endpoint e quote AWS IoT Greengrass V2 in Riferimenti generali di AWS.

  • Almeno 256 MB di spazio su disco disponibile per il software AWS IoT Greengrass Core. Questo requisito non include i componenti distribuiti nel dispositivo principale.

  • Minimo 96 MB di RAM allocati al software AWS IoT Greengrass Core. Questo requisito non include i componenti che vengono eseguiti sul dispositivo principale. Per ulteriori informazioni, consulta Controlla l'allocazione della memoria con le opzioni JVM.

  • Java Runtime Environment (JRE) versione 8 o successiva. Java deve essere disponibile nella variabile di ambiente PATH del dispositivo. Per utilizzare Java per sviluppare componenti personalizzati, è necessario installare un Java Development Kit (JDK). Ti consigliamo di utilizzare le versioni di supporto a lungo termine di Amazon Corretto o OpenJDK. È richiesta la versione 8 o successiva.

  • GNU C Library (glibc) versione 2.25 o successiva.

  • È possibile eseguire il software AWS IoT Greengrass Core come utente root. Usasudo, ad esempio. Puoi anche eseguire il software AWS IoT Greengrass Core come utente non root. Per ulteriori informazioni, consulta Configurazione AWS IoT Greengrass V2 dispositivi principali come dispositivi non root.

  • L'utente root che esegue il software AWS IoT Greengrass Core, ad esempioroot, deve disporre dell'autorizzazione per l'esecuzione sudo con qualsiasi utente e gruppo. Il /etc/sudoers file deve concedere a questo utente l'autorizzazione per sudo l'esecuzione con altri gruppi. L'autorizzazione per l'utente in /etc/sudoers dovrebbe essere simile all'esempio seguente.

    root ALL=(ALL:ALL) ALL
  • Il dispositivo principale deve essere in grado di eseguire richieste in uscita verso un set di endpoint e porte. Per ulteriori informazioni, consulta Consenti il traffico dei dispositivi tramite un proxy o un firewall.

  • La /tmp directory deve essere montata con exec le autorizzazioni.

  • Tutti i seguenti comandi di shell:

    • ps -ax -o pid,ppid

    • sudo

    • sh

    • kill

    • cp

    • chmod

    • rm

    • ln

    • echo

    • exit

    • id

    • uname

    • grep

  • Il dispositivo potrebbe richiedere anche i seguenti comandi di shell opzionali:

    • (Facoltativo)systemctl. Questo comando viene utilizzato per configurare il software AWS IoT Greengrass Core come servizio di sistema.

    • (Facoltativo) useraddgroupadd, eusermod. Questi comandi vengono utilizzati per configurare l'ggc_userutente e il gruppo ggc_group di sistema.

    • (Facoltativo)mkfifo. Questo comando viene utilizzato per eseguire le funzioni Lambda come componenti.

  • Per configurare i limiti delle risorse di sistema per i processi dei componenti, il dispositivo deve eseguire la versione 2.6.24 o successiva del kernel Linux.

  • Per eseguire le funzioni Lambda, il dispositivo deve soddisfare requisiti aggiuntivi. Per ulteriori informazioni, consulta Requisiti della funzione Lambda.

Importante

Su Ubuntu 25.10 e versioni successive, l'sudoimplementazione predefinita non supporta il flag -E (preserve environment). Senza questo flag, il sistema non inoltra le variabili di ambiente ai componenti che vengono eseguiti come un utente di sistema diverso. Di conseguenza, tali componenti non si avviano.

Per risolvere questo problema, passa all'sudoimplementazione classica (sudo.ws). È necessario apportare questa modifica perché AWS IoT Greengrass utilizza il -E flag per passare variabili di ambiente ai processi dei componenti.

sudo update-alternatives --set sudo /usr/bin/sudo.ws
Windows
  • L'uso di un modulo Regione AWS che supporta AWS IoT Greengrass V2. Per l'elenco delle regioni supportate, consulta Endpoint e quote AWS IoT Greengrass V2 in Riferimenti generali di AWS.

  • Almeno 256 MB di spazio su disco disponibile per il software AWS IoT Greengrass Core. Questo requisito non include i componenti distribuiti nel dispositivo principale.

  • Almeno 160 MB di RAM allocati al software AWS IoT Greengrass Core. Questo requisito non include i componenti che vengono eseguiti sul dispositivo principale. Per ulteriori informazioni, consulta Controlla l'allocazione della memoria con le opzioni JVM.

  • Java Runtime Environment (JRE) versione 8 o successiva. Java deve essere disponibile nella variabile di sistema PATH del dispositivo. Per utilizzare Java per sviluppare componenti personalizzati, è necessario installare un Java Development Kit (JDK). Ti consigliamo di utilizzare le versioni di supporto a lungo termine di Amazon Corretto o OpenJDK. È richiesta la versione 8 o successiva.

    Nota

    Per utilizzare la versione 2.5.0 di Greengrass nucleus, è necessario utilizzare una versione a 64 bit di Java Runtime Environment (JRE). La versione 2.5.1 di Greengrass nucleus supporta JRE a 32 e 64 bit.

  • L'utente che installa il software AWS IoT Greengrass Core deve essere un amministratore.

  • È necessario installare il software AWS IoT Greengrass Core come servizio di sistema. Specifica --setup-system-service true quando installi il software.

  • Ogni utente che esegue i processi dei componenti deve esistere nell' LocalSystem account e il nome e la password dell'utente devono trovarsi nell'istanza di Credential Manager per l' LocalSystem account. È possibile configurare questo utente seguendo le istruzioni per installare il software AWS IoT Greengrass Core.

  • Il dispositivo principale deve essere in grado di eseguire richieste in uscita verso un set di endpoint e porte. Per ulteriori informazioni, consulta Consenti il traffico dei dispositivi tramite un proxy o un firewall.

Piattaforme supportate

AWS IoT Greengrass supporta ufficialmente i dispositivi che eseguono le seguenti piattaforme. I dispositivi con piattaforme non incluse in questo elenco potrebbero funzionare, ma AWS IoT Greengrass i test vengono eseguiti solo su queste piattaforme specificate.

Linux

Architetture:

  • Armv7l

  • Armv8 (AArch64)

  • x86_64

Windows

Architetture:

  • x86_64

Versioni:

  • Windows 10

  • Windows 11

  • Windows Server 2019

  • Windows Server 2022

  • Windows Server 2025

Nota

Alcune AWS IoT Greengrass funzionalità non sono attualmente supportate nei dispositivi Windows. Per ulteriori informazioni, consultare Compatibilità delle funzionalità Greengrass e Considerazioni sulle funzionalità.

Considerazioni sulle funzionalità

Alcune AWS IoT Greengrass funzionalità non sono attualmente supportate nei dispositivi Windows. Controlla le differenze tra le funzionalità per verificare se un dispositivo Windows soddisfa i tuoi requisiti. Per ulteriori informazioni, consulta Compatibilità delle funzionalità Greengrass.

Per creare un sistema Linux-based operativo personalizzato, puoi utilizzare la BitBake ricetta contenuta AWS IoT Greengrass nel meta-aws progetto. Il meta-aws progetto fornisce ricette che è possibile utilizzare per creare funzionalità software AWS all'avanguardia in sistemi Linux integrati creati con OpenEmbedded i framework di compilazione di Yocto Project. Il progetto Yocto è un progetto di collaborazione open source che consente di creare Linux-based sistemi personalizzati per applicazioni integrate indipendentemente dall'architettura hardware. La BitBake ricetta per AWS IoT Greengrass installare, configurare ed eseguire automaticamente il software AWS IoT Greengrass Core sul dispositivo.

Le piattaforme Linux possono essere eseguite anche AWS IoT Greengrass in un contenitore Docker. Per ulteriori informazioni, consulta Esegui il software AWS IoT Greengrass Core in un contenitore Docker.

Sistema operativo

Questo componente può essere installato sui dispositivi principali che eseguono i seguenti sistemi operativi:

  • Linux

  • Windows

Per ulteriori informazioni, consulta Piattaforme supportate.

Requisiti

I dispositivi devono soddisfare determinati requisiti per installare ed eseguire Greengrass nucleus e il software AWS IoT Greengrass Core. Per ulteriori informazioni, consulta Requisiti per il dispositivo.

Il componente Greengrass nucleus è supportato per l'esecuzione in un VPC. Per distribuire questo componente in un VPC, è necessario quanto segue.

  • Il componente Greengrass nucleus deve essere connesso a AWS IoT data, AWS IoT Credentials e Amazon S3.

Dipendenze

Il nucleo di Greengrass non include alcuna dipendenza tra i componenti. Tuttavia, diversi componenti AWS forniti includono il nucleo come dipendenza. Per ulteriori informazioni, consulta AWS-componenti forniti.

Per ulteriori informazioni sulle dipendenze dei componenti, consultate il riferimento alla composizione dei componenti.

Download e installazione

Puoi scaricare un programma di installazione che configura il componente Greengrass nucleus sul tuo dispositivo. Questo programma di installazione configura il dispositivo come dispositivo principale di Greengrass. È possibile eseguire due tipi di installazioni: un'installazione rapida che crea AWS le risorse necessarie per l'utente o un'installazione manuale in cui le AWS risorse sono create personalmente. Per ulteriori informazioni, consulta Installare il software AWS IoT Greengrass Core.

Puoi anche seguire un tutorial per installare Greengrass nucleus ed esplorare lo sviluppo dei componenti Greengrass. Per ulteriori informazioni, consulta Tutorial: Guida introduttiva a AWS IoT Greengrass V2.

Configurazione

Questo componente fornisce i seguenti parametri di configurazione che è possibile personalizzare quando si distribuisce il componente. Alcuni parametri richiedono il riavvio del software AWS IoT Greengrass Core per avere effetto. Per ulteriori informazioni sul perché e su come configurare questo componente, vedereConfigura il AWS IoT Greengrass Software di base.

iotRoleAlias

L'alias di AWS IoT ruolo che rimanda a un ruolo IAM per lo scambio di token. Il fornitore AWS IoT delle credenziali assume questo ruolo per consentire al dispositivo principale di Greengrass di interagire con i servizi. AWS Per ulteriori informazioni, consulta Autorizza i dispositivi principali a interagire con i servizi AWS.

Quando si esegue il software AWS IoT Greengrass Core con l'--provision trueopzione, il software fornisce un alias di ruolo e ne imposta il valore nel componente nucleus.

interpolateComponentConfiguration

(Facoltativo) È possibile abilitare Greengrass nucleus per interpolare le variabili di composizione dei componenti nelle configurazioni dei componenti e unire gli aggiornamenti delle configurazioni. Usa le variabili di ricetta negli aggiornamenti di fusione Si consiglia di impostare questa opzione su in true modo che il dispositivo principale possa eseguire componenti Greengrass che utilizzano variabili di ricetta nelle loro configurazioni.

Questa funzionalità è disponibile per la versione 2.6.0 e successive di questo componente.

Impostazione predefinita: false

networkProxy

(Facoltativo) Il proxy di rete da utilizzare per tutte le connessioni. Per ulteriori informazioni, consulta Connessione alla porta 443 o tramite un proxy di rete.

Importante

Quando si implementa una modifica a questo parametro di configurazione, il software AWS IoT Greengrass principale si riavvia affinché la modifica abbia effetto.

Questo oggetto contiene le seguenti informazioni:

noProxyAddresses

(Facoltativo) Un elenco separato da virgole di indirizzi IP o nomi host che sono esenti dal proxy.

proxy

Il proxy a cui connettersi. Questo oggetto contiene le seguenti informazioni:

url

L'URL del server proxy nel formatoscheme://userinfo@host:port.

  • scheme— Lo schema, che deve essere http ohttps.

    Importante

    I dispositivi principali di Greengrass devono eseguire Greengrass nucleus v2.5.0 o versione successiva per utilizzare i proxy HTTPS.

    Se configuri un proxy HTTPS, devi aggiungere il certificato CA del server proxy al certificato CA principale di Amazon del dispositivo principale. Per ulteriori informazioni, consulta Abilita il dispositivo principale in modo che consideri attendibile un proxy HTTPS.

  • userinfo— (Facoltativo) Le informazioni sul nome utente e sulla password. Se si specificano queste informazioni inurl, il dispositivo principale di Greengrass ignora i campi username epassword.

  • host— Il nome host o l'indirizzo IP del server proxy.

  • port— (Facoltativo) Il numero di porta. Se non si specifica la porta, il dispositivo principale di Greengrass utilizza i seguenti valori predefiniti:

    • http— 80

    • https— 443

username

(Facoltativo) Il nome utente che autentica il server proxy.

password

(Facoltativo) La password che autentica il server proxy.

mqtt

(Facoltativo) La configurazione MQTT per il dispositivo principale di Greengrass. Per ulteriori informazioni, consulta Connessione alla porta 443 o tramite un proxy di rete.

Importante

Quando si implementa una modifica a questo parametro di configurazione, il software AWS IoT Greengrass principale si riavvia affinché la modifica abbia effetto.

Questo oggetto contiene le seguenti informazioni:

port

(Facoltativo) La porta da usare per le connessioni MQTT.

Impostazione predefinita: 8883

keepAliveTimeoutMs

(Facoltativo) L'intervallo di tempo in millisecondi che intercorre tra ogni PING messaggio inviato dal client per mantenere attiva la connessione MQTT. Questo valore deve essere maggiore di. pingTimeoutMs

Predefinito: 60000 (60 secondi)

pingTimeoutMs

(Facoltativo) La quantità di tempo in millisecondi in cui il client attende per ricevere un PINGACK messaggio dal server. Se l'attesa supera il timeout, il dispositivo principale si chiude e riapre la connessione MQTT. Questo valore deve essere inferiore a. keepAliveTimeoutMs

Predefinito: 30000 (30 secondi)

operationTimeoutMs

(Facoltativo) La quantità di tempo in millisecondi in cui il client attende il completamento delle operazioni MQTT (come or). CONNECT PUBLISH Questa opzione non si applica ai messaggi MQTT o keep alive. PING

Predefinito: 30000 (30 secondi)

maxInFlightPublishes

(Facoltativo) Il numero massimo di messaggi MQTT QoS 1 non riconosciuti che possono essere in volo contemporaneamente.

Questa funzionalità è disponibile per la versione 2.1.0 e successive di questo componente.

Impostazione predefinita: 5

Intervallo valido: valore massimo 100

maxMessageSizeInBytes

(Facoltativo) La dimensione massima di un messaggio MQTT. Se un messaggio supera questa dimensione, il nucleo di Greengrass lo respinge con un errore.

Questa funzionalità è disponibile per la versione 2.1.0 e successive di questo componente.

Predefinito: 131072 (128 KB)

Intervallo valido: valore massimo di 2621440 (2,5 MB)

maxPublishRetry

(Facoltativo) Il numero massimo di tentativi per riprovare un messaggio che non viene pubblicato. Puoi specificare di -1 riprovare un numero illimitato di volte.

Questa funzionalità è disponibile per la versione 2.1.0 e successive di questo componente.

Impostazione predefinita: 100

standaloneMqttTimeoutMs

(Facoltativo) Il tempo, in millisecondi, in cui il nucleo attende le connessioni MQTT autonome durante le operazioni dello switch di connettività IoT. Questo timeout riguarda il controllo della connettività prima del volo e il rapporto sullo stato che il nucleus invia all'account sorgente dopo un passaggio riuscito.

Questa funzionalità richiede la versione 2.18.0 o successiva di questo componente.

Predefinito: 60000 (60 secondi)

Intervallo valido: valore minimo 1

spooler

(Opzionale) La configurazione dello spooler MQTT per il dispositivo principale Greengrass. Questo oggetto contiene le seguenti informazioni:

storageType

Il tipo di archiviazione per l'archiviazione dei messaggi. Se storageType è impostato suDisk, pluginName può essere configurato. È possibile specificare Memory o Disk.

Questa funzionalità è disponibile per la versione 2.11.0 e successive del componente Greengrass nucleus.

Importante

Se lo spooler MQTT storageType è impostato su Disk e si desidera effettuare il downgrade di Greengrass nucleus dalla versione 2.11.x a una versione precedente, è necessario modificare nuovamente la configurazione in. Memory L'unica configurazione supportata nelle versioni 2.10.x di storageType Greengrass nucleus e precedenti è. Memory La mancata osservanza di queste indicazioni può causare la rottura dello spooler. Ciò impedirebbe al dispositivo principale di Greengrass di inviare messaggi MQTT al. Cloud AWS

Impostazione predefinita: Memory

pluginName

(Facoltativo) Il nome del componente del plugin. Questo componente verrà utilizzato solo se storageType è impostato suDisk. Questa opzione è predefinita aws.greengrass.DiskSpooler e utilizzerà il. Greengrass-provided Spooler del disco

Questa funzionalità è disponibile per la versione 2.11.0 e successive del componente Greengrass nucleus. Nucleo di Greengrass

Impostazione predefinita: "aws.greengrass.DiskSpooler"

maxSizeInBytes

(Facoltativo) La dimensione massima della cache in cui il dispositivo principale memorizza i messaggi MQTT non elaborati in memoria. Se la cache è piena, i nuovi messaggi vengono rifiutati.

Predefinito: 2621440 (2,5 MB)

keepQos0WhenOffline

(Facoltativo) È possibile eseguire lo spooling dei messaggi MQTT QoS 0 che il dispositivo principale riceve mentre è offline. Se imposti questa opzione sutrue, il dispositivo principale esegue lo spooling dei messaggi QoS 0 che non può inviare mentre è offline. Se imposti questa opzione sufalse, il dispositivo principale elimina questi messaggi. Il dispositivo principale esegue sempre lo spooling dei messaggi QoS 1 a meno che lo spool non sia pieno.

Impostazione predefinita: false

version

(Facoltativo) La versione di MQTT. È possibile specificare mqtt3 o mqtt5.

Questa funzionalità è disponibile per la versione 2.10.0 e successive del componente Greengrass nucleus. Nucleo di Greengrass

Impostazione predefinita: mqtt5

receiveMaximum

(Facoltativo) Il numero massimo di pacchetti QoS1 non riconosciuti che il broker può inviare.

Questa funzionalità è disponibile per la versione 2.10.0 e successive del componente Greengrass nucleus. Nucleo di Greengrass

Impostazione predefinita: 100

sessionExpirySeconds

(Facoltativo) La quantità di tempo in secondi in cui puoi richiedere la durata di una sessione da IoT Core. L'impostazione predefinita è il tempo massimo supportato da AWS IoT Core.

Questa funzionalità è disponibile per la versione 2.10.0 e successive del componente Greengrass nucleus.

Impostazione predefinita: 604800 (7 days)

minimumReconnectDelaySeconds

(Facoltativo) Un'opzione per il comportamento di riconnessione. Il tempo minimo in secondi per la riconnessione di MQTT.

Questa funzionalità è disponibile per la versione 2.10.0 e successive del componente Greengrass nucleus. Nucleo di Greengrass

Impostazione predefinita: 1

maximumReconnectDelaySeconds

(Facoltativo) Un'opzione per il comportamento di riconnessione. Il tempo massimo in secondi per la riconnessione di MQTT.

Questa funzionalità è disponibile per la versione 2.10.0 e successive del componente Greengrass nucleus. Nucleo di Greengrass

Impostazione predefinita: 120

minimumConnectedTimeBeforeRetryResetSeconds

(Facoltativo) Un'opzione per il comportamento di riconnessione. L'intervallo di tempo in secondi in cui una connessione deve essere attiva prima che il ritardo del nuovo tentativo venga ripristinato al minimo.

Questa funzionalità è disponibile per la versione 2.10.0 e successive del componente Greengrass nucleus. Nucleo di Greengrass

Impostazione predefinita: 30

jvmOptions

(Facoltativo) Le opzioni JVM da utilizzare per eseguire il software Core. AWS IoT Greengrass Per informazioni sulle opzioni JVM consigliate per l'esecuzione del software AWS IoT Greengrass Core, vedere. Controlla l'allocazione della memoria con le opzioni JVM

Importante

Quando si implementa una modifica a questo parametro di configurazione, il software AWS IoT Greengrass principale si riavvia affinché la modifica abbia effetto.

iotDataEndpoint

L'endpoint di AWS IoT dati per il tuo. Account AWS

Quando si esegue il software AWS IoT Greengrass Core con l'--provision trueopzione, il software preleva gli endpoint dei dati e delle credenziali AWS IoT e li imposta nel componente Nucleus.

iotCredEndpoint

L'endpoint delle AWS IoT credenziali per il tuo. Account AWS

Quando si esegue il software AWS IoT Greengrass Core con l'--provision trueopzione, il software preleva gli endpoint dei dati e delle credenziali AWS IoT e li imposta nel componente Nucleus.

greengrassDataPlaneEndpoint

Questa funzionalità è disponibile nella versione 2.7.0 e successive di questo componente.

(Facoltativo) L'endpoint del piano dati Greengrass da utilizzare. Impostato per iotdata utilizzare lo stesso endpoint dell'endpoint di dati IoT specificato in. iotDataEndpoint

È necessario impostare questa opzione su iotdata nei seguenti casi:

  • Si utilizza un certificato del dispositivo firmato da un'autorità di certificazione (CA) privata. Per ulteriori informazioni, consulta Utilizza un certificato del dispositivo firmato da una CA privata.

  • Distribuisci gli aggiornamenti di configurazione di Nucleus per passare la connettività IoT del dispositivo a una regione Account AWS o diversa. Senza questa impostazione, il piano dati rimane associato all'account originale dopo il passaggio di connettività. Ciò interrompe il download degli artefatti dei componenti e le operazioni del piano di controllo. Per ulteriori informazioni, consulta Passa un dispositivo core Greengrass a un altro Account AWS o regione.

È possibile impostare questa opzione durante la distribuzione o l'installazione utilizzando l'--init-configargomento installer.

Predefinito: "" (stringa vuota: utilizza l'endpoint del servizio Greengrass)

greengrassDataPlanePort

Questa funzionalità è disponibile nella versione 2.0.4 e successive di questo componente.

(Facoltativo) La porta da utilizzare per le connessioni al piano dati. Per ulteriori informazioni, consulta Connessione alla porta 443 o tramite un proxy di rete.

Importante

È necessario specificare una porta in cui il dispositivo può effettuare connessioni in uscita. Se si specifica una porta bloccata, il dispositivo non sarà in grado di connettersi per AWS IoT Greengrass ricevere le distribuzioni.

Seleziona una delle opzioni seguenti:

  • 443

  • 8443

Impostazione predefinita: 8443

awsRegion

La Regione AWS da usare.

runWithDefault

L'utente del sistema da utilizzare per eseguire i componenti.

Importante

Quando si implementa una modifica a questo parametro di configurazione, il software AWS IoT Greengrass principale si riavvia affinché la modifica abbia effetto.

Questo oggetto contiene le seguenti informazioni:

posixUser

Il nome o l'ID dell'utente del sistema e, facoltativamente, del gruppo di sistema utilizzato dal dispositivo principale per eseguire componenti generici e Lambda. Specifica l'utente e il gruppo separati da due punti (:) nel seguente formato: user:group. Il gruppo è facoltativo. Se non si specifica un gruppo, il software AWS IoT Greengrass principale utilizza il gruppo principale per l'utente. Ad esempio, puoi specificare ggc_user o ggc_user:ggc_group. Per ulteriori informazioni, consulta Configurare l'utente che esegue i componenti.

Quando si esegue il programma di installazione del software AWS IoT Greengrass Core con l'--component-default-user ggc_user:ggc_groupopzione, il software imposta questo parametro nel componente nucleus.

windowsUser

Questa funzionalità è disponibile nella versione 2.5.0 e successive di questo componente.

Il nome dell'utente Windows da utilizzare per eseguire questo componente sui dispositivi Windows Core. L'utente deve esistere su ogni dispositivo principale di Windows e il nome e la password devono essere archiviati nell'istanza di Credentials Manager dell' LocalSystem account. Per ulteriori informazioni, consulta Configurare l'utente che esegue i componenti.

Quando si esegue il programma di installazione del software AWS IoT Greengrass Core con l'--component-default-user ggc_useropzione, il software imposta questo parametro nel componente nucleus.

systemResourceLimits

Questa funzionalità è disponibile nella versione 2.4.0 e successive di questo componente. AWS IoT Greengrass attualmente non supporta questa funzionalità sui dispositivi Windows Core.

I limiti delle risorse di sistema da applicare per impostazione predefinita ai processi dei componenti Lambda generici e non containerizzati. È possibile sovrascrivere i limiti delle risorse di sistema per i singoli componenti quando si crea una distribuzione. Per ulteriori informazioni, consulta Configura i limiti delle risorse di sistema per i componenti.

Questo oggetto contiene le seguenti informazioni:

cpus

La quantità massima di tempo di CPU che i processi di ciascun componente possono utilizzare sul dispositivo principale. Il tempo totale della CPU di un dispositivo principale è equivalente al numero di core CPU del dispositivo. Ad esempio, su un dispositivo principale con 4 core CPU, puoi impostare questo valore per 2 limitare i processi di ciascun componente al 50% di utilizzo di ciascun core della CPU. Su un dispositivo con 1 core di CPU, puoi impostare questo valore su 0.25 per limitare i processi di ciascun componente al 25% di utilizzo della CPU. Se imposti questo valore su un numero maggiore del numero di AWS IoT Greengrass core della CPU, il software Core non limita l'utilizzo della CPU dei componenti.

memory

La quantità massima di RAM (in kilobyte) che i processi di ciascun componente possono utilizzare sul dispositivo principale.

s3EndpointType

(Facoltativo) Il tipo di endpoint S3. Questo parametro avrà effetto solo per la regione Stati Uniti orientali (Virginia settentrionale) (us-east-1). L'impostazione di questo parametro da qualsiasi altra regione verrà ignorata. Seleziona una delle opzioni seguenti:

  • REGIONAL— Il client S3 e l'URL prefirmato utilizzano l'endpoint regionale.

  • GLOBAL— Il client S3 e l'URL prefirmato utilizzano l'endpoint legacy.

  • DUALSTACK— L'URL prefirmato S3 utilizza l'endpoint dualstack.

Impostazione predefinita: GLOBAL

fipsMode

(Facoltativo) Fa sì che Greengrass utilizzi gli endpoint FIPS. Per ulteriori informazioni su come abilitare gli endpoint FIPS, vedere Endpoint FIPS. FIPS.html

Seleziona una delle opzioni seguenti:

  • trueSe impostato su true, gli endpoint utilizzeranno l'endpoint FIPS.

  • falseSe false, gli endpoint non utilizzeranno l'endpoint FIPS.

Impostazione predefinita: false

logging

(Facoltativo) La configurazione di registrazione per il dispositivo principale. Per ulteriori informazioni su come configurare e utilizzare i log di Greengrass, vedere. Monitora AWS IoT Greengrass i registri

Questo oggetto contiene le seguenti informazioni:

level

(Facoltativo) Il livello minimo di messaggi di registro da generare.

Scegliete tra i seguenti livelli di registro, elencati qui in ordine di livello:

  • DEBUG

  • INFO

  • WARN

  • ERROR

Impostazione predefinita: INFO

format

(Facoltativo) Il formato dei dati dei log. Seleziona una delle opzioni seguenti:

  • TEXT— Scegli questa opzione se desideri visualizzare i log in formato testo.

  • JSON— Scegliete questa opzione se volete visualizzare i log con il comando Greengrass CLI logs o interagire con i log a livello di programmazione.

Impostazione predefinita: TEXT

outputType

(Facoltativo) Il tipo di output per i log. Seleziona una delle opzioni seguenti:

  • FILE— Il software AWS IoT Greengrass principale invia i log ai file nella directory specificata. outputDirectory

  • CONSOLE— Il software AWS IoT Greengrass Core stampa i log su. stdout Scegli questa opzione per visualizzare i log man mano che il dispositivo principale li stampa.

Impostazione predefinita: FILE

fileSizeKB

(Facoltativo) La dimensione massima di ogni file di registro (in kilobyte). Dopo che un file di registro supera questa dimensione massima, il software AWS IoT Greengrass Core crea un nuovo file di registro.

Questo parametro si applica solo quando si specifica FILE peroutputType.

Impostazione predefinita: 1024

totalLogsSizeKB

(Facoltativo) La dimensione totale massima dei file di registro (in kilobyte) per ogni componente, incluso il nucleo di Greengrass. I file di log di Greengrass nucleus includono anche i log dei componenti del plugin. Tipi di componenti Quando la dimensione totale dei file di registro di un componente supera questa dimensione massima, il software AWS IoT Greengrass Core elimina i file di registro più vecchi del componente.

Questo parametro è equivalente al parametro del limite di spazio su disco (diskSpaceLimit) del componente di gestione dei log, che è possibile specificare per il nucleo (sistema) di Greengrass e per ogni componente. Il software AWS IoT Greengrass Core utilizza il minimo dei due valori come dimensione massima totale del log per il nucleo di Greengrass e ciascun componente.

Questo parametro si applica solo quando si specifica FILE per. outputType

Impostazione predefinita: 10240

outputDirectory

(Facoltativo) La directory di output per i file di registro.

Questo parametro si applica solo quando si specifica FILE peroutputType.

Predefinito:/greengrass/v2/logs, /greengrass/v2 dov'è la AWS IoT Greengrass cartella principale.

fleetstatus

Questo parametro è disponibile nella versione 2.1.0 e successive di questo componente.

(Facoltativo) La configurazione dello stato del parco veicoli per il dispositivo principale.

Questo oggetto contiene le seguenti informazioni:

periodicStatusPublishIntervalSeconds

(Facoltativo) L'intervallo di tempo (in secondi) tra il quale il dispositivo principale pubblica lo stato del dispositivo su. Cloud AWS

Minimo: 86400 (24 ore)

Predefinito: 86400 (24 ore)

telemetry

(Facoltativo) La configurazione della telemetria dello stato del sistema per il dispositivo principale. Per ulteriori informazioni sulle metriche di telemetria e su come agire sui dati di telemetria, vedere. Raccogli dati di telemetria sanitaria del sistema dai dispositivi principali AWS IoT Greengrass

Questo oggetto contiene le seguenti informazioni:

enabled

(Facoltativo) È possibile attivare o disattivare la telemetria.

Impostazione predefinita: true

periodicAggregateMetricsIntervalSeconds

(Facoltativo) L'intervallo (in secondi) durante il quale il dispositivo principale aggrega le metriche.

Se imposti questo valore su un valore inferiore al valore minimo supportato, il nucleo utilizza invece il valore predefinito.

Minimo: 3600

Impostazione predefinita: 3600

periodicPublishMetricsIntervalSeconds

(Facoltativo) L'intervallo di tempo (in secondi) tra il quale il dispositivo principale pubblica le metriche di telemetria su. Cloud AWS

Se imposti questo valore su un valore inferiore al valore minimo supportato, il nucleo utilizza invece il valore predefinito.

Minimo: 86400

Impostazione predefinita: 86400

deploymentPollingFrequencySeconds

(Facoltativo) Periodo in secondi durante il quale eseguire il polling per le notifiche di distribuzione.

Impostazione predefinita: 15

componentStoreMaxSizeBytes

(Facoltativo) La dimensione massima su disco dell'archivio dei componenti, che comprende le ricette e gli artefatti dei componenti.

Predefinito: 10000000000 (10 GB)

bootConfigTlogCompactionThresholdBytes

Questo parametro è disponibile nella versione 2.18.3 e successive di questo componente.

(Facoltativo) La soglia di dimensione, in byte, alla quale il nucleo di Greengrass compatta il registro delle transazioni di configurazione () config.tlog all'avvio del dispositivo principale.

La compattazione non modifica la configurazione. Rimuove solo le voci obsolete dal registro, riducendo i tempi di avvio e l'utilizzo del disco sul dispositivo principale.

Per disabilitare la compattazione all'avvio, imposta questo valore su 0 o su un valore negativo.

Specificate la soglia come numero di byte, ad esempio. 10000000 Il nucleo accetta anche notazioni scientifiche, ad esempio. 1e7 Se imposti un valore che non è un numero, ad esempio20MB, il nucleo utilizza il valore predefinito e registra un avviso nei suoi log. Un valore non valido non disattiva la compattazione.

Nota

La compattazione non impedisce l'avvio del dispositivo. Se il nucleo non riesce a compattare il registro, il dispositivo principale si avvia normalmente con il registro non compattato e registra l'errore nei suoi registri. Il nucleo riprova al successivo avvio del dispositivo principale.

Predefinito: 10000000 (10 MB)

platformOverride

(Facoltativo) Un dizionario di attributi che identificano la piattaforma del dispositivo principale. Utilizzatelo per definire attributi di piattaforma personalizzati che le ricette dei componenti possono utilizzare per identificare il ciclo di vita e gli artefatti corretti per il componente. Ad esempio, è possibile definire un attributo di capacità hardware per distribuire solo il set minimo di artefatti per l'esecuzione di un componente. Per ulteriori informazioni, vedete il parametro della piattaforma manifest nella ricetta del componente.

È inoltre possibile utilizzare questo parametro per sovrascrivere gli attributi os e della architecture piattaforma del dispositivo principale.

httpClient

Questo parametro è disponibile nella versione 2.5.0 e successive di questo componente.

(Facoltativo) La configurazione del client HTTP per il dispositivo principale. Queste opzioni di configurazione si applicano a tutte le richieste HTTP effettuate da questo componente. Se un dispositivo principale funziona su una rete più lenta, puoi aumentare la durata del timeout per evitare che le richieste HTTP scadano.

Questo oggetto contiene le seguenti informazioni:

connectionTimeoutMs

(Facoltativo) La quantità di tempo (in millisecondi) di attesa per l'apertura di una connessione prima che scada la richiesta di connessione.

Impostazione predefinita: 2000 (2 secondi)

socketTimeoutMs

(Facoltativo) La quantità di tempo (in millisecondi) di attesa del trasferimento dei dati su una connessione aperta prima che la connessione scada.

Impostazione predefinita: 30000 (30 secondi)

deploymentConfigurationTimeSource

Questo parametro è disponibile nella versione 2.15.0 e successive di questo componente.

(Facoltativo) Il timestamp da utilizzare durante l'elaborazione di una distribuzione. L'impostazione predefinita è. deploymentCreationTime

Questo oggetto contiene i seguenti valori:

deploymentCreationTime

Il valore predefinito dideploymentConfigurationTimeSource. Il dispositivo utilizza il timestamp di creazione della distribuzione per risolvere i conflitti tra le chiavi di configurazione durante l'elaborazione. Quando si seleziona questo comportamento, la configurazione locale del dispositivo gestita dal nucleo può avere un timestamp maggiore di quello della distribuzione in entrata e respinge le modifiche alla configurazione in entrata che ora sono considerate obsolete.

deploymentProcessingTime

Il dispositivo utilizza il suo timestamp locale per risolvere i conflitti tra le chiavi di configurazione durante l'elaborazione della distribuzione. Una volta elaborato, il dispositivo aggiorna le configurazioni in base al timestamp di elaborazione anziché al timestamp di creazione della distribuzione. Questo comportamento presuppone che l'orologio del dispositivo sia calibrato correttamente.

Configura questa impostazione del nucleo nell'immagine o nell'installazione iniziale del dispositivo anziché tramite una distribuzione quando desideri che i nuovi dispositivi utilizzino questo comportamento alla prima connessione. Usa l'--init-configopzione del programma di installazione di nucleus classic per questa configurazione.

Questa configurazione iniziale è essenziale perché i dispositivi elaborano più distribuzioni in ordine arbitrario. Senza una corretta configurazione iniziale, un dispositivo potrebbe elaborare le distribuzioni utilizzando il deploymentCreationTime comportamento predefinito prima di ricevere la distribuzione che imposta la configurazione del nucleo su. deploymentProcessingTime

Esempio Esempio: aggiornamento dell'unione delle configurazioni
{ "iotRoleAlias": "GreengrassCoreTokenExchangeRoleAlias", "networkProxy": { "noProxyAddresses": "http://192.168.0.1,www.example.com", "proxy": { "url": "http://my-proxy-server:1100", "username": "Mary_Major", "password": "pass@word1357" } }, "mqtt": { "port": 443 }, "greengrassDataPlanePort": 443, "jvmOptions": "-Xmx64m", "runWithDefault": { "posixUser": "ggc_user:ggc_group" } }

File di registro locale

Questo componente utilizza il seguente file di registro.

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
Per visualizzare i log di questo componente
  • Esegui il seguente comando sul dispositivo principale per visualizzare il file di registro di questo componente in tempo reale. Sostituisci /greengrass/v2 o C:\greengrass\v2 con il percorso della cartella AWS IoT Greengrass principale.

    Linux
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait

Changelog

La tabella seguente descrive le modifiche in ciascuna versione del componente.

Versione

Modifiche

2.18.3

Nuove funzionalità
  • Aggiunge il parametro bootConfigTlogCompactionThresholdBytes di configurazione per abilitare la compattazione del log delle transazioni di configurazione all'avvio, che recupera spazio su disco nei dispositivi principali.

Correzioni di bug e miglioramenti
  • Risolve un problema per cui una prima distribuzione non riuscita poteva causare la perdita dell'appartenenza al gruppo di dispositivi di Nucleus e la rimozione dei componenti installati dopo il riavvio.

2.18.2

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale il nucleo poteva scrivere valori di configurazione invariati nell'archivio di configurazione.

2.18.1

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale il nucleo potrebbe non riuscire a recuperare le credenziali dopo un errore temporaneo di connessione.

2.18.0

Nuove funzionalità
  • Aggiunge il supporto per il passaggio della AWS IoT connettività di un dispositivo principale a un'altra area geografica tramite l'implementazione di una configurazione Account AWS Nucleus. Il nucleo convalida la connettività ai nuovi endpoint prima di applicare la modifica e riporta lo stato di distribuzione del terminale all'account di origine.

  • Aggiunge il supporto per Windows Server 2025.

Correzioni di bug e miglioramenti
  • Risolve un problema di tempistica di avvio sui dispositivi systemd avviando il software AWS IoT Greengrass Core solo dopo la sincronizzazione dell'orologio di sistema.

  • Risolve un problema a causa del quale un componente poteva riscontrare sottoscrizioni obsolete dopo la chiusura di uno stream IPC locale durante una richiesta di sottoscrizione in corso.

  • Correzioni di bug generali e miglioramenti.

2.17.0

Nuove funzionalità
  • Installa tutti i certificati Amazon Root CA durante il provisioning automatico.

  • Aggiunge un ciclo di vita di disinstallazione che viene eseguito quando una distribuzione rimuove un componente.

  • Consente di installare il software Greengrass Core come normale utente Linux.

2.16.1

Correzioni di bug e miglioramenti
  • Aggiunge la configurazione per gli intervalli di ripetizione delle credenziali dopo gli errori del servizio Token Exchange.

2.16.0

Nuove funzionalità
  • Nucleus ora supporta i cgroups V2.

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale il nucleo non riusciva a ripulire le distribuzioni obsolete quando una distribuzione veniva annullata.

2.15.1

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale il nucleo non riusciva a ripulire i processi dei componenti dopo il timeout di 30 secondi durante le distribuzioni bootstrap.

2.15.0

Nuove funzionalità
  • Aggiunge la funzionalità di telemetria per includere informazioni sul sistema host come i dettagli della CPU e del sistema operativo. Per ulteriori informazioni, consulta la pagina dei componenti di telemetria.

  • Aggiunge la configurazione. deploymentConfigurationTimeSource Per ulteriori informazioni, vedere Configurazione dei componenti del nucleo.

Correzioni di bug e miglioramenti
  • Nucleus ora dà priorità all'uso di versioni e artefatti locali per impostazione predefinita, migliorando la coerenza della distribuzione e riducendo le dipendenze esterne. Gli utenti possono ignorare questo comportamento specificando preferenze alternative nel documento di distribuzione.

  • Aggiunge un nuovo registro degli avvisi quando un utente Windows fornito non corrisponde al set di caratteri normalmente accettato da Windows.

2.14.3

Correzioni di bug e miglioramenti

  • Consente il riavvio del servizio di scambio di token in caso di modifiche alla configurazione delle porte.

  • Risolve un problema a causa del quale il servizio Fleet Status non invia messaggi di modifica dello stato dei componenti per i lambda non bloccati se questi non vengono attivati.

  • Risolve un problema a causa del quale i componenti non si spengono correttamente quando viene distribuita una nuova versione del componente.

  • Risolve un problema per cui gli hook di iniezione dei plug-in integrati vengono eseguiti due volte, con conseguente aumento degli eventi del ciclo di vita e registrazione di duplicati.

  • Migliora la registrazione del ciclo di vita dei componenti sui dispositivi Windows.

2.14.2

Correzioni di bug e miglioramenti

  • Risolve un problema a causa del quale un client HTTP non è configurato con l'autenticazione reciproca.

2.14.1

Correzioni di bug e miglioramenti

  • Risolve un problema a causa del quale i componenti non venivano fermati correttamente nelle nuove installazioni di Greengrass.

2.14.0

avvertimento

Questa versione non è più disponibile. I miglioramenti di questa versione sono disponibili nelle versioni successive di questo componente.

Nuove funzionalità
  • Il nuovo supporto per endpoint dual-stack consente la comunicazione di rete IPv6.

  • Resilienza migliorata contro gli errori di riavvio di Nucleus e il danneggiamento delle directory. Launch

Correzioni di bug e miglioramenti
  • Risolve le perdite di memoria nelle chiusure degli abbonamenti IPC PubSub .

  • Corregge il ciclo di vita di esecuzione del componente in cui entra nello stato ERRORED a causa del timeout di avvio quando la condizione skipif è vera.

  • Risolve un problema a causa del quale il dispositivo principale non riesce a connettersi AWS IoT Core quando la politica TLS è impostata su TLS13_1_3_2022_10.

2.13.0

Nuove funzionalità
  • Supporta l'endpoint FIPS in Nucleus.

Correzioni di bug e miglioramenti
  • Annulla i miglioramenti all'implementazione: ora è possibile annullare le distribuzioni durante l'unione di una nuova configurazione e in attesa dell'avvio dei servizi.

2.12.6

Correzioni di bug e miglioramenti
  • Risolve un problema che causa un arresto anomalo all'avvio su alcuni processori ARMv8, incluso Jetson Nano.

2.12.5

Correzioni di bug e miglioramenti
  • Risolve un problema per cui il rollback della distribuzione si bloccava occasionalmente durante il ripristino di un componente precedentemente danneggiato con dipendenze rigide.

  • Risolve un problema a causa del quale il nucleo non pubblica gli aggiornamenti di stato dopo il provisioning del parco veicoli.

  • Aggiunge nuovi tentativi per l'GetDeploymentConfigurationAPI dopo aver ricevuto 404 errori.

2.12.4

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale il nucleo entra in una condizione di deadlock durante l'avvio su alcuni dispositivi Linux.

2.12.3

avvertimento

Questa versione non è più disponibile. I miglioramenti di questa versione sono disponibili nelle versioni successive di questo componente.

Correzioni di bug e miglioramenti

  • Risolve un problema per cui il nucleo non riporta lo stato corretto del componente dopo il riavvio del nucleo e durante il ripristino dei componenti.

  • Correzioni di bug generali e miglioramenti.

2.12.2

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale i vecchi registri non venivano puliti correttamente.

  • Correzioni di bug generali e miglioramenti.

2.12.1

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale il nucleo poteva duplicare le sottoscrizioni MQTT agli argomenti di distribuzione, con conseguente aumento delle registrazioni e delle pubblicazioni MQTT.

2.12.0

Nuove funzionalità
  • Consente di eseguire le fasi del ciclo di vita del bootstrap come parte di una distribuzione di rollback.

2.11.3

Correzioni di bug e miglioramenti
  • Risolve un problema nel nucleo in cui poteva avviare erroneamente un componente quando le sue dipendenze falliscono.

Nuove funzionalità
  • Aggiunge un tipo di endpoint s3 configurabile.

2.11.2

Correzioni di bug e miglioramenti
  • Risolve un problema nel client Nucleus MQTT 5 che poteva apparire offline quando è in uso un numero elevato (> 50) di abbonamenti.

  • Aggiunge un nuovo tentativo per l'errore TCP di docker dial.

2.11.1

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale il nucleo non si avvia se un'operazione di bootstrap fallisce e il file di metadati di distribuzione è danneggiato.

  • Risolve un problema a causa del quale i componenti Lambda su richiesta non vengono segnalati negli aggiornamenti dello stato di distribuzione.

  • Aggiunge il supporto per gli ID delle policy di autorizzazione duplicati.

2.11.0

Nuove funzionalità
  • Consente di annullare una distribuzione locale.

  • Consente di configurare una politica di gestione degli errori per una distribuzione locale.

  • Aggiunge il supporto per un plug-in per lo spooler del disco.

2.10.3

Correzioni di bug e miglioramenti
  • Risolve un problema per cui Greengrass non si iscrive alle notifiche di distribuzione quando utilizza il provider PKCS #11.

2.10.2

Correzioni di bug e miglioramenti
  • Consente l'analisi dei cicli di vita dei componenti senza distinzione tra maiuscole e minuscole.

  • Risolve un problema a causa del quale la variabile di ambiente PATH non veniva ricreata correttamente.

  • Corregge la codifica URI proxy per i componenti, incluso lo stream manager per i nomi utente con caratteri speciali.

2.10.1

Correzioni di bug e miglioramenti
  • Risolve un problema che poteva causare un arresto anomalo all'avvio su alcuni processori ARMv8, incluso Jetson Nano.

  • Greengrass non chiude più lo standard di un componente, ripristina il comportamento precedente alla versione 2.10.0

2.10.0

Nuove funzionalità
  • Aggiunge il interpolateComponentConfiguration supporto per l'espressione regolare vuota. Greengrass ora esegue l'interpola dall'oggetto di configurazione principale.

  • Aggiunge il supporto per MQTT5.

  • Aggiunge un meccanismo per caricare rapidamente i componenti del plugin senza scansionarli.

  • Consente a Greengrass di risparmiare spazio su disco eliminando le immagini Docker inutilizzate.

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale il rollback lascia invariati determinati valori di configurazione derivanti da una distribuzione.

  • Risolve un problema a causa del quale il nucleo di Greengrass esegue la convalida per una sequenza di AWS dominio in endpoint personalizzati non contenenti credenziali e dati.AWS

  • Aggiorna la risoluzione delle dipendenze multigruppo per risolvere nuovamente tutte le dipendenze di gruppo tramite Cloud AWS negoziazione, invece di limitarsi alla versione attiva. Questo aggiornamento rimuove anche il codice di errore di distribuzione. INSTALLED_COMPONENT_NOT_FOUND

  • Aggiorna il nucleo di Greengrass per evitare il download delle immagini Docker quando esistono già localmente.

  • Aggiorna il nucleo di Greengrass per riavviare una fase di installazione dei componenti prima della scadenza del timeout.

  • Correzioni e miglioramenti minori aggiuntivi.

2.9.6

Correzioni di bug e miglioramenti
  • Risolve un problema in cui una distribuzione di Greengrass non riesce con l'errore LAUNCH_DIRECTORY_CORRUPTED e un successivo riavvio del dispositivo non avvia Greengrass. Questo errore può verificarsi quando si sposta il dispositivo Greengrass tra più gruppi di oggetti con distribuzioni che richiedono il riavvio di Greengrass.

2.9.5

Nuove funzionalità
  • Aggiunge il supporto per la verifica della firma del software Greengrass nucleus.

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del fallimento di una distribuzione quando l'area di metadati della ricetta locale non corrisponde alla regione di lancio di Greengrass Nucleus. Il nucleo di Greengrass ora rinegozia con il cloud quando ciò accade.

  • Risolve un problema a causa del quale lo spooler dei messaggi MQTT si riempie e non rimuove mai i messaggi.

  • Correzioni e miglioramenti minori aggiuntivi.

2.9.4

Correzioni di bug e miglioramenti
  • Verifica la presenza di un messaggio nullo prima di eliminare i messaggi QOS 0.

  • Tronca i valori dei dettagli sullo stato del lavoro se superano il limite di 1024 caratteri.

  • Aggiorna lo script bootstrap per Windows in modo che legga correttamente il percorso principale di Greengrass se tale percorso include spazi.

  • Aggiorna la sottoscrizione AWS IoT Core in modo da eliminare i messaggi del client se la risposta dell'abbonamento non è stata inviata.

  • Assicura che il nucleus carichi la propria configurazione dai file di backup quando il file di configurazione principale è danneggiato o mancante.

2.9.3

Correzioni di bug e miglioramenti
  • Assicura che gli ID client MQTT non siano duplicati.

  • Aggiunge funzionalità di lettura e scrittura dei file più affidabili per evitare e ripristinare eventuali danneggiamenti.

  • Riprova a recuperare l'immagine docker su errori specifici relativi alla rete.

  • Aggiunge l'opzione per la connessione MQTTnoProxyAddresses.

2.9.2

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale la configurazione interpolateComponentConfiguration non si applica a una distribuzione continua.

  • Utilizza OSHI per elencare tutti i processi secondari.

2.9.1

Correzioni di bug e miglioramenti
  • Aggiunge una correzione in cui Greengrass si riavvia se una distribuzione rimuove un componente del plug-in.

2.9.0

Nuove funzionalità
  • Aggiunge la possibilità di creare sottodistribuzioni che riprovano le distribuzioni con un sottoinsieme più piccolo di dispositivi. Questa funzionalità crea un modo più efficiente per testare e risolvere le distribuzioni non riuscite.

Correzioni di bug e miglioramenti
  • Migliora il supporto per i sistemi che non dispongono di useraddgroupadd, eusermod.

  • Correzioni e miglioramenti minori aggiuntivi.

2.8.1

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale i codici di errore di distribuzione non venivano generati correttamente dagli errori delle API di Greengrass.

  • Risolve un problema a causa del quale gli aggiornamenti sullo stato del parco veicoli inviano informazioni imprecise quando un componente raggiunge uno stato durante una ERRORED distribuzione.

  • Risolve un problema a causa del quale le implementazioni non potevano essere completate quando Greengrass aveva più di 50 abbonamenti esistenti.

2.8.0

Nuove funzionalità
Correzioni di bug e miglioramenti
  • Consente la reinstallazione di un componente danneggiato quando la sua configurazione cambia.

  • Risolve un problema per cui il riavvio di Nucleus durante la distribuzione bootstrap causa il fallimento della distribuzione.

  • Risolve un problema in Windows in cui l'installazione non riesce quando un percorso principale contiene spazi.

  • Risolve un problema a causa del quale un componente chiuso durante una distribuzione utilizza lo script di spegnimento della nuova versione.

  • Vari miglioramenti allo spegnimento.

  • Correzioni e miglioramenti minori aggiuntivi.

2.7.0

Nuove funzionalità
  • Aggiorna il nucleo di Greengrass per inviare aggiornamenti di stato al AWS IoT Greengrass cloud quando il dispositivo principale applica una distribuzione locale.

  • Aggiunge il supporto per i certificati client firmati da un'autorità di certificazione (CA) personalizzata, presso la quale la CA non è registrata. AWS IoT Per utilizzare questa funzionalità, puoi impostare la nuova opzione greengrassDataPlaneEndpoint di configurazione suiotdata. Per ulteriori informazioni, consulta Utilizza un certificato del dispositivo firmato da una CA privata.

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale il nucleo di Greengrass annulla una distribuzione in determinati scenari quando il nucleo viene arrestato o riavviato. Il nucleo ora riprende il dispiegamento dopo il riavvio del nucleo.

  • Aggiorna il programma di installazione di Greengrass in modo che rispetti l'--startargomento quando si specifica di configurare il software come servizio di sistema.

  • Aggiorna il comportamento SubscribeToComponentUpdates di impostazione dell'ID di distribuzione negli eventi in cui il nucleo ha aggiornato un componente.

  • Correzioni e miglioramenti minori aggiuntivi.

2.6.0

Nuove funzionalità
  • Aggiunge il supporto per le wildcard MQTT quando ci si iscrive agli argomenti locali. publish/subscribe Per ulteriori informazioni, consultare Pubblicare/sottoscrivere messaggi locali e SubscribeToTopic.

  • Aggiunge il supporto per le variabili di ricetta nelle configurazioni dei componenti, diverse dalla variabile di ricetta. component_dependency_name:configuration:json_pointer È possibile utilizzare queste variabili di ricette quando si definisce un componente DefaultConfiguration in una ricetta o quando si configura un componente in una distribuzione. Per abilitare questa funzionalità, imposta l'opzione di ComponentConfiguration configurazione interpolata su. true Per ulteriori informazioni, consultare Variabili di ricetta e Usa le variabili di ricetta negli aggiornamenti di fusione.

  • Aggiunge il supporto completo per la * wildcard nelle politiche di autorizzazione IPC (Interprocess Communication). È ora possibile specificare il * carattere in una stringa di risorse in modo che corrisponda a qualsiasi combinazione di caratteri. Per ulteriori informazioni, consulta Wildcard nelle politiche di autorizzazione.

  • Aggiunge il supporto per componenti personalizzati per chiamare le operazioni IPC utilizzate dalla CLI di Greengrass. È possibile utilizzare queste operazioni IPC per gestire le distribuzioni locali, visualizzare i dettagli dei componenti e generare una password da utilizzare per accedere alla console di debug locale. Console di debug locale Per ulteriori informazioni, consulta IPC: gestione delle distribuzioni e dei componenti locali.

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale i componenti dipendenti non reagivano al riavvio o al cambiamento di stato delle rispettive dipendenze rigide in determinati scenari.

  • Migliora i messaggi di errore che il dispositivo principale segnala al servizio AWS IoT Greengrass cloud quando una distribuzione non riesce.

  • Risolve un problema a causa del quale Greengrass nucleus applicava una distribuzione di oggetti due volte in determinati scenari al riavvio del nucleo.

  • Correzioni e miglioramenti minori aggiuntivi. Per ulteriori informazioni, consulta le versioni su. GitHub

2.5.6

Nuove funzionalità
  • Aggiunge il supporto per i moduli di sicurezza hardware che utilizzano chiavi ECC. È possibile utilizzare un modulo di sicurezza hardware (HSM) per archiviare in modo sicuro la chiave privata e il certificato del dispositivo. Per ulteriori informazioni, consulta Integrazione della sicurezza hardware.

Correzioni di bug e miglioramenti
  • Risolve un problema per cui la distribuzione non viene mai completata quando si distribuisce un componente con uno script di installazione non funzionante in determinati scenari.

  • Migliora le prestazioni durante l'avvio.

  • Correzioni e miglioramenti minori aggiuntivi.

2.5.5

Nuove funzionalità
  • Aggiunge la variabile di GG_ROOT_CA_PATH ambiente per i componenti, in modo da poter accedere al certificato dell'autorità di certificazione (CA) principale nei componenti personalizzati.

Correzioni di bug e miglioramenti
  • Aggiunge il supporto per i dispositivi Windows che utilizzano una lingua di visualizzazione diversa dall'inglese.

  • Aggiorna il modo in cui Greengrass nucleus analizza gli argomenti booleani del programma di installazione, in modo da poter specificare un argomento booleano senza un valore booleano per specificare un valore. true Ad esempio, ora è possibile specificare anziché installare con il provisioning automatico delle risorse. --provision --provision true

  • Risolve un problema a causa del quale il dispositivo principale non segnalava il proprio stato al servizio AWS IoT Greengrass cloud dopo il provisioning in determinati scenari.

  • Correzioni e miglioramenti minori aggiuntivi.

2.5.4

Correzioni di bug e miglioramenti
  • Correzioni di bug generali e miglioramenti.

2.5.3

Nuove funzionalità
  • Aggiunge il supporto per l'integrazione della sicurezza hardware. È possibile utilizzare un modulo di sicurezza hardware (HSM) per archiviare in modo sicuro la chiave privata e il certificato del dispositivo. Per ulteriori informazioni, consulta Integrazione della sicurezza hardware.

Correzioni di bug e miglioramenti
  • Risolve un problema relativo alle eccezioni di runtime mentre il nucleo stabilisce connessioni MQTT con. AWS IoT Core

2.5.2

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale, dopo gli aggiornamenti di Greengrass Nucleus, il servizio Windows non si riavviava dopo l'arresto o il riavvio del dispositivo.

2.5.1

avvertimento

Questa versione non è più disponibile. I miglioramenti di questa versione sono disponibili nelle versioni successive di questo componente.

Correzioni di bug e miglioramenti
  • Aggiunge il supporto per le versioni a 32 bit di Java Runtime Environment (JRE) su Windows.

  • Modifica il comportamento di rimozione dei gruppi di oggetti per i dispositivi principali la cui AWS IoT politica non concede l'greengrass:ListThingGroupsForCoreDeviceautorizzazione. Con questa versione, la distribuzione continua, registra un avviso e non rimuove i componenti quando si rimuove il dispositivo principale da un gruppo di oggetti. Per ulteriori informazioni, consulta Implementazione AWS IoT Greengrass dei componenti sui dispositivi.

  • Risolve un problema con le variabili di ambiente di sistema che il nucleo di Greengrass rende disponibili per i processi dei componenti di Greengrass. È ora possibile riavviare un componente affinché utilizzi le variabili di ambiente di sistema più recenti.

2.5.0

Nuove funzionalità
  • Aggiunge il supporto per i dispositivi principali che eseguono Windows.

  • Modifica il comportamento della rimozione dei gruppi di oggetti. Con questa versione, è possibile rimuovere un dispositivo principale da un gruppo di oggetti per disinstallarne i componenti nella distribuzione successiva.

    Come risultato di questa modifica, la AWS IoT policy di un dispositivo principale deve disporre dell'greengrass:ListThingGroupsForCoreDeviceautorizzazione. Se hai utilizzato il programma di installazione del software di AWS IoT Greengrass base per il provisioning delle risorse, la AWS IoT policy predefinita lo consentegreengrass:*, che include questa autorizzazione. Per ulteriori informazioni, consulta Autenticazione e autorizzazione del dispositivo per AWS IoT Greengrass.

  • Aggiunge il supporto per le configurazioni del proxy HTTPS. Per ulteriori informazioni, consulta Connessione alla porta 443 o tramite un proxy di rete.

  • Aggiunge il nuovo parametro windowsUser di configurazione. È possibile utilizzare questo parametro per specificare l'utente predefinito da utilizzare per eseguire i componenti su un dispositivo Windows Core. Per ulteriori informazioni, consulta Configurare l'utente che esegue i componenti.

  • Aggiunge le nuove opzioni di httpClient configurazione che è possibile utilizzare per personalizzare i timeout delle richieste HTTP per migliorare le prestazioni su reti lente. Per ulteriori informazioni, vedete il parametro di configurazione HttpClient.

Correzioni di bug e miglioramenti
  • Corregge l'opzione del ciclo di vita bootstrap per riavviare il dispositivo principale da un componente.

  • Aggiunge il supporto per i trattini nelle variabili delle ricette.

  • Corregge l'autorizzazione IPC per i componenti delle funzioni Lambda su richiesta.

  • Migliora i messaggi di registro e modifica i log non critici da un DEBUG livello INFO all'altro, quindi i log sono più utili.

  • Rimuove l'iot:DescribeCertificateautorizzazione dal ruolo di scambio di token predefinito che Greengrass nucleus crea quando si installa il software AWS IoT Greengrass Core con provisioning automatico. Questa autorizzazione non viene utilizzata dal nucleo di Greengrass.

  • Risolve un problema in modo che lo script di provisioning automatico non richieda l'iam:GetPolicyautorizzazione se iam:CreatePolicy è disponibile per la stessa policy.

  • Correzioni e miglioramenti minori aggiuntivi.

2.4.0

Nuove funzionalità
  • Aggiunge il supporto per i limiti delle risorse di sistema. È possibile configurare la quantità massima di utilizzo di CPU e RAM che i processi di ciascun componente possono utilizzare sul dispositivo principale. Per ulteriori informazioni, consulta Configura i limiti delle risorse di sistema per i componenti.

  • Aggiunge operazioni IPC per mettere in pausa e riprendere i componenti. Per ulteriori informazioni, consultare PauseComponent e ResumeComponent.

  • Aggiunge il supporto per i plugin di provisioning. È possibile specificare un file JAR da eseguire durante l'installazione per fornire AWS le risorse necessarie per un dispositivo principale Greengrass. Il nucleo di Greengrass include un'interfaccia che è possibile implementare per sviluppare plugin di provisioning personalizzati. Per ulteriori informazioni, consulta Installa AWS IoT Greengrass Software di base con provisioning personalizzato delle risorse.

  • Aggiunge l'thing-name-policyargomento opzionale al programma di installazione del AWS IoT Greengrass software Core. È possibile utilizzare questa opzione per specificare una AWS IoT policy esistente o personalizzata quando si installa il software AWS IoT Greengrass Core con provisioning automatico delle risorse.

Correzioni di bug e miglioramenti
  • Aggiorna la configurazione della registrazione all'avvio. Questo risolve un problema a causa del quale la configurazione di registrazione non veniva applicata all'avvio.

  • Aggiorna il link simbolico di nucleus loader in modo che punti all'archivio dei componenti nella cartella principale di Greengrass durante l'installazione. Questo aggiornamento consente di eliminare il file JAR e altri artefatti di Nucleus scaricati durante l'installazione del AWS IoT Greengrass software Core.

  • Correzioni e miglioramenti minori aggiuntivi. Per ulteriori informazioni, consulta le versioni su. GitHub

2.3.0

Nuove funzionalità
  • Aggiunge la variabile iot:thingName della ricetta. Puoi usare questa variabile di ricetta per ottenere il nome dell'elemento AWS IoT principale del dispositivo in una ricetta. Per ulteriori informazioni, consulta Variabili di ricetta.

Correzioni di bug e miglioramenti
  • Correzioni e miglioramenti minori aggiuntivi. Per ulteriori informazioni, consulta le versioni su. GitHub

2.2.0

Nuove funzionalità
  • Aggiunge operazioni IPC per la gestione locale dello shadow.

Correzioni di bug e miglioramenti
  • Riduce le dimensioni del file JAR.

  • Riduce l'utilizzo della memoria.

  • Risolve i problemi per cui la configurazione del registro non veniva aggiornata in alcuni casi.

  • Correzioni e miglioramenti minori aggiuntivi. Per ulteriori informazioni, consulta le versioni su. GitHub

2.1.0

Nuove funzionalità
  • Supporta il download di immagini Docker da repository privati in Amazon ECR.

  • Aggiunge i seguenti parametri per personalizzare la configurazione MQTT sui dispositivi principali:

    • maxInFlightPublishes— Il numero massimo di messaggi MQTT QoS 1 non riconosciuti che possono essere in corso contemporaneamente.

    • maxPublishRetry— Il numero massimo di volte in cui riprovare un messaggio che non viene pubblicato.

  • Aggiunge il parametro di fleetstatusservice configurazione per configurare l'intervallo con cui il dispositivo principale pubblica lo stato del dispositivo su. Cloud AWS

  • Correzioni e miglioramenti minori aggiuntivi. Per ulteriori informazioni, consulta le versioni su. GitHub

Correzioni di bug e miglioramenti
  • Risolve un problema che causava la duplicazione delle implementazioni shadow al riavvio del nucleo.

  • Risolve un problema che causava l'arresto anomalo del nucleo quando si verificava un'eccezione nel caricamento del servizio.

  • Migliora la risoluzione delle dipendenze dei componenti in caso di fallimento di una distribuzione che include una dipendenza circolare.

  • Risolve un problema che impediva la ridistribuzione di un componente del plug-in se tale componente era stato precedentemente rimosso dal dispositivo principale.

  • Risolve un problema che causava l'impostazione della variabile di HOME ambiente /greengrass/v2/work nella directory per i componenti Lambda o per i componenti eseguiti come root. La HOME variabile è ora impostata correttamente nella directory home dell'utente che esegue il componente.

  • Correzioni e miglioramenti minori aggiuntivi. Per ulteriori informazioni, consulta le versioni su. GitHub

2.0.5

Correzioni di bug e miglioramenti
  • Instrada correttamente il traffico attraverso un proxy di rete configurato durante il download dei AWS componenti forniti.

  • Utilizza l'endpoint corretto del piano dati Greengrass nelle AWS regioni della Cina.

2.0.4

Nuove funzionalità
  • Abilita il traffico HTTPS sulla porta 443. È possibile utilizzare il nuovo parametro di greengrassDataPlanePort configurazione per la versione 2.0.4 del componente nucleus per configurare la comunicazione HTTPS in modo che venga trasmessa sulla porta 443 anziché sulla porta predefinita 8443. Per ulteriori informazioni, consulta Configura HTTPS sulla porta 443.

  • Aggiunge la variabile di ricetta del percorso di lavoro. È possibile utilizzare questa variabile di ricetta per ottenere il percorso delle cartelle di lavoro dei componenti, che è possibile utilizzare per condividere file tra componenti e le relative dipendenze. Per ulteriori informazioni, consultate la variabile di composizione del percorso di lavoro.

Correzioni di bug e miglioramenti
  • Impedisce la creazione della policy di ruolo IAM AWS Identity and Access Management (Token Exchange) se esiste già una policy di ruolo.

    Come risultato di questa modifica, il programma di installazione ora richiede il comando iam:GetPolicy and sts:GetCallerIdentity when run with--provision true. Per ulteriori informazioni, consulta Policy IAM minima per l'installatore per il provisioning delle risorse.

  • Gestisce correttamente l'annullamento di una distribuzione che non è stata ancora registrata correttamente.

  • Aggiorna la configurazione per rimuovere le voci precedenti con timestamp più recenti quando si ripristina una distribuzione.

  • Correzioni e miglioramenti minori aggiuntivi. Per ulteriori informazioni, consulta le versioni su. GitHub

2.0.3

Versione iniziale.