Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Configurare le impostazioni IDT per eseguire la suite di AWS IoT Greengrass qualifiche

Modalità Focus
Configurare le impostazioni IDT per eseguire la suite di AWS IoT Greengrass qualifiche - AWS IoT Greengrass

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

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

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

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

Prima di eseguire i test, è necessario configurare le impostazioni per le AWS credenziali e i dispositivi sul computer host.

Configura le tue credenziali AWS

È necessario configurare le credenziali utente IAM nel <device-tester-extract-location> /configs/config.json file. Utilizza le credenziali per l'IDT per l' AWS IoT Greengrass utente creato in. Crea e configura un Account AWS Puoi specificare le credenziali in uno dei due modi seguenti:

  • File delle credenziali

  • Variabili di ambiente

IDT usa lo stesso file delle credenziali di AWS CLI. Per ulteriori informazioni, consulta l'argomento relativo ai file di configurazione e delle credenziali.

La posizione del file delle credenziali varia in base al sistema operativo in uso:

  • macOS, Linux: ~/.aws/credentials

  • Windows: C:\Users\UserName\.aws\credentials

Aggiungi AWS le tue credenziali al credentials file nel seguente formato:

[default] aws_access_key_id = <your_access_key_id> aws_secret_access_key = <your_secret_access_key>

Per configurare IDT in modo AWS IoT Greengrass che utilizzi AWS le credenziali del tuo credentials file, modifica il config.json file come segue:

{ "awsRegion": "us-west-2", "auth": { "method": "file", "credentials": { "profile": "default" } } }
Nota

Se non usi il default AWS profilo, assicurati di cambiarne il nome nel fileconfig.json. Per ulteriori informazioni, consulta l'articolo relativo ai profili denominati.

Configura le AWS credenziali con un file di credenziali

IDT usa lo stesso file delle credenziali di AWS CLI. Per ulteriori informazioni, consulta l'argomento relativo ai file di configurazione e delle credenziali.

La posizione del file delle credenziali varia in base al sistema operativo in uso:

  • macOS, Linux: ~/.aws/credentials

  • Windows: C:\Users\UserName\.aws\credentials

Aggiungi AWS le tue credenziali al credentials file nel seguente formato:

[default] aws_access_key_id = <your_access_key_id> aws_secret_access_key = <your_secret_access_key>

Per configurare IDT in modo AWS IoT Greengrass che utilizzi AWS le credenziali del tuo credentials file, modifica il config.json file come segue:

{ "awsRegion": "us-west-2", "auth": { "method": "file", "credentials": { "profile": "default" } } }
Nota

Se non usi il default AWS profilo, assicurati di cambiarne il nome nel fileconfig.json. Per ulteriori informazioni, consulta l'articolo relativo ai profili denominati.

Le variabili di ambiente sono variabili gestite dal sistema operativo e utilizzate dai comandi di sistema. Non vengono salvate se chiudi la sessione SSH. IDT for AWS IoT Greengrass può utilizzare le variabili di AWS_SECRET_ACCESS_KEY ambiente AWS_ACCESS_KEY_ID e per memorizzare le credenziali. AWS

Per impostare queste variabili su Linux, macOS o Unix, utilizza export:

export AWS_ACCESS_KEY_ID=<your_access_key_id> export AWS_SECRET_ACCESS_KEY=<your_secret_access_key>

Per impostare queste variabili su Windows, utilizza set:

set AWS_ACCESS_KEY_ID=<your_access_key_id> set AWS_SECRET_ACCESS_KEY=<your_secret_access_key>

Per configurare IDT per utilizzare le variabili di ambiente, modifica la sezione auth nel file config.json. Ecco un esempio:

{ "awsRegion": "us-west-2", "auth": { "method": "environment" } }

Le variabili di ambiente sono variabili gestite dal sistema operativo e utilizzate dai comandi di sistema. Non vengono salvate se chiudi la sessione SSH. IDT for AWS IoT Greengrass può utilizzare le variabili di AWS_SECRET_ACCESS_KEY ambiente AWS_ACCESS_KEY_ID e per memorizzare le credenziali. AWS

Per impostare queste variabili su Linux, macOS o Unix, utilizza export:

export AWS_ACCESS_KEY_ID=<your_access_key_id> export AWS_SECRET_ACCESS_KEY=<your_secret_access_key>

Per impostare queste variabili su Windows, utilizza set:

set AWS_ACCESS_KEY_ID=<your_access_key_id> set AWS_SECRET_ACCESS_KEY=<your_secret_access_key>

