View a markdown version of this page

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

Stream manager

Il componente stream manager (aws.greengrass.StreamManager) consente di elaborare i flussi di dati da trasferire ai dispositivi principali di Greengrass. Cloud AWS

Per ulteriori informazioni su come configurare e utilizzare lo stream manager nei componenti personalizzati, vedere. Gestisci i flussi di dati sui dispositivi principali di Greengrass

Versioni

Questo componente ha le seguenti versioni:

  • 2.3.x

  • 2.2.x

  • 2.1.x

  • 2.0.x

Nota

Se utilizzi stream manager per esportare dati nel cloud, non puoi aggiornare la versione 2.0.7 del componente stream manager a una versione compresa tra v2.0.8 e v2.0.11. Se stai implementando stream manager per la prima volta, ti consigliamo vivamente di distribuire la versione più recente del componente stream manager.

Tipo

Questo componente è un componente generico ()aws.greengrass.generic. Il nucleo di Greengrass esegue gli script del ciclo di vita del componente.

Per ulteriori informazioni, consulta Tipi di componenti.

Sistema operativo

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

  • Linux

  • Windows

Requisiti

Questo componente ha i seguenti requisiti:

  • Il ruolo di scambio di token deve consentire l'accesso alle Cloud AWS destinazioni utilizzate con stream manager. Per ulteriori informazioni, consulta:

  • Il componente stream manager è supportato per l'esecuzione in un VPC. Per distribuire questo componente in un VPC, è necessario quanto segue.

    • Il componente stream manager deve essere connesso al AWS servizio su cui pubblichi i dati.

      • Amazon S3: com.amazonaws.region.s3

      • Flussi di dati Amazon Kinesis: com.amazonaws.region.kinesis-streams

      • AWS IoT SiteWise: com.amazonaws.region.iotsitewise.data

    • Se pubblichi dati su Amazon S3 nella us-east-1 regione, questo componente tenterà di utilizzare l'endpoint globale S3 per impostazione predefinita; tuttavia, questo endpoint non è disponibile tramite l'endpoint di interfaccia Amazon S3 VPC. Per ulteriori informazioni, consulta Restrizioni e limitazioni per Amazon S3. AWS PrivateLink Per risolvere questo problema, puoi scegliere tra le seguenti opzioni.

      • Configura il componente stream manager per utilizzare l'endpoint S3 regionale nella us-east-1 regione, -Daws.s3UseUsEast1RegionalEndpoint=regional configurando in. JVM_ARGS

      • Crea un endpoint VPC gateway Amazon S3 anziché un endpoint VPC con interfaccia Amazon S3. Gli endpoint gateway S3 supportano l'accesso all'endpoint globale S3. Per ulteriori informazioni, consulta Creare un endpoint gateway.

Endpoint e porte

Questo componente deve essere in grado di eseguire richieste in uscita ai seguenti endpoint e porte, oltre agli endpoint e alle porte necessari per il funzionamento di base. Per ulteriori informazioni, consulta Consenti il traffico dei dispositivi tramite un proxy o un firewall.

Endpoint Porta Richiesto Description

kinesis.region.amazonaws.com

443 No

Obbligatorio se si pubblicano dati su Firehose.

data.iotsitewise.region.amazonaws.com

443 No

Obbligatorio se si pubblicano dati su. AWS IoT SiteWise

*.s3.amazonaws.com

443 No

Obbligatorio se si pubblicano dati in bucket S3.

Puoi sostituirlo * con il nome di ogni bucket in cui pubblichi i dati.

AWS IoT Analytics interrotto

AWS IoT Analytics è stato interrotto il 15 dicembre 2025. L'iotanalytics.region.amazonaws.com.rproxy.goskope.comendpoint non è più funzionante. Se hai stream configurati con destinazioni di IoTAnalyticsConfig esportazione, rimuovili per evitare continui tentativi di esportazione falliti. Per ulteriori informazioni, consulta AWS IoT Analytics canali (fuori produzione).

Dipendenze

Quando distribuisci un componente, distribuisce AWS IoT Greengrass anche versioni compatibili delle sue dipendenze. Ciò significa che è necessario soddisfare i requisiti del componente e tutte le sue dipendenze per distribuire correttamente il componente. Questa sezione elenca le dipendenze per le versioni rilasciate di questo componente e i vincoli semantici della versione che definiscono le versioni dei componenti per ciascuna dipendenza. È inoltre possibile visualizzare le dipendenze per ciascuna versione del componente nella console. AWS IoT Greengrass Nella pagina dei dettagli del componente, cerca l'elenco delle dipendenze.

