Nucleo 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 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. Implementa questo componente per configurare impostazioni come proxy, ruolo del dispositivo e configurazione degli AWS IoT oggetti sui tuoi dispositivi principali.

Importante

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

Quando distribuisci un componente, AWS IoT Greengrass installa le ultime versioni supportate di tutte le dipendenze del componente. Per questo motivo, le nuove versioni patch dei componenti pubblici AWS forniti potrebbero essere distribuite automaticamente sui 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 tuo dispositivo, ti consigliamo di includere direttamente la versione preferita di quel componente quando crei una distribuzione. Per ulteriori informazioni sul comportamento di aggiornamento per il software AWS IoT Greengrass Core, consultaAggiornamento del software AWS IoT Greengrass Core (OTA).

Versioni

Questo componente ha le seguenti versioni:

  • 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,0x

Sistema operativo

Questo componente può essere installato su 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 il Greengrass nucleus e il AWS IoT Greengrass software 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 avere connettività a AWS IoT data, AWS IoT Credentials e Amazon S3.

Dipendenze

Il nucleo Greengrass non include alcuna dipendenza dai 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, consulta il riferimento alla ricetta 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 Greengrass. È possibile eseguire due tipi di installazione: un'installazione rapida che crea AWS le risorse necessarie all'utente o un'installazione manuale in cui AWS le risorse vengono create dall'utente. Per ulteriori informazioni, consulta Installare il software AWS IoT Greengrass Core..

Puoi anche seguire un tutorial per installare il nucleo Greengrass ed esplorare lo sviluppo dei componenti Greengrass. Per ulteriori informazioni, consulta Tutorial: Nozioni di base su 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 sui motivi e sulle modalità di configurazione di questo componente, consultaConfigurare il software AWS IoT Greengrass Core.

iotRoleAlias

L'alias del AWS IoT ruolo che rimanda a un ruolo IAM per lo scambio di token. Il fornitore di AWS IoT credenziali assume questo ruolo per consentire al dispositivo principale 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 nucleo.

interpolateComponentConfiguration

(Facoltativo) È possibile abilitare il Greengrass nucleus per interpolare le variabili di ricetta dei componenti nelle configurazioni dei componenti e unire gli aggiornamenti di configurazione. Si consiglia di impostare questa opzione true in 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 Core si riavvia per rendere effettiva la modifica.

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 core 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 Amazon root CA 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 nelurl, il dispositivo principale Greengrass ignora i username campi and. password

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

  • port— (Facoltativo) Il numero di porta. Se non specifichi la porta, il dispositivo principale 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

(Opzionale) La configurazione MQTT per il dispositivo principale 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 Core si riavvia per rendere effettiva la modifica.

Questo oggetto contiene le seguenti informazioni:

port

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

Impostazione predefinita: 8883

keepAliveTimeoutMs

(Facoltativo) La quantità di tempo in millisecondi tra ogni PING messaggio inviato dal client per mantenere attiva la connessione MQTT. Questo valore deve essere maggiore di. pingTimeoutMs

Impostazione predefinita: 60000 (60 secondi)

pingTimeoutMs

(Facoltativo) La quantità di tempo in millisecondi che il client attende di 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

Impostazione predefinita: 30000 (30 secondi)

operationTimeoutMs

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

Impostazione predefinita: 30000 (30 secondi)

maxInFlightPublishes

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

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

Impostazione predefinita: 5

Intervallo valido: valore massimo di 100

maxMessageSizeInBytes

(Facoltativo) La dimensione massima di un messaggio MQTT. Se un messaggio supera questa dimensione, il nucleo 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 volte in cui riprovare un messaggio che non viene pubblicato. È possibile 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

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 storageType supportata nelle versioni 2.10.x e precedenti di Greengrass nucleus è. Memory La mancata osservanza di queste indicazioni può causare la rottura dello spooler. Ciò impedirebbe al dispositivo principale Greengrass di inviare messaggi MQTT a. 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à quella fornita da GreenGrass. Spooler del disco

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

Impostazione predefinita: "aws.greengrass.DiskSpooler"

maxSizeInBytes

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