Per configurare IDT per utilizzare le variabili di ambiente, modifica la sezione auth nel file config.json. Ecco un esempio:

{ "awsRegion": "us-west-2", "auth": { "method": "environment" } }

Configura dispositivo.json

Oltre alle AWS credenziali, IDT for AWS IoT Greengrass necessita di informazioni sui dispositivi su cui vengono eseguiti i test (ad esempio, indirizzo IP, informazioni di accesso, sistema operativo e architettura della CPU).

Devi fornire queste informazioni utilizzando il modello device.json situato in <device_tester_extract_location>/configs/device.json:

Physical device
[ { "id": "<pool-id>", "sku": "<sku>", "features": [ { "name": "os", "value": "linux | ubuntu | openwrt" }, { "name": "arch", "value": "x86_64 | armv6l | armv7l | aarch64" }, { "name": "container", "value": "yes | no" }, { "name": "docker", "value": "yes | no" }, { "name": "streamManagement", "value": "yes | no" }, { "name": "hsi", "value": "yes | no" }, { "name": "ml", "value": "mxnet | tensorflow | dlr | mxnet,dlr,tensorflow | no" }, *********** Remove the section below if the device is not qualifying for ML **************, { "name": "mlLambdaContainerizationMode", "value": "container | process | both" }, { "name": "processor", "value": "cpu | gpu" }, ****************************************************************************************** ], *********** Remove the section below if the device is not qualifying for HSI *************** "hsm": { "p11Provider": "/path/to/pkcs11ProviderLibrary", "slotLabel": "<slot_label>", "slotUserPin": "<slot_pin>", "privateKeyLabel": "<key_label>", "openSSLEngine": "/path/to/openssl/engine" }, ******************************************************************************************** *********** Remove the section below if the device is not qualifying for ML **************** "machineLearning": { "dlrModelPath": "/path/to/compiled/dlr/model", "environmentVariables": [ { "key": "<environment-variable-name>", "value": "<Path:$PATH>" } ], "deviceResources": [ { "name": "<resource-name>", "path": "<resource-path>", "type": "device | volume" } ] }, ****************************************************************************************** "kernelConfigLocation": "", "greengrassLocation": "", "devices": [ { "id": "<device-id>", "connectivity": { "protocol": "ssh", "ip": "<ip-address>", "port": 22, "auth": { "method": "pki | password", "credentials": { "user": "<user-name>", "privKeyPath": "/path/to/private/key", "password": "<password>" } } } } ] } ]
Nota

Specificare privKeyPath solo se method è impostato su pki.

Specificare password solo se method è impostato su password.

Docker container
[ { "id": "<pool-id>", "sku": "<sku>", "features": [ { "name": "os", "value": "linux | ubuntu | openwrt" }, { "name": "arch", "value": "x86_64" }, { "name": "container", "value": "no" }, { "name": "docker", "value": "no" }, { "name": "streamManagement", "value": "yes | no" }, { "name": "hsi", "value": "no" }, { "name": "ml", "value": "mxnet | tensorflow | dlr | mxnet,dlr,tensorflow | no" }, *********** Remove the section below if the device is not qualifying for ML **************, { "name": "mlLambdaContainerizationMode", "value": "process" }, { "name": "processor", "value": "cpu | gpu" }, ****************************************************************************************** ], *********** Remove the section below if the device is not qualifying for ML **************** "machineLearning": { "dlrModelPath": "/path/to/compiled/dlr/model", "environmentVariables": [ { "key": "<environment-variable-name>", "value": "<Path:$PATH>" } ], "deviceResources": [ { "name": "<resource-name>", "path": "<resource-path>", "type": "device | volume" } ] }, ****************************************************************************************** "kernelConfigLocation": "", "greengrassLocation": "", "devices": [ { "id": "<device-id>", "connectivity": { "protocol": "docker", "containerId": "<container-name | container-id>", "containerUser": "<user>" } } ] } ]
[ { "id": "<pool-id>", "sku": "<sku>", "features": [ { "name": "os", "value": "linux | ubuntu | openwrt" }, { "name": "arch", "value": "x86_64 | armv6l | armv7l | aarch64" }, { "name": "container", "value": "yes | no" }, { "name": "docker", "value": "yes | no" }, { "name": "streamManagement", "value": "yes | no" }, { "name": "hsi", "value": "yes | no" }, { "name": "ml", "value": "mxnet | tensorflow | dlr | mxnet,dlr,tensorflow | no" }, *********** Remove the section below if the device is not qualifying for ML **************, { "name": "mlLambdaContainerizationMode", "value": "container | process | both" }, { "name": "processor", "value": "cpu | gpu" }, ****************************************************************************************** ], *********** Remove the section below if the device is not qualifying for HSI *************** "hsm": { "p11Provider": "/path/to/pkcs11ProviderLibrary", "slotLabel": "<slot_label>", "slotUserPin": "<slot_pin>", "privateKeyLabel": "<key_label>", "openSSLEngine": "/path/to/openssl/engine" }, ******************************************************************************************** *********** Remove the section below if the device is not qualifying for ML **************** "machineLearning": { "dlrModelPath": "/path/to/compiled/dlr/model", "environmentVariables": [ { "key": "<environment-variable-name>", "value": "<Path:$PATH>" } ], "deviceResources": [ { "name": "<resource-name>", "path": "<resource-path>", "type": "device | volume" } ] }, ****************************************************************************************** "kernelConfigLocation": "", "greengrassLocation": "", "devices": [ { "id": "<device-id>", "connectivity": { "protocol": "ssh", "ip": "<ip-address>", "port": 22, "auth": { "method": "pki | password", "credentials": { "user": "<user-name>", "privKeyPath": "/path/to/private/key", "password": "<password>" } } } } ] } ]
Nota