2.1.3 – 2.3.1

La tabella seguente elenca le dipendenze per le versioni da 2.1.3 a 2.3.1 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <3.0.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.1.11 – 2.1.12

La tabella seguente elenca le dipendenze per le versioni da 2.1.11 a 2.1.10 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <2.13.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.1.9 – 2.1.10

La tabella seguente elenca le dipendenze per le versioni da 2.1.9 a 2.1.10 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <2.12.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.1.5 – 2.1.8

La tabella seguente elenca le dipendenze per le versioni da 2.1.5 a 2.1.8 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <2.11.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.1.2 – 2.1.4

La tabella seguente elenca le dipendenze per le versioni da 2.1.2 a 2.1.4 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <2.10.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.1.1

La tabella seguente elenca le dipendenze per la versione 2.1.1 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <2.9.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.1.0

La tabella seguente elenca le dipendenze per la versione 2.1.0 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <2.8.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.0.15

La tabella seguente elenca le dipendenze per la versione 2.0.15 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <2.7.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.0.13 and 2.0.14

La tabella seguente elenca le dipendenze per le versioni 2.0.13 e 2.0.14 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <2.6.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.0.11 and 2.0.12

La tabella seguente elenca le dipendenze per le versioni 2.0.11 e 2.0.12 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <2.5.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.0.10

La tabella seguente elenca le dipendenze per la versione 2.0.10 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <2.4.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.0.9

La tabella seguente elenca le dipendenze per la versione 2.0.9 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <2.3.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.0.8

La tabella seguente elenca le dipendenze per la versione 2.0.8 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.0 <2.2.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi
2.0.7

La tabella seguente elenca le dipendenze per la versione 2.0.7 di questo componente.

Dipendenza Versioni compatibili Tipo di dipendenza
Nucleo Greengrass > =2.0.3 <2.1.0 Flessibili
Servizio di scambio di token > = 0.0.0 Rigidi

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

Configurazione

Questo componente fornisce i seguenti parametri di configurazione che è possibile personalizzare durante la distribuzione del componente.

STREAM_MANAGER_STORE_ROOT_DIR

(Facoltativo) Il percorso assoluto della directory locale utilizzata per archiviare gli stream. Questo valore deve iniziare con una barra (ad esempio, /data).

È necessario specificare una cartella esistente e l'utente di sistema che esegue il componente stream manager deve disporre delle autorizzazioni per leggere e scrivere in questa cartella. Ad esempio, puoi eseguire i seguenti comandi per creare e configurare una cartella/var/greengrass/streams, che specifichi come cartella principale dello stream manager. Questi comandi consentono all'utente di sistema predefinito,ggc_user, di leggere e scrivere in questa cartella.

sudo mkdir /var/greengrass/streams sudo chown ggc_user /var/greengrass/streams sudo chmod 700 /var/greengrass/streams

Impostazione predefinita: /greengrass/v2/work/aws.greengrass.StreamManager

STREAM_MANAGER_SERVER_PORT

(Facoltativo) Il numero di porta locale da utilizzare per comunicare con lo stream manager.

È possibile specificare 0 di utilizzare una porta disponibile a caso.

Impostazione predefinita: 8088

STREAM_MANAGER_AUTHENTICATE_CLIENT

(Facoltativo) Puoi rendere obbligatoria l'autenticazione dei client prima di poter interagire con lo stream manager. Lo Stream Manager SDK controlla l'interazione tra client e stream manager. Questo parametro determina quali client possono chiamare lo Stream Manager SDK per lavorare con gli stream. Per ulteriori informazioni, consulta Stream Manager Client Authentication.

Se lo specifichitrue, lo Stream Manager SDK consente solo i componenti Greengrass come client.

Se lo specifichifalse, lo Stream Manager SDK consente a tutti i processi sul dispositivo principale di essere client.

Impostazione predefinita: true

STREAM_MANAGER_EXPORTER_MAX_BANDWIDTH

(Facoltativo) La larghezza di banda massima media (in kilobit al secondo) che Stream Manager può utilizzare per esportare i dati.

Impostazione predefinita: nessun limite

STREAM_MANAGER_EXPORTER_THREAD_POOL_SIZE

(Facoltativo) Il numero massimo di thread attivi che Stream Manager può utilizzare per esportare i dati.