Impostazione predefinita: 2621440 (2,5 MB)

keepQos0WhenOffline

(Facoltativo) È possibile eseguire lo spool dei messaggi MQTT QoS 0 che il dispositivo principale riceve mentre è offline. Se imposti questa opzione sutrue, il dispositivo principale sposta i messaggi QoS 0 che non può inviare mentre è offline. Se imposti questa opzione sufalse, il dispositivo principale scarta questi messaggi. Il dispositivo principale esegue sempre lo spoiler 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.

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.

Impostazione predefinita: 100

sessionExpirySeconds

(Facoltativo) La quantità di tempo in secondi che puoi richiedere per 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. La quantità minima di tempo in secondi per la riconnessione di MQTT.

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

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.

Impostazione predefinita: 120

minimumConnectedTimeBeforeRetryResetSeconds

(Facoltativo) Un'opzione per il comportamento di riconnessione. Il periodo di tempo in secondi in cui una connessione deve essere attiva prima che il ritardo tra i tentativi venga ripristinato al minimo.

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

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 Core si riavvia per rendere effettiva la modifica.

iotDataEndpoint

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

Quando esegui il software AWS IoT Greengrass Core con l'--provision trueopzione, il software ottiene i dati e le credenziali dagli endpoint AWS IoT e li imposta nel componente nucleus.

iotCredEndpoint

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

Quando esegui il software AWS IoT Greengrass Core con l'--provision trueopzione, il software ottiene i dati e le credenziali dagli endpoint AWS IoT e li imposta nel componente nucleus.

greengrassDataPlaneEndpoint

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

Per ulteriori informazioni, consulta Utilizza un certificato del dispositivo firmato da una CA privata.

greengrassDataPlanePort

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

(Facoltativo) La porta da utilizzare per le connessioni sul 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 specifichi una porta bloccata, il dispositivo non sarà in grado di connettersi per AWS IoT Greengrass ricevere distribuzioni.

Seleziona una delle opzioni seguenti:

  • 443

  • 8443

Impostazione predefinita: 8443

awsRegion

Quello da usare Regione AWS .

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 Core si riavvia per rendere effettiva la modifica.

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 Core utilizza il gruppo primario 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 principali. L'utente deve esistere su ogni dispositivo Windows principale e il nome e la password devono essere memorizzati 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 ai processi dei componenti Lambda generici e non containerizzati per impostazione predefinita. È possibile ignorare 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 in modo da 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 percento di utilizzo della CPU. Se imposti questo valore su un numero maggiore del numero di core della CPU, il software AWS IoT Greengrass Core non limita l'utilizzo della CPU da parte 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 predefinito utilizzano l'endpoint regionale.

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

Impostazione predefinita: GLOBAL

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

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— Scegliete questa opzione se desiderate visualizzare i log sotto forma di testo.

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

Impostazione predefinita: TEXT

outputType

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

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

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

Impostazione predefinita: FILE

fileSizeKB

(Facoltativo) La dimensione massima di ogni file di registro (in kilobyte). Quando 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 Greengrass. I file di registro del nucleo di Greengrass includono anche i log dei componenti del plugin. Dopo che 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 limite di spazio su disco (diskSpaceLimit) del componente di gestione dei registri, che è possibile specificare per il nucleo di Greengrass (sistema) e ogni componente. Il software AWS IoT Greengrass Core utilizza il minimo dei due valori come dimensione massima totale del log per il nucleo 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.

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

fleetstatus

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

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

Questo oggetto contiene le seguenti informazioni:

periodicStatusPublishIntervalSeconds

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

Minimo: 86400 (24 ore)

Impostazione predefinita: 86400 (24 ore)

telemetry

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

Questo oggetto contiene le seguenti informazioni:

enabled

(Facoltativo) È possibile abilitare o disabilitare la telemetria.

Impostazione predefinita: true

periodicAggregateMetricsIntervalSeconds

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

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

Minimo: 3600

Impostazione predefinita: 3600

periodicPublishMetricsIntervalSeconds

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

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

Minimo: 86400

Impostazione predefinita: 86400

deploymentPollingFrequencySeconds