Specificare privKeyPath solo se method è impostato su pki.

Specificare password solo se method è impostato su password.

Tutti i campi che includono valori sono obbligatori, come descritto di seguito:

id

Un ID alfanumerico definito dall'utente che identifica in modo univoco una raccolta di dispositivi denominata un pool di dispositivi. I dispositivi che appartengono a un pool devono avere lo stesso hardware. Durante l'esecuzione di una suite di test, i dispositivi del pool vengono utilizzati per parallelizzare il carico di lavoro. Più dispositivi vengono utilizzati per eseguire diversi test.

sku

Un valore alfanumerico che identifica in modo univoco il dispositivo sottoposto a test. Il codice SKU viene utilizzato per tenere traccia delle schede qualificate.

Nota

Se desideri inserire la tua scheda nel AWS Partner Device Catalog, lo SKU che specifichi qui deve corrispondere allo SKU che utilizzi nel processo di pubblicazione.

features

Un array contenente le caratteristiche supportate del dispositivo. Tutte le funzionalità sono obbligatorie.

os e arch

Combinazioni di sistemi operativi (OS) e architetture supportate:

  • linux, x86_64

  • linux, armv6l

  • linux, armv7l

  • linux, aarch64

  • ubuntu, x86_64

  • openwrt, armv7l

  • openwrt, aarch64

Nota

Se utilizzi IDT per testare l' AWS IoT Greengrass esecuzione in un contenitore Docker, è supportata solo l'architettura Docker x86_64.

container

Verifica che il dispositivo soddisfi tutti i requisiti software e hardware per eseguire le funzioni Lambda in modalità contenitore su un core Greengrass.

Il valore valido è o. yes no

docker

Verifica che il dispositivo soddisfi tutte le dipendenze tecniche richieste per utilizzare il connettore di distribuzione delle applicazioni Greengrass Docker per eseguire i contenitori

Il valore valido è o. yes no

streamManagement

Verifica che il dispositivo soddisfi tutte le dipendenze tecniche richieste per eseguire AWS IoT Greengrass lo stream manager.

Il valore valido è yes o. no

hsi

Verifica che la libreria condivisa HSI fornita sia in grado di interfacciarsi con il modulo di sicurezza hardware (HSM) e implementa correttamente il PKCS #11 richiesto. APIs La HSM e la libreria condivisa devono essere in grado di accedere a un CSR, eseguire operazioni TLS e fornire le lunghezze di chiave e l'algoritmo chiave pubblica corretti.

Il valore valido è o. yes no

ml

Verifica che il dispositivo soddisfa tutte le dipendenze tecniche richieste per eseguire localmente l'inferenza di ML.

Il valore valido può essere qualsiasi combinazione di mxnettensorflow,dlr, e no (ad esempiomxnet,mxnet,tensorflow,mxnet,tensorflow,dlr, ono).

mlLambdaContainerizationMode

Verifica che il dispositivo soddisfi tutte le dipendenze tecniche richieste per eseguire l'inferenza ML in modalità contenitore su un dispositivo Greengrass.

Il valore valido ècontainer, o. process both

processor

Verifica che il dispositivo soddisfi tutti i requisiti hardware per il tipo di processore specificato.

Il valore valido è cpu ogpu.