La dimensione ottimale dipende dall'hardware, dal volume del flusso e dal numero pianificato di flussi di esportazione. Se la velocità di esportazione è bassa, puoi regolare questa impostazione per trovare la dimensione ottimale per l'hardware e il business case. La CPU e la memoria dell'hardware del dispositivo core sono fattori limitanti. Per iniziare, è possibile provare a impostare questo valore uguale al numero di core di processore sul dispositivo.

Fare attenzione a non impostare una dimensione superiore a quella supportata dall'hardware. Ogni stream consuma risorse hardware, quindi cerca di limitare il numero di flussi di esportazione su dispositivi con vincoli.

Predefinito: 5 thread

STREAM_MANAGER_EXPORTER_S3_DESTINATION_MULTIPART_UPLOAD_MIN_PART_SIZE_BYTES

(Facoltativo) La dimensione minima (in byte) di una parte in un caricamento in più parti su Amazon S3. Stream Manager utilizza questa impostazione e la dimensione del file di input per determinare come raggruppare i dati in una richiesta PUT composta da più parti.

Nota

Stream Manager utilizza la sizeThresholdForMultipartUploadBytes proprietà streams per determinare se esportare in Amazon S3 come caricamento singolo o in più parti. AWS IoT Greengrass i componenti possono impostare questa soglia quando creano uno stream che esporta in Amazon S3.

Predefinito: 5242880 (5 MB). Questo è anche il valore minimo.

STREAM_MANAGER_EXPORTER_KINESIS_INTER_CALL_DELAY_MS

(Facoltativo) Il ritardo, in millisecondi, che lo stream manager attende tra una richiesta consecutiva e l'altra quando esporta i flussi verso destinazioni Kinesis Data Streams. Questo ritardo si applica solo quando lo stream manager non è in grado di determinare il layout dello shard del flusso di dati di destinazione. Ciò può accadere quando il ruolo di scambio di token di Greengrass non include l'kinesis:ListShardsautorizzazione. Quando lo stream manager è in grado di determinare il layout dello shard, utilizza un ritmo consapevole dello shard-aware anziché questo ritardo. Per disattivare il ritardo di fallback, impostate questo parametro su. 0

Predefinito: 1000 (1 secondo)

LOG_LEVEL

(Facoltativo) Il livello di registrazione per il componente. Scegli tra i seguenti livelli di registro, elencati qui in ordine di livello:

  • TRACE

  • DEBUG

  • INFO

  • WARN

  • ERROR

Impostazione predefinita: INFO

JVM_ARGS

(Facoltativo) Gli argomenti personalizzati di Java Virtual Machine da passare allo stream manager all'avvio. Separa più argomenti con spazi.

Utilizza questo parametro solo quando devi sostituire le impostazioni predefinite utilizzate dalla JVM. Ad esempio, potrebbe essere necessario aumentare la dimensione heap predefinita se prevedi di esportare un numero elevato di flussi.

startupTimeoutSeconds

(Facoltativo) Il tempo massimo in secondi per l'avvio del componente. Lo stato del componente cambia ERRORED se supera questo timeout.

Impostazione predefinita: 120

Esempio Esempio: aggiornamento dell'unione delle configurazioni

La seguente configurazione di esempio specifica l'uso di una porta non predefinita.

{ "STREAM_MANAGER_SERVER_PORT": "18088" }

File di registro locale

Questo componente utilizza il seguente file di registro.

Linux
/greengrass/v2/logs/aws.greengrass.StreamManager.log
Windows
C:\greengrass\v2\logs\aws.greengrass.StreamManager.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/aws.greengrass.StreamManager.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\aws.greengrass.StreamManager.log -Tail 10 -Wait

Changelog

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

Versione

Modifiche

2.3.1

Correzioni di bug e miglioramenti
  • Migliora la velocità effettiva delle esportazioni di stream manager verso le destinazioni di Kinesis Data Streams, in particolare per record di piccole dimensioni.

  • Aggiunge un ritmo consapevole degli shard-aware che distribuisce i record tra i frammenti del flusso di dati di destinazione. Questo ritmo mantiene le richieste entro i limiti per shard di Kinesis Data Streams per ridurre la limitazione. Per utilizzare lo shard-aware pacing, concedete l'autorizzazione nel ruolo di scambio di token di Greengrass. kinesis:ListShards Autorizza i dispositivi principali a interagire con i servizi AWS Senza questa autorizzazione, stream manager assegna una chiave di partizione casuale a ciascun record.

  • Aggiunge il parametro di STREAM_MANAGER_EXPORTER_KINESIS_INTER_CALL_DELAY_MS configurazione, che imposta un ritardo di riserva tra le richieste di esportazione quando lo stream manager non è in grado di determinare il layout dello shard del flusso di dati di destinazione.

