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à.
Avvio rapido: configurazione dispositivo Greengrass
La configurazione del dispositivo Greengrass è uno script che configura il dispositivo principale in pochi minuti, in modo da poterlo iniziare a utilizzare. AWS IoT Greengrass Usa questo script per:
Configura il dispositivo e installa il software AWS IoT Greengrass Core.
Configura le tue risorse basate sul cloud.
Implementa facoltativamente un gruppo Greengrass con una funzione Hello World Lambda che invia messaggi MQTT dal core. AWS IoT AWS IoT Greengrass Questo imposta l'ambiente Greengrass mostrato nel diagramma seguente.
Requisiti
La configurazione del dispositivo Greengrass ha i seguenti requisiti:
-
Il dispositivo principale deve utilizzare una piattaforma supportata. Il dispositivo deve avere installato un gestore di pacchetti appropriato:
apt
,yum
, oopkg
. -
L'utente Linux che esegue lo script deve disporre delle autorizzazioni per eseguire come
sudo
. -
È necessario fornire le proprie credenziali. Account AWS Per ulteriori informazioni, consulta Fornisci le credenziali Account AWS.
Nota
La configurazione del dispositivo Greengrass installa l'ultima versione del software AWS IoT Greengrass Core sul dispositivo. Installando il software AWS IoT Greengrass Core, l'utente accetta il contratto di licenza del software Greengrass Core
.
Esecuzione della configurazione del dispositivo Greengrass
Puoi eseguire la configurazione del dispositivo Greengrass in pochi passaggi. Dopo aver fornito le Account AWS credenziali, lo script esegue il provisioning del dispositivo principale Greengrass e distribuisce un gruppo Greengrass in pochi minuti. Esegui i seguenti comandi in una finestra terminale sul dispositivo di destinazione.
Nota
Questi passaggi ti illustrano come eseguire lo script in modalità interattiva, che richiede di immettere o accettare ogni valore di input. Per informazioni su come eseguire lo script in modo invisibile, consulta Esecuzione della configurazione del dispositivo Greengrass in modalità silenziosa.
-
Fornisci le tue credenziali. In questa procedura, si suppone che vengano fornite credenziali di sicurezza temporanee come variabili di ambiente.
export AWS_ACCESS_KEY_ID=
AKIAIOSFODNN7EXAMPLE
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
export AWS_SESSION_TOKEN=AQoDYXdzEJr1K...o5OytwEXAMPLE=
Nota
Se stai eseguendo la configurazione del dispositivo Greengrass su una piattaforma Raspbian o su una OpenWrt piattaforma, crea una copia di questi comandi. Devi fornirli nuovamente dopo il riavvio del dispositivo.
-
Scarica e avvia lo script. Puoi utilizzare
wget
ocurl
scaricare lo script.-
wget
:wget -q -O ./gg-device-setup-latest.sh https://d1onfpft10uf5o.cloudfront.net/greengrass-device-setup/downloads/gg-device-setup-latest.sh && chmod +x ./gg-device-setup-latest.sh && sudo -E ./gg-device-setup-latest.sh bootstrap-greengrass-interactive
-
curl
:curl https://d1onfpft10uf5o.cloudfront.net/greengrass-device-setup/downloads/gg-device-setup-latest.sh > gg-device-setup-latest.sh && chmod +x ./gg-device-setup-latest.sh && sudo -E ./gg-device-setup-latest.sh bootstrap-greengrass-interactive
-
Procedi attraverso i prompt dei comandi per i valori di input. Puoi premere il tasto Enter (Invio) per utilizzare il valore predefinito o digitare un valore personalizzato e quindi premere Enter (Invio).
Lo script scrive messaggi di stato sul terminale che sono simili ai seguenti.
-
Se il tuo dispositivo principale esegue Raspbian oppure OpenWrt, riavvia il dispositivo quando richiesto, fornisci le tue credenziali e quindi riavvia lo script.
-
Quando viene richiesto di riavviare il dispositivo, esegui uno dei seguenti comandi.
-
Per le piattaforme Raspbian:
sudo reboot
-
Per le piattaforme: OpenWrt
reboot
-
Dopo il riavvio avvio del dispositivo, apri il terminale e fornisci le credenziali come variabili di ambiente.
export AWS_ACCESS_KEY_ID=
AKIAIOSFODNN7EXAMPLE
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
export AWS_SESSION_TOKEN=AQoDYXdzEJr1K...o5OytwEXAMPLE=
-
Riavvia lo script.
sudo -E ./gg-device-setup-latest.sh bootstrap-greengrass-interactive
-
Quando viene chiesto se utilizzare i valori di input della sessione precedente o avviare una nuova installazione, immetti
yes
per riutilizzare i valori di input.Nota
Sulle piattaforme che richiedono un riavvio, tutti i valori di input (ad eccezione delle credenziali) della sessione precedente vengono temporaneamente memorizzati nel file
GreengrassDeviceSetup.config.info
.
Al termine dell'installazione, il terminale visualizza un messaggio di stato di successo simile al seguente.
-
-
Esamina il nuovo gruppo Greengrass che lo script configura utilizzando i valori di input forniti.
-
Accedi a AWS Management Console
sul tuo computer e apri la AWS IoT console. Nota
Assicurati che quello Regione AWS selezionato nella console sia lo stesso che hai usato per configurare l'ambiente Greengrass. Per impostazione predefinita, la regione è Stati Uniti occidentali (Oregon).
-
Nel riquadro di navigazione, espandi i dispositivi Greengrass, quindi scegli Gruppi (V1) per individuare il gruppo appena creato.
-
-
Se hai incluso la funzione Hello World Lambda, la configurazione del dispositivo Greengrass distribuisce il gruppo Greengrass sul tuo dispositivo principale. Per testare la funzione Lambda o per informazioni su come rimuovere la funzione Lambda dal gruppo, continua con il Modulo 3-1 del tutorial Verifica che la funzione Lambda sia in esecuzione sul dispositivo core Getting Started.
Nota
Assicurati che quello Regione AWS selezionato nella console sia lo stesso che hai usato per configurare l'ambiente Greengrass. Per impostazione predefinita, la regione è Stati Uniti occidentali (Oregon).
Se non hai incluso la funzione Hello World Lambda, puoi creare la tua funzione Lambda o provare altre funzionalità di Greengrass. Ad esempio, puoi aggiungere il connettore di distribuzione dell'applicazione Docker al gruppo e utilizzarlo per distribuire contenitori Docker nel dispositivo principale.
Risoluzione dei problemi
È possibile utilizzare le seguenti informazioni per risolvere i problemi relativi alla configurazione del dispositivo. AWS IoT Greengrass
Errore: Python (python3.7) non trovato. Tentativo di installazione in corso...
Soluzione: potresti visualizzare questo errore quando lavori con un' EC2 istanza Amazon. Questo errore si verifica quando Python non è installato nella /usr/bin/python3.7
cartella. Per risolvere questo errore, sposta Python nella directory corretta dopo averlo installato:
sudo ln -s /usr/local/bin/python3.7 /usr/bin/python3.7
Risoluzione di problemi aggiuntivi
Per risolvere altri problemi relativi alla configurazione del AWS IoT Greengrass dispositivo, puoi cercare le informazioni di debug nei file di registro:
Per problemi con la configurazione del dispositivo Greengrass, controlla il file
/tmp/greengrass-device-setup-bootstrap-
.epoch-timestamp
.logPer problemi con il gruppo Greengrass o l'impostazione dell'ambiente principale, controlla il file
GreengrassDeviceSetup-
nella stessa directorydate
-time
.loggg-device-setup-latest.sh
o nella posizione specificata.
Per ulteriori informazioni sulla risoluzione dei problemi, consulta Risoluzione dei problemi relativi a AWS IoT Greengrass o controlla il AWS IoT Greengrass tag
Opzioni di configurazione del dispositivo Greengrass
È possibile configurare la configurazione del dispositivo Greengrass per accedere alle AWS risorse e configurare l'ambiente Greengrass.
Fornisci le credenziali Account AWS
La configurazione del dispositivo Greengrass utilizza Account AWS le tue credenziali per accedere alle tue risorse. AWS Supporta credenziali a lungo termine per un utente IAM o credenziali di sicurezza temporanee da un ruolo IAM.
Per prima cosa, devi ottenere le credenziali
Per utilizzare credenziali a lungo termine, fornisci l'ID della chiave di accesso e la chiave di accesso segreta per il tuo utente IAM. Per informazioni sulla creazione di chiavi di accesso per credenziali a lungo termine, consulta Managing access keys for IAM users nella IAM User Guide.
Per utilizzare credenziali di sicurezza temporanee (consigliato), fornisci l'ID della chiave di accesso, la chiave di accesso segreta e il token di sessione relativi a un ruolo IAM presunto. Per informazioni sull'estrazione di credenziali di sicurezza temporanee dal AWS STS
assume-role
comando, consulta Using temporary security credenziali with the AWS CLI nella IAM User Guide.
Nota
Ai fini di questo tutorial, si presuppone che l'utente o il ruolo IAM disponga dei permessi di accesso di amministratore.
Quindi, dovrai fornire tali credenziali per la configurazione del dispositivo Greengrass in uno dei due modi seguenti:
Come variabile d’ambiente. Imposta le variabili d’ambiente
AWS_ACCESS_KEY_ID
,AWS_SECRET_ACCESS_KEY
, eAWS_SESSION_TOKEN
(se necessario) prima di avviare lo script, come illustrato al passaggio 1 di Esecuzione della configurazione del dispositivo Greengrass.Come valori di input. Immetti l'ID della chiave di accesso, la chiave di accesso segreta e i valori del token di sessione (se necessario) direttamente nel terminale dopo l'avvio dello script.
La configurazione del dispositivo Greengrass non salva o memorizza le credenziali.
Fornire i valori di input
In modalità interattiva, la configurazione del dispositivo Greengrass richiede i valori di input. Puoi premere il tasto Enter (Invio) per utilizzare il valore predefinito o digitare un valore personalizzato e quindi premere Enter (Invio). In modalità silenziosa, fornisci i valori di input dopo l'avvio dello script.
- AWS ID chiave di accesso
-
L'ID della chiave di accesso dalle credenziali di sicurezza a lungo termine o temporanee. Specifica questa opzione come valore di input solo se non fornisci le credenziali come variabili di ambiente. Per ulteriori informazioni, consulta Fornisci le credenziali Account AWS.
Nome di opzione per la modalità silenziosa:
--aws-access-key-id
- AWS chiave di accesso segreta
-
Chiave di accesso segreta dalle credenziali di sicurezza a lungo termine o temporanee. Specifica questa opzione come valore di input solo se non fornisci le credenziali come variabili di ambiente. Per ulteriori informazioni, consulta Fornisci le credenziali Account AWS.
Nome di opzione per la modalità silenziosa:
--aws-secret-access-key
- AWS token di sessione
-
Il token di sessione dalle credenziali di sicurezza temporanee. Specifica questa opzione come valore di input solo se non fornisci le credenziali come variabili di ambiente. Per ulteriori informazioni, consulta Fornisci le credenziali Account AWS.
Nome di opzione per la modalità silenziosa:
--aws-session-token
- Regione AWS
-
Regione AWS Dove vuoi creare il gruppo Greengrass. Per l'elenco dei servizi Regione AWS supportati, vedere AWS IoT Greengrassin. Riferimenti generali di Amazon Web Services
Valore predefinito:
us-west-2
Nome di opzione per la modalità silenziosa:
--region
- Group name (Nome gruppo)
-
Il nome del gruppo Greengrass.
Valore predefinito:
GreengrassDeviceSetup_Group_
guid
Nome di opzione per la modalità silenziosa:
--group-name
- Nome principale
-
Il nome per il core di Greengrass. Il core è un AWS IoT dispositivo (cosa) che esegue il software AWS IoT Greengrass Core. Il core viene aggiunto al AWS IoT registro e al gruppo Greengrass. Se fornite un nome, questo deve essere univoco alla lettera Account AWS e Regione AWS.
Valore predefinito:
GreengrassDeviceSetup_Core_
guid
Nome di opzione per la modalità silenziosa:
--core-name
- AWS IoT Greengrass Percorso di installazione del software principale
-
La posizione nel file system del dispositivo in cui si desidera installare il software AWS IoT Greengrass Core.
Valore predefinito:
/
Nome di opzione per la modalità silenziosa:
--ggc-root-path
- Funzione Hello World Lambda
-
Indica se includere una funzione Hello World Lambda nel gruppo Greengrass. La funzione pubblica un messaggio MQTT sull'argomento
hello/world
ogni cinque secondi.Lo script crea e pubblica questa funzione Lambda definita dall'utente AWS Lambda e la aggiunge al gruppo Greengrass. Lo script crea anche una sottoscrizione nel gruppo che consente alla funzione di inviare messaggi MQTT a AWS IoT.
Nota
Questa è una funzione Lambda di Python 3.7. Se Python 3.7 non è installato sul dispositivo e lo script non è in grado di installarlo, lo script stampa un messaggio di errore nel terminale. Per includere la funzione Lambda nel gruppo, è necessario installare Python 3.7 manualmente e riavviare lo script. Per creare il gruppo Greengrass senza la funzione Lambda, riavviate lo script e immettete
no
quando richiesto di includere la funzione.Valore predefinito:
no
Nome di opzione per la modalità silenziosa:
--hello-world-lambda
- Questa opzione non accetta alcun valore. Includere il valore nel comando se si desidera creare la funzione. - Tempo di distribuzione
-
Il numero di secondi prima che l'installazione del dispositivo Greengrass interrompa il controllo dello stato della distribuzione del gruppo Greengrass. Questo valore viene utilizzato solo quando il gruppo include la funzione Lambda Hello World. In caso contrario, il gruppo non viene distribuito.
Il tempo di distribuzione dipende dalla velocità della rete. Per velocità di rete lente, è possibile aumentare questo valore.
Valore predefinito:
180
Nome di opzione per la modalità silenziosa:
--deployment-timeout
- Log Path (Percorso log)
-
Il percorso del file di registro che contiene informazioni sulle operazioni di installazione di base e gruppo Greengrass. Utilizza questo registro per risolvere i problemi relativi alla distribuzione e ad altri problemi relativi al gruppo Greengrass e all'installazione principale.
Valore predefinito:
./
Nome di opzione per la modalità silenziosa:
--log-path
- Livello di dettaglio
-
Indica se stampare informazioni di registro dettagliate nel terminale durante l'esecuzione dello script. Puoi utilizzare queste informazioni per risolvere i problemi di configurazione del dispositivo.
Valore predefinito:
no
Nome di opzione per la modalità silenziosa:
--verbose
- Questa opzione non accetta alcun valore. Includi tale valore nel comando se si desidera stampare informazioni dettagliate di registro.
Esecuzione della configurazione del dispositivo Greengrass in modalità silenziosa
Puoi eseguire l'impostazione del dispositivo Greengrass in modalità silenziosa in modo che lo script non richieda alcun valore. Per eseguire l’operazione in modalità silenziosa, specifica la modalità bootstrap-greengrass
e i valori di input dopo l'avvio dello script. Puoi omettere i valori di input se desideri utilizzare i valori predefiniti.
La procedura dipende dal fatto che vengano fornite le Account AWS credenziali come variabili di ambiente prima di avviare lo script o come valori di input dopo l'avvio dello script.
-
Fornisci le credenziali come variabili di ambiente. Nell'esempio seguente vengono esportate credenziali temporanee, che includono il token di sessione.
export AWS_ACCESS_KEY_ID=
AKIAIOSFODNN7EXAMPLE
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
export AWS_SESSION_TOKEN=AQoDYXdzEJr1K...o5OytwEXAMPLE=
Nota
Se stai eseguendo la configurazione del dispositivo Greengrass su una piattaforma Raspbian o su una OpenWrt piattaforma, crea una copia di questi comandi. Devi fornirli nuovamente dopo il riavvio del dispositivo.
-
Scarica e avvia lo script. Fornisci i valori di input in base alle tue esigenze. Per esempio:
-
Per utilizzare tutti i valori predefiniti:
wget -q -O ./gg-device-setup-latest.sh https://d1onfpft10uf5o.cloudfront.net/greengrass-device-setup/downloads/gg-device-setup-latest.sh && chmod +x ./gg-device-setup-latest.sh && sudo -E ./gg-device-setup-latest.sh bootstrap-greengrass
-
Per specificare valori personalizzati:
wget -q -O ./gg-device-setup-latest.sh https://d1onfpft10uf5o.cloudfront.net/greengrass-device-setup/downloads/gg-device-setup-latest.sh && chmod +x ./gg-device-setup-latest.sh && sudo -E ./gg-device-setup-latest.sh bootstrap-greengrass --region us-east-1 --group-name Custom_Group_Name --core-name Custom_Core_Name --ggc-root-path /custom/ggc/root/path --deployment-timeout 300 --log-path /customized/log/path --hello-world-lambda --verbose
Nota
Per utilizzare
curl
per scaricare lo script, sostituisciwget -q -O
concurl
nel comando. -
-
Se il tuo dispositivo principale esegue Raspbian oppure OpenWrt, riavvia il dispositivo quando richiesto, fornisci le tue credenziali e quindi riavvia lo script.
-
Quando viene richiesto di riavviare il dispositivo, esegui uno dei seguenti comandi.
-
Per le piattaforme Raspbian:
sudo reboot
-
Per le piattaforme: OpenWrt
reboot
-
Dopo il riavvio avvio del dispositivo, apri il terminale e fornisci le credenziali come variabili di ambiente.
export AWS_ACCESS_KEY_ID=
AKIAIOSFODNN7EXAMPLE
export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
export AWS_SESSION_TOKEN=AQoDYXdzEJr1K...o5OytwEXAMPLE=
-
Riavvia lo script.
sudo -E ./gg-device-setup-latest.sh bootstrap-greengrass
-
Quando viene chiesto se utilizzare i valori di input della sessione precedente o avviare una nuova installazione, immetti
yes
per riutilizzare i valori di input.Nota
Sulle piattaforme che richiedono un riavvio, tutti i valori di input (ad eccezione delle credenziali) della sessione precedente vengono temporaneamente memorizzati nel file
GreengrassDeviceSetup.config.info
.
Al termine dell'installazione, il terminale visualizza un messaggio di stato di successo simile al seguente.
-
-
Se hai incluso la funzione Hello World Lambda, la configurazione del dispositivo Greengrass distribuisce il gruppo Greengrass sul tuo dispositivo principale. Per testare la funzione Lambda o per informazioni su come rimuovere la funzione Lambda dal gruppo, continua con il Modulo 3-1 del tutorial Verifica che la funzione Lambda sia in esecuzione sul dispositivo core Getting Started.
Nota
Assicurati che quello Regione AWS selezionato nella console sia lo stesso che hai usato per configurare l'ambiente Greengrass. Per impostazione predefinita, la regione è Stati Uniti occidentali (Oregon).
Se non hai incluso la funzione Hello World Lambda, puoi creare la tua funzione Lambda o provare altre funzionalità di Greengrass. Ad esempio, puoi aggiungere il connettore di distribuzione dell'applicazione Docker al gruppo e utilizzarlo per distribuire contenitori Docker nel dispositivo principale.
-
Scarica e avvia lo script. Fornisci le credenziali e gli altri valori di input che desideri specificare. Negli esempi seguenti viene illustrato come fornire credenziali temporanee, che includono il token di sessione.
-
Per utilizzare tutti i valori predefiniti:
wget -q -O ./gg-device-setup-latest.sh https://d1onfpft10uf5o.cloudfront.net/greengrass-device-setup/downloads/gg-device-setup-latest.sh && chmod +x ./gg-device-setup-latest.sh && sudo -E ./gg-device-setup-latest.sh bootstrap-greengrass --aws-access-key-id AKIAIOSFODNN7EXAMPLE --aws-secret-access-key wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY --aws-session-token AQoDYXdzEJr1K...o5OytwEXAMPLE=
-
Per specificare valori personalizzati:
wget -q -O ./gg-device-setup-latest.sh https://d1onfpft10uf5o.cloudfront.net/greengrass-device-setup/downloads/gg-device-setup-latest.sh && chmod +x ./gg-device-setup-latest.sh && sudo -E ./gg-device-setup-latest.sh bootstrap-greengrass --aws-access-key-id AKIAIOSFODNN7EXAMPLE --aws-secret-access-key wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY --aws-session-token AQoDYXdzEJr1K...o5OytwEXAMPLE= --region us-east-1 --group-name Custom_Group_Name --core-name Custom_Core_Name --ggc-root-path /custom/ggc/root/path --deployment-timeout 300 --log-path /customized/log/path --hello-world-lambda --verbose
Nota
Se stai eseguendo la configurazione del dispositivo Greengrass su una piattaforma Raspbian o su una OpenWrt piattaforma, crea una copia delle tue credenziali. Devi fornirli nuovamente dopo il riavvio del dispositivo.
Per utilizzare
curl
per scaricare lo script, sostituisciwget -q -O
concurl
nel comando. -
-
Se il tuo dispositivo principale esegue Raspbian oppure OpenWrt, riavvia il dispositivo quando richiesto, fornisci le tue credenziali e quindi riavvia lo script.
-
Quando viene richiesto di riavviare il dispositivo, esegui uno dei seguenti comandi.
-
Per le piattaforme Raspbian:
sudo reboot
-
Per le piattaforme: OpenWrt
reboot
-
Riavvia lo script. Devi includere le credenziali nel comando, ma non gli altri valori di input. Per esempio:
sudo -E ./gg-device-setup-latest.sh bootstrap-greengrass --aws-access-key-id AKIAIOSFODNN7EXAMPLE --aws-secret-access-key wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY --aws-session-token AQoDYXdzEJr1K...o5OytwEXAMPLE=
-
Quando viene chiesto se utilizzare i valori di input della sessione precedente o avviare una nuova installazione, immetti
yes
per riutilizzare i valori di input.Nota
Sulle piattaforme che richiedono un riavvio, tutti i valori di input (ad eccezione delle credenziali) della sessione precedente vengono temporaneamente memorizzati nel file
GreengrassDeviceSetup.config.info
.
Al termine dell'installazione, il terminale visualizza un messaggio di stato di successo simile al seguente.
-
-
Se hai incluso la funzione Hello World Lambda, la configurazione del dispositivo Greengrass distribuisce il gruppo Greengrass sul tuo dispositivo principale. Per testare la funzione Lambda o per informazioni su come rimuovere la funzione Lambda dal gruppo, continua con il Modulo 3-1 del tutorial Verifica che la funzione Lambda sia in esecuzione sul dispositivo core Getting Started.
Nota
Assicurati che quello Regione AWS selezionato nella console sia lo stesso che hai usato per configurare l'ambiente Greengrass. Per impostazione predefinita, la regione è Stati Uniti occidentali (Oregon).
Se non hai incluso la funzione Hello World Lambda, puoi creare la tua funzione Lambda o provare altre funzionalità di Greengrass. Ad esempio, puoi aggiungere il connettore di distribuzione dell'applicazione Docker al gruppo e utilizzarlo per distribuire contenitori Docker nel dispositivo principale.