Nota

Se non desideri utilizzare la funzionalitàcontainer,docker, streamManagerhsi, o, puoi impostare la ml funzione corrispondente value ano.

Docker supporta solo la qualificazione delle funzionalità per streamManagement e. ml

machineLearning

Facoltativo. Informazioni di configurazione per i test di qualificazione ML. Per ulteriori informazioni, consulta Configurare device.json per la qualificazione ML.

hsm

Facoltativo. Informazioni di configurazione per i test con un AWS IoT Greengrass Hardware Security Module (HSM). Altrimenti, la proprietà hsm dovrebbe essere omessa. Per ulteriori informazioni, consulta Integrazione della sicurezza hardware.

Questa proprietà si applica solo se connectivity.protocol è impostata su ssh.

hsm.p11Provider

Il percorso assoluto della libreria libdl-loadable dell'implementazione PKCS#11.

hsm.slotLabel

L'etichetta dello slot utilizzata per identificare il modulo hardware.

hsm.slotUserPin

Il PIN utente utilizzato per autenticare il AWS IoT Greengrass core del modulo.

hsm.privateKeyLabel

L'etichetta utilizzata per identificare la chiave nel modulo hardware.

hsm.openSSLEngine

Il percorso assoluto del file .so del motore OpenSSL che consente di abilitare il supporto PKCS#11 su OpenSSL. Utilizzato dall'agente di aggiornamento AWS IoT Greengrass OTA.

devices.id

Un identificativo univoco definito dall'utente del dispositivo sottoposto a test.

connectivity.protocol

Il protocollo di comunicazione utilizzato per comunicare con questo dispositivo. Attualmente, gli unici valori supportati sono ssh per i dispositivi fisici e docker per i contenitori Docker.

connectivity.ip

L'indirizzo IP del dispositivo sottoposto a test.

Questa proprietà si applica solo se connectivity.protocol è impostata su ssh.

connectivity.containerId

L'ID contenitore o il nome del contenitore Docker in fase di test.

Questa proprietà si applica solo se connectivity.protocol è impostata su docker.

connectivity.auth

Informazioni di autenticazione per la connessione.

Questa proprietà si applica solo se connectivity.protocol è impostata su ssh.

connectivity.auth.method

Il metodo di autorizzazione utilizzato per accedere a un dispositivo con un determinato protocollo di connettività.

I valori supportati sono:

  • pki

  • password

connectivity.auth.credentials

Le credenziali utilizzate per l'autenticazione.

connectivity.auth.credentials.password

La password utilizzata per l'accesso al dispositivo da testare.

Questo valore si applica solo se connectivity.auth.method è impostato su password.

connectivity.auth.credentials.privKeyPath

Il percorso completo alla chiave privata utilizzata per accedere al dispositivo sottoposto a test.

Questo valore si applica solo se connectivity.auth.method è impostato su pki.

connectivity.auth.credentials.user

Il nome utente per l'accesso al dispositivo sottoposto a test.

connectivity.auth.credentials.privKeyPath

Il percorso completo della chiave privata utilizzata per accedere al dispositivo sottoposto a test.

connectivity.port

Facoltativo. Il numero di porta da utilizzare per le connessioni SSH.

Il valore predefinito è 22.

Questa proprietà si applica solo se connectivity.protocol è impostata sussh.

greengrassLocation

La posizione del software AWS IoT Greengrass Core sui tuoi dispositivi.

Per i dispositivi fisici, questo valore viene utilizzato solo quando si utilizza un'installazione esistente di AWS IoT Greengrass. Utilizza questo attributo per comunicare a IDT di utilizzare la versione del software AWS IoT Greengrass Core installata sui dispositivi.

Quando esegui test in un contenitore Docker dall'immagine Docker o dal Dockerfile fornito da AWS IoT Greengrass, imposta questo valore su. /greengrass

kernelConfigLocation

Facoltativo. Il percorso del file di configurazione del kernel. AWS IoT Device Tester utilizza questo file per verificare se i dispositivi hanno le funzionalità del kernel richieste abilitate. Se non specificato, IDT utilizza i seguenti percorsi per cercare il file di configurazione del kernel: and. /proc/config.gz /boot/config-<kernel-version> AWS IoT Device Tester utilizza il primo percorso che trova.

Configurare device.json per la qualificazione ML

In questa sezione vengono descritte le proprietà facoltative nel file di configurazione del dispositivo che si applicano alla qualificazione ML. Se si prevede di eseguire test per la qualificazione ML, è necessario definire le proprietà applicabili al caso d'uso.