2.3.0

Correzioni di bug e miglioramenti
  • Aggiornamenti all' AWS SDK per Java v2 per prestazioni e compatibilità migliorate.

  • Modifica il comportamento della precedenza dei proxy per allinearlo alla configurazione proxy SDK standard AWS .

2.2.1

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale Stream Manager non riesce a esportare i messaggi verso le destinazioni Kinesis Data Streams.

  • Ulteriori miglioramenti alle prestazioni delle esportazioni dello stream manager verso le destinazioni Kinesis Data Streams.

2.2.0

Nuove funzionalità
  • Aggiunge una nuova chiave di configurazione per il timeout di avvio. Il valore predefinito è 120 secondi.

  • Aggiunge il supporto alle ricette per Greengrass nucleus lite.

2.1.13

Correzioni di bug e miglioramenti

Supporta endpoint FIPS per AWS IoT SiteWise

2.1.12

Correzioni di bug e miglioramenti

Aggiorna l'ordine di utilizzo delle credenziali in modo che le credenziali Greengrass siano preferite per le richieste di servizio. AWS

2.1.11

Versione aggiornata per Greengrass nucleus versione 2.12.0.

2.1.10

Correzioni di bug e miglioramenti

Risolve un problema per cui la configurazione del proxy HTTPS non considera attendibile la catena di certificati dell'autorità di certificazione (CA) di Greengrass.

2.1.9

Versione aggiornata per Greengrass nucleus versione 2.11.0.

2.1.8

Correzioni di bug e miglioramenti

Risolve un problema a causa del quale Stream Manager SiteWise riprova all'infinito le esportazioni con esito negativo. InvalidRequestException

2.1.7

Correzioni di bug e miglioramenti

Risolve un problema a causa del quale lo stream manager non riesce a leggere correttamente la configurazione del proxy.

2.1.6

Correzioni di bug e miglioramenti

Risolve un problema che poteva causare un arresto anomalo all'avvio su alcuni processori ARMv8, incluso Jetson Nano.

2.1.5

Versione aggiornata per Greengrass nucleus versione 2.10.0.

2.1.4

Correzioni di bug e miglioramenti
  • Risolve un problema a causa del quale le voci relative allo stesso asset di proprietà con lo stesso timestamp all'interno di un singolo batch venivano restituite ConflictingOperationException dall' SiteWise API, il che faceva sì che stream manager riprovasse continuamente.

  • Aggiorna il timeout di connessione predefinito da 3 secondi a 1 minuto.

2.1.3

Correzioni di bug e miglioramenti

Risolve un problema di avvio sul sistema operativo Windows quando viene eseguito come utente SYSTEM.

2.1.2

Correzioni di bug e miglioramenti
  • Risolve un problema su sistemi operativi Windows che utilizzano una lingua diversa dall'inglese.

  • Versione aggiornata per la versione 2.9.0 di Greengrass nucleus.

2.1.1

Versione aggiornata per la versione 2.8.0 di Greengrass nucleus.

2.1.0

Nuove funzionalità

2.0.15

Versione aggiornata per la versione 2.6.0 di Greengrass nucleus.

2.0.14

Questa versione contiene correzioni di bug e miglioramenti.

2.0.13

Versione aggiornata per la versione 2.5.0 di Greengrass nucleus.

2.0.12
Correzioni di bug e miglioramenti

Risolve un problema che impediva l'aggiornamento di stream manager v2.0.7 a una versione compresa tra v2.0.8 e v2.0.11. Se utilizzi stream manager per esportare dati nel cloud, ora puoi eseguire l'aggiornamento alla v2.0.12.

2.0.11

Versione aggiornata per la versione 2.4.0 di Greengrass nucleus.

2.0.10

Versione aggiornata per la versione 2.3.0 di Greengrass nucleus.

2.0.9

Versione aggiornata per la versione 2.2.0 di Greengrass nucleus.

2.0.8

Versione aggiornata per la versione 2.1.0 di Greengrass nucleus.

2.0.7

Versione iniziale.