(Facoltativo) Il periodo in secondi in cui eseguire il sondaggio per le notifiche di distribuzione.

Impostazione predefinita: 15

componentStoreMaxSizeBytes

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

Impostazione predefinita: 10000000000 (10 GB)

platformOverride

(Facoltativo) Un dizionario di attributi che identifica la piattaforma del dispositivo principale. Utilizzatelo per definire gli attributi personalizzati della piattaforma 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 manifest platform nella ricetta del componente.

È inoltre possibile utilizzare questo parametro per sovrascrivere gli attributi os e di 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 queste durate di timeout per evitare il timeout delle richieste HTTP.

Questo oggetto contiene le seguenti informazioni:

connectionTimeoutMs

(Facoltativo) La quantità di tempo (in millisecondi) di attesa dell'apertura di una connessione prima del timeout della richiesta di connessione.

Impostazione predefinita: 2000 (2 secondi)

socketTimeoutMs

(Facoltativo) La quantità di tempo (in millisecondi) di attesa per il trasferimento dei dati su una connessione aperta prima del timeout della connessione.

Impostazione predefinita: 30000 (30 secondi)

Esempio: fusione e aggiornamento della configurazione
{ "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 ogni versione del componente.

Versione

Modifiche

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 blocca occasionalmente durante il rollback di un componente precedentemente danneggiato con dipendenze rigide.

  • Risolve un problema per cui il nucleo non pubblica 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 per cui il nucleo entra in una condizione di stallo 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 del componente.

  • Correzioni di bug generali e miglioramenti.

2.12.2

Correzioni di bug e miglioramenti
  • Risolve un problema per cui i vecchi log 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 Nucleus poteva duplicare gli abbonamenti MQTT ad argomenti di distribuzione, con conseguente ulteriore registrazione e pubblicazione di file MQTT.

2.12.0

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

2.11.3

Correzioni di bug e miglioramenti
  • Risolve un problema nel nucleo a causa del quale poteva avviare erroneamente un componente quando le sue dipendenze non funzionavano.

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 del docker dial.

2.11.1

Correzioni di bug e miglioramenti
  • Risolve un problema per cui il nucleo non si avvia se un'attività di bootstrap fallisce e il file dei metadati di distribuzione è danneggiato.

  • Risolve un problema per cui i componenti Lambda su richiesta non vengono segnalati negli aggiornamenti sullo stato della distribuzione.

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

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 Disk Spooler.

2.10.3

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

2.10.2

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

  • Risolve un problema per cui la variabile di ambiente PATH non veniva ricreata correttamente.

  • Risolve la codifica URI del 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, ma ripristina il comportamento al 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 root config.

  • Aggiunge il supporto per MQTT5.

  • Aggiunge un meccanismo per caricare rapidamente i componenti del plug-in senza eseguire la scansione.

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

Correzioni di bug e miglioramenti
  • Risolve un problema per cui il rollback lascia determinati valori di configurazione al loro posto da una distribuzione.

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

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

  • Aggiorna il nucleo Greengrass per saltare il download delle immagini Docker quando sono già presenti localmente.

  • Aggiorna il nucleo 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 per cui una distribuzione Greengrass fallisce con l'errore LAUNCH_DIRECTORY_CORRUPTED e un successivo riavvio del dispositivo non riesce ad avviare 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 quale una distribuzione fallisce quando l'area dei 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 per cui 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 di dettaglio dello stato del lavoro se superano il limite di 1024 caratteri.

  • Aggiorna lo script di bootstrap per Windows per leggere 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 all'abbonamento non è stata inviata.

  • Assicura che il nucleo carichi la 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 vengano duplicati.

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

  • Riprova il docker image pull per errori specifici relativi alla rete.

  • Aggiunge l'opzione per la connessione MQTTnoProxyAddresses.

2.9.2

Correzioni di bug e miglioramenti
  • Risolve un problema per cui la configurazione interpolateComponentConfiguration non si applica a una distribuzione in corso.

  • 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 dell'API Greengrass.

  • Risolve un problema per cui gli aggiornamenti dello stato del parco macchine inviano informazioni imprecise quando un componente raggiunge ERRORED uno stato durante un'implementazione.

  • Risolve un problema per cui le distribuzioni 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 un riavvio del nucleo durante l'implementazione di bootstrap causa il fallimento di una distribuzione.

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

  • Risolve un problema per cui l'arresto di un componente 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 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 per cui il nucleo Greengrass ripristina un dispiegamento in determinati scenari quando il nucleo viene fermato o riavviato. Il nucleo ora riprende il dispiegamento dopo il riavvio del nucleo.

  • Aggiorna il programma di installazione di Greengrass per rispettare l'--startargomento quando si specifica di configurare il software come servizio di sistema.

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

  • Correzioni e miglioramenti minori aggiuntivi.

2.6.0

Nuove funzionalità
Correzioni di bug e miglioramenti
  • Risolve un problema per cui i componenti dipendenti non reagivano quando le loro dipendenze rigide si riavviavano o cambiavano stato in determinati scenari.

  • Migliora i messaggi di errore che il dispositivo principale segnala al servizio AWS IoT Greengrass cloud quando un'implementazione fallisce.

  • Risolve un problema per cui il nucleo di Greengrass applicava due volte il dispiegamento di un oggetto 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 il nucleo Greengrass analizza gli argomenti booleani dell'installatore, 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 per cui 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 con le 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 l'aggiornamento del Greengrass Nucleus, il servizio Windows non si riavvia 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 Greengrass mette a disposizione dei processi dei componenti Greengrass. È ora possibile riavviare un componente in modo che 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.

    A seguito 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 AWS IoT Greengrass Core per effettuare il provisioning delle risorse, lo consente la AWS IoT politica predefinitagreengrass:*, che include questa autorizzazione. Per ulteriori informazioni, consulta Autenticazione e autorizzazione del dispositivo per AWS IoT Greengrass.

  • Aggiunge il supporto per le configurazioni 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 principale. 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
  • Risolve l'opzione del ciclo di vita di bootstrap per riavviare il dispositivo principale da un componente.

  • Aggiunge il supporto per i trattini nelle variabili di ricetta.

  • Corregge l'autorizzazione IPC per i componenti della funzione 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 creato dal nucleo Greengrass quando si installa il software AWS IoT Greengrass Core con provisioning automatico. Questa autorizzazione non viene utilizzata dal nucleo Greengrass.

  • Risolve un problema per cui lo script di provisioning automatico non richiedeva l'iam:GetPolicyautorizzazione se iam:CreatePolicy disponibile per la stessa politica.

  • Correzioni e miglioramenti minori aggiuntivi.

2.4.0

Nuove funzionalità
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 collegamento simbolico del 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 del nucleo scaricati durante l'installazione del software Core. AWS IoT Greengrass

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

2.3.0

Nuove funzionalità
  • Aggiunge la variabile iot:thingName recipe. Puoi usare questa variabile di ricetta per ottenere il nome dell'elemento del dispositivo AWS IoT principale 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 archivi 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 transito 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 distribuzioni shadow al riavvio del nucleo.

  • Risolve un problema che causava l'arresto anomalo del nucleus quando rilevava un'eccezione di carico del servizio.

  • Migliora la risoluzione delle dipendenze dei componenti per evitare il 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 nella /greengrass/v2/work directory per i componenti Lambda o per i componenti eseguiti come root. La HOME variabile è ora impostata correttamente nella home directory 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.

  • Usa l'endpoint del piano dati Greengrass corretto nelle AWS regioni cinesi.

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 viaggi 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 i componenti e le relative dipendenze. Per ulteriori informazioni, consulta la variabile di ricetta del percorso di lavoro.

Correzioni di bug e miglioramenti
  • Impedisce la creazione della politica di ruolo dello scambio di token AWS Identity and Access Management (IAM) se esiste già una politica di ruolo.

    Come risultato di questa modifica, il programma di installazione ora richiede iam:GetPolicy e sts:GetCallerIdentity quando viene eseguito con--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 più vecchie con timestamp più recenti durante il rollback di una distribuzione.

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

2.0.3

Versione iniziale.