È possibile utilizzare il modello device-ml.json per definire le impostazioni di configurazione per il dispositivo. Questo modello contiene le proprietà ML facoltative. È inoltre possibile utilizzare device.json e aggiungere le proprietà di qualificazione ML. Questi file si trovano in <device-tester-extract-location>/configs e comprendono le proprietà di qualificazione ML. Se si utilizza device-ml.json, è necessario rinominare il file in device.json prima di eseguire test IDT.

Per informazioni sulle proprietà di configurazione del dispositivo che non si applicano alla qualificazione ML, vedere Configura dispositivo.json.

 

ml nell'array features

I framework ML supportati dalla tua scheda. Questa proprietà richiede IDT v3.1.0 o versione successiva.

  • Se la scheda supporta un solo framework, specificare il framework. Per esempio:

    { "name": "ml", "value": "mxnet" }
  • Se la scheda supporta più framework, specificare i framework come elenco separato da virgole. Per esempio:

    { "name": "ml", "value": "mxnet,tensorflow" }
mlLambdaContainerizationMode nell'array features

La modalità di containerizzazione con cui si desidera eseguire il test. Questa proprietà richiede IDT v3.1.0 o versione successiva.

  • Scegli process di eseguire il codice di inferenza ML con una funzione Lambda non containerizzata. Questa opzione richiede la versione 1.10.x o successiva. AWS IoT Greengrass

  • Scegli container di eseguire il codice di inferenza ML con una funzione Lambda containerizzata.

  • Scegliere both per eseguire il codice di inferenza di ML con entrambe le modalità. Questa opzione richiede AWS IoT Greengrass la versione 1.10.x o successiva.

processor nell'array features

Indica l'acceleratore hardware supportato dalla scheda. Questa proprietà richiede IDT v3.1.0 o versione successiva.

  • Scegliere cpu se la tua scheda utilizza una CPU come processore.

  • Scegliere gpu se la scheda utilizza una GPU come processore.

machineLearning

Facoltativo. Informazioni di configurazione per i test di qualificazione ML. Questa proprietà richiede IDT v3.1.0 o versione successiva.

dlrModelPath

Necessario per utilizzare il framework dlr. Il percorso assoluto della directory del modello compilato DLR, che deve essere denominato resnet18. Per ulteriori informazioni, consulta Compilare il modello DLR.

Nota

Di seguito è riportato un esempio di percorso su macOS: /Users/<user>/Downloads/resnet18.

environmentVariables

Un array di coppie chiave-valore che possono passare dinamicamente le impostazioni ai test di inferenza di ML. Facoltativo per i dispositivi CPU. È possibile utilizzare questa sezione per aggiungere variabili di ambiente specifiche del framework richieste dal tipo di dispositivo. Per informazioni su questi requisiti, vedere il sito Web ufficiale del framework o del dispositivo. Ad esempio, per eseguire test di MXNet inferenza su alcuni dispositivi, potrebbero essere necessarie le seguenti variabili di ambiente.

"environmentVariables": [ ... { "key": "PYTHONPATH", "value": "$MXNET_HOME/python:$PYTHONPATH" }, { "key": "MXNET_HOME", "value": "$HOME/mxnet/" }, ... ]
Nota

Il value campo potrebbe variare in base all' MXNet installazione.

Se stai testando funzioni Lambda eseguite con containerizzazione su dispositivi GPU, aggiungi le variabili di ambiente per la libreria GPU. Ciò consente alla GPU di eseguire calcoli. Per utilizzare librerie GPU diverse, vedere la documentazione ufficiale della libreria o del dispositivo.

Nota

Configurare le seguenti chiavi se la funzione mlLambdaContainerizationMode è impostata su container o both.

"environmentVariables": [ { "key": "PATH", "value": "<path/to/software/bin>:$PATH" }, { "key": "LD_LIBRARY_PATH", "value": "<path/to/ld/lib>" }, ... ]
deviceResources

Richiesto dai dispositivi GPU. Contiene risorse locali a cui è possibile accedere tramite le funzioni Lambda. Utilizzare questa sezione per aggiungere risorse locali per dispositivi e volumi.

  • Specificare "type": "device" per le risorse del dispositivo. Per i dispositivi GPU, le risorse del dispositivo devono essere file di dispositivo relativi alla GPU sotto /dev.

    Nota

    La directory /dev/shm è un'eccezione. Può essere configurato esclusivamente come risorsa di volume.

  • Specificare "type": "volume" per le risorse di volume.

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.