

Avviso di fine del supporto: il 7 ottobre 2026, AWS il supporto per. AWS IoT Greengrass Version 1 Dopo il 7 ottobre 2026, non potrai più accedere alle risorse. AWS IoT Greengrass V1 Per ulteriori informazioni, visita [Migrate](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html) from. AWS IoT Greengrass Version 1

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

# Modulo 1: impostazione dell'ambiente per Greengrass
<a name="module1"></a>

Questo modulo mostra come preparare un out-of-the-box Raspberry Pi, un' EC2 istanza Amazon o un altro dispositivo per essere utilizzato AWS IoT Greengrass come dispositivo AWS IoT Greengrass principale.

**Suggerimento**  
Oppure, per utilizzare uno script che configuri automaticamente il dispositivo core, consulta [Avvio rapido: configurazione dispositivo Greengrass](quick-start.md).

Il completamento di questo modulo dovrebbe richiedere meno di 30 minuti.

Prima di iniziare, leggi i [requisiti](gg-gs.md#gg-requirements) per questo tutorial. Segui quindi le istruzioni di installazione in uno dei seguenti argomenti. Scegli solo l'argomento che si applica al tipo di dispositivo principale.

**Topics**
+ [Impostazione di un Raspberry Pi](setup-filter.rpi.md)
+ [Configurazione di un' EC2 istanza Amazon](setup-filter.ec2.md)
+ [Configurazione di altri dispositivi](setup-filter.other.md)

**Nota**  
Per informazioni su come utilizzare l' AWS IoT Greengrass esecuzione in un contenitore Docker predefinito, consulta. [Esecuzione AWS IoT Greengrass in un contenitore Docker](run-gg-in-docker-container.md)

# Impostazione di un Raspberry Pi
<a name="setup-filter.rpi"></a>

Segui i passaggi descritti in questo argomento per configurare un Raspberry Pi da utilizzare come AWS IoT Greengrass core.

**Suggerimento**  
<a name="ggc-install-options"></a>AWS IoT Greengrass fornisce anche altre opzioni per l'installazione del software AWS IoT Greengrass Core. Ad esempio, è possibile utilizzare la [configurazione del dispositivo Greengrass](quick-start.md) per configurare l'ambiente e installare l'ultima versione del software AWS IoT Greengrass Core. Oppure, sulle piattaforme Debian supportate, è possibile utilizzare il [gestore di pacchetti APT](install-ggc.md#ggc-package-manager) per installare o aggiornare il AWS IoT Greengrass software Core. Per ulteriori informazioni, consulta [Installare il software AWS IoT Greengrass Core](install-ggc.md).

Se stai impostando un Raspberry Pi per la prima volta, è necessario seguire tutti questi passaggi. In caso contrario, passa alla [fase 9](#add-ggc-user-ggc-group). Tuttavia, ti consigliamo di reimpostare il tuo Raspberry Pi con il sistema operativo come raccomandato nel passaggio 2.

 

1. Scaricate e installate un formattatore di schede SD come [SD Memory](https://www.sdcard.org/downloads/formatter/) Card Formatter. Inserisci la scheda SD nel computer. Avvia il programma e scegli l'unità in cui è inserita la scheda SD. È possibile formattare rapidamente la scheda SD.

1. Scarica il sistema operativo [Raspbian Buster](https://downloads.raspberrypi.org/raspbian/images/raspbian-2020-02-14/) come file `zip`.

1. Utilizzando uno strumento di scrittura su scheda SD (ad esempio [Etcher](https://etcher.io/)), segui le istruzioni per trasferire il file `zip` scaricato nella scheda SD. Poiché l'immagine del sistema operativo è di grandi dimensioni, l'operazione potrebbe richiedere alcuni minuti. Espelli la scheda SD dal computer e inserisci la scheda MicroSD nel Raspberry Pi.

1. Per il primo avvio, ti consigliamo di connettere il Raspberry Pi a un monitor (tramite HDMI), una tastiera e un mouse. Quindi, collega il Pi a una sorgente di alimentazione micro USB e il sistema operativo Raspbian dovrebbe avviarsi. 

1. È possibile configurare il layout della tastiera del Pi prima di continuare. Per farlo, scegli l'icona Raspberry in alto a destra, scegli **Preferences (Preferenze)**, quindi **Mouse and Keyboard Settings (Impostazioni mouse e tastiera)**. Quindi, sulla scheda **Keyboard (Tastiera)** scegli, **Keyboard Layout (Layout tastiera)** e scegli una variante adatta di tastiera.

1. Quindi, [collega il Raspberry Pi a Internet tramite una rete Wi-Fi](https://www.raspberrypi.org/documentation/configuration/wireless/desktop.md) o un cavo Ethernet.
**Nota**  
Collega il Raspberry Pi alla *stessa* rete a cui è connesso il computer e accertati che sia il computer che il Raspberry Pi abbiano accesso a Internet prima di continuare. Se ti trovi in un ambiente di lavoro o dietro un firewall, potrebbe essere necessario collegare il Pi e il computer alla rete guest per avere entrambi i dispositivi sulla stessa rete. Questo approccio, tuttavia, potrebbe scollegare il computer dalle risorse di rete locali, ad esempio l'Intranet. Una soluzione potrebbe essere quella di collegare il Pi alla rete Wi-Fi guest e il computer alla rete Wi-Fi guest *e* alla rete locale tramite un cavo Ethernet. Con questa configurazione dovresti essere in grado di connetterti al Raspberry Pi tramite la rete Wi-Fi guest e alle risorse di rete locali tramite il cavo Ethernet.

1. È necessario configurare [SSH](https://en.wikipedia.org/wiki/Secure_Shell) sul Pi per connetterti in remoto. Apri una [finestra del terminale](https://www.raspberrypi.org/documentation/usage/terminal/) sul Raspberry Pi ed esegui il comando seguente:

   ```
   sudo raspi-config
   ```

   Verrà visualizzato un codice analogo al seguente:  
![\[Screenshot dello strumento di configurazione del software Raspberry Pi (raspi-config).\]](http://docs.aws.amazon.com/it_it/greengrass/v1/developerguide/images/gg-get-started-001.png)

   Scorri in basso e scegli **Interfacing Options (Opzioni di interfaccia)**, quindi scegli **P2 SSH**. Quando viene richiesto, scegliere **Yes (Sì)**. (Utilizza la chiave Tab seguita da Enter). L'SSH deve essere abilitata. Scegli **OK**. Usa il tasto Tab per scegliere **Finish (Fine)** e quindi premi Enter. Se il dispositivo Raspberry Pi non si riavvia automaticamente, esegui il comando seguente:

   ```
   sudo reboot
   ```

1. Esegui il comando seguente nel terminale del Raspberry Pi:

   ```
   hostname -I
   ```

   Questo restituisce l'indirizzo IP del Raspberry Pi.
**Nota**  
Successivamente, se ricevi un messaggio relativo all'impronta della chiave ECDSA (`Are you sure you want to continue connecting (yes/no)?`), immetti `yes`. La password predefinita per il Raspberry Pi è **raspberry**.

   Se utilizzi macOS, apri una finestra del terminale e digita:

   ```
   ssh pi@IP-address
   ```

   *IP-address*è l'indirizzo IP del tuo Raspberry Pi che hai ottenuto utilizzando il comando. `hostname -I`

   Se stai usando Windows, è necessario installare e configurare [PuTTY](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html). Apri **Connection (Connessione)**, **Data (Dati)** e accertati che sia selezionato **Prompt**:   
![\[Finestra di PuTTY con "Prompt" selezionato.\]](http://docs.aws.amazon.com/it_it/greengrass/v1/developerguide/images/gg-get-started-001.4.png)

   Quindi, scegli **Session (Sessione)**, immetti l'indirizzo IP del Raspberry Pi e scegli **Open (Apri)** utilizzando le impostazioni predefinite.   
![\[Finestra di PuTTY con l'indirizzo IP nel campo "Host Name (or IP address)".\]](http://docs.aws.amazon.com/it_it/greengrass/v1/developerguide/images/gg-get-started-001.5.png)

   Se viene visualizzato il messaggio " PuTTY security alert", scegli **Yes (Sì)**.

   I valori predefiniti di login e password di Raspberry Pi sono rispettivamente **pi** e **raspberry**.  
![\[Finestra del terminale iniziale di PuTTY.\]](http://docs.aws.amazon.com/it_it/greengrass/v1/developerguide/images/gg-get-started-001.6.png)
**Nota**  
Se il computer è connesso a una rete remota tramite VPN, questo può causare difficoltà di connessione dal computer al Raspberry Pi tramite SSH.

1. <a name="add-ggc-user-ggc-group"></a>Ora sei pronto per configurare il Raspberry Pi per. AWS IoT Greengrass In primo luogo, esegui i seguenti comandi da una finestra del terminale locale del Raspberry Pi o da una finestra del terminale SSH:
**Suggerimento**  
<a name="ggc-install-options"></a>AWS IoT Greengrass fornisce anche altre opzioni per l'installazione del software AWS IoT Greengrass Core. Ad esempio, è possibile utilizzare la [configurazione del dispositivo Greengrass](quick-start.md) per configurare l'ambiente e installare l'ultima versione del software AWS IoT Greengrass Core. Oppure, sulle piattaforme Debian supportate, è possibile utilizzare il [gestore di pacchetti APT](install-ggc.md#ggc-package-manager) per installare o aggiornare il AWS IoT Greengrass software Core. Per ulteriori informazioni, consulta [Installare il software AWS IoT Greengrass Core](install-ggc.md).

   ```
   sudo adduser --system ggc_user
   sudo addgroup --system ggc_group
   ```

1. Per migliorare la sicurezza sul dispositivo Pi, abilitare la protezione hardlink e softlink (symlink) sul sistema operativo all'avvio.

   1. Andare al file `98-rpi.conf`.

      ```
      cd /etc/sysctl.d
      ls
      ```
**Nota**  
Se non visualizzi il file `98-rpi.conf`, segui le istruzioni contenute nel file `README.sysctl`.

   1. Utilizza un editor di testo (ad esempio Leafpad, GNU nano o vi) per aggiungere le seguenti due righe alla fine del file. Potresti dover utilizzare il comando `sudo` per modificare come root (ad esempio `sudo nano 98-rpi.conf`).

      ```
      fs.protected_hardlinks = 1
      fs.protected_symlinks = 1
      ```

   1. Riavvia il dispositivo Pi.

      ```
      sudo reboot
      ```

      Dopo un minuto circa, connettiti al dispositivo Pi tramite SSH, quindi esegui il comando seguente per confermare la modifica:

      ```
      sudo sysctl -a 2> /dev/null | grep fs.protected
      ```

      Dovresti visualizzare `fs.protected_hardlinks = 1` e `fs.protected_symlinks = 1`.

1. <a name="stretch-step"></a> Modifica il file di avvio a riga di comando per abilitare e montare cgroups di memoria. Ciò consente di AWS IoT Greengrass impostare il limite di memoria per le funzioni Lambda. I Cgroup devono inoltre essere eseguiti AWS IoT Greengrass nella modalità di [containerizzazione](lambda-group-config.md#lambda-containerization-considerations) predefinita.

   1.  Passa alla directory `boot`. 

      ```
      cd /boot/
      ```

   1.  Aprire il file `cmdline.txt` con un editor di testo. Aggiungi quanto segue alla fine della linea esistente, non come una nuova riga. Potresti dover utilizzare il comando `sudo` per modificare come root (ad esempio `sudo nano cmdline.txt`).

      ```
      cgroup_enable=memory cgroup_memory=1
      ```

   1. Ora riavvia il dispositivo Pi.

      ```
      sudo reboot
      ```

   Il Raspberry Pi dovrebbe essere pronto per AWS IoT Greengrass.

1. <a name="install-java-8-runtime"></a>Facoltativo. Installare il runtime Java 8, richiesto dal [Gestore di flussi](stream-manager.md). Questo tutorial non utilizza Gestore di flussi, ma utilizza il flusso di lavoro **Creazione gruppo predefinito** che abilita Gestore di flussi per impostazione predefinita. Utilizzare i seguenti comandi per installare il runtime Java 8 sul dispositivo principale o disabilitare Gestore di flussi prima di distribuire il gruppo. Le istruzioni per disabilitare Gestore di flussi sono fornite nel Modulo 3.

   ```
   sudo apt install openjdk-8-jdk
   ```

1. [Per assicurarti di avere tutte le dipendenze necessarie, scarica ed esegui il controllo delle dipendenze Greengrass dal AWS IoT Greengrass repository Samples in poi.](https://github.com/aws-samples/aws-greengrass-samples) GitHub Questi comandi decomprimono ed eseguono lo script di controllo delle dipendenze nella directory. `Downloads`
**Nota**  
 Il controllo delle dipendenze potrebbe fallire se si utilizza la versione 5.4.51 del kernel Raspbian. Questa versione non monta correttamente i cgroup di memoria. Ciò potrebbe causare il fallimento delle funzioni Lambda eseguite in modalità contenitore.  
Per ulteriori informazioni sull'aggiornamento del kernel, consulta i [Cgroups non caricati dopo l'aggiornamento del kernel](https://www.raspberrypi.org/forums/viewtopic.php?t=280656) nei forum di Raspberry Pi. 

   ```
   cd /home/pi/Downloads
   mkdir greengrass-dependency-checker-GGCv1.11.x
   cd greengrass-dependency-checker-GGCv1.11.x
   wget https://github.com/aws-samples/aws-greengrass-samples/raw/master/greengrass-dependency-checker-GGCv1.11.x.zip
   unzip greengrass-dependency-checker-GGCv1.11.x.zip
   cd greengrass-dependency-checker-GGCv1.11.x
   sudo modprobe configs
   sudo ./check_ggc_dependencies | more
   ```

   Dove viene visualizzato `more`, premi il tasto Spacebar per visualizzare un'altra schermata di testo. 
**Importante**  
<a name="lambda-runtime-prereqs"></a>Questo tutorial richiede il runtime di Python 3.7 per eseguire le funzioni Lambda locali. Quando il gestore di flusso è abilitato, richiede anche il runtime Java 8. Se lo script `check_ggc_dependencies` produce avvisi su questi prerequisiti di runtime mancanti, assicurati di installarli prima di continuare. Puoi ignorare gli avvisi relativi ad altri prerequisiti di runtime facoltativi mancanti.

   Per informazioni sul comando **modprobe**, esegui **man modprobe** nel terminale. 

La configurazione del Raspberry Pi è completa. Continua su [Modulo 2: Installazione del software AWS IoT Greengrass Core](module2.md).

# Configurazione di un' EC2 istanza Amazon
<a name="setup-filter.ec2"></a>

Segui i passaggi descritti in questo argomento per configurare un' EC2 istanza Amazon da utilizzare come AWS IoT Greengrass core.

**Suggerimento**  
Oppure, per utilizzare uno script che configura il tuo ambiente e installa il software AWS IoT Greengrass Core per te, consulta[Avvio rapido: configurazione dispositivo Greengrass](quick-start.md).

 Sebbene sia possibile completare questo tutorial utilizzando un' EC2 istanza Amazon, idealmente AWS IoT Greengrass dovrebbe essere utilizzato con hardware fisico. Ti consigliamo di [configurare un Raspberry Pi](setup-filter.rpi.md) invece di utilizzare un' EC2 istanza Amazon quando possibile. Se si utilizza un Raspberry Pi, non è necessario seguire la procedura descritta in questo argomento. 

 

1. Accedi [Console di gestione AWS](https://console.aws.amazon.com/)e avvia un' EC2 istanza Amazon utilizzando un'AMI Amazon Linux. Per informazioni sulle EC2 istanze Amazon, consulta la [Amazon EC2 Getting Started Guide](https://docs.aws.amazon.com/AWSEC2/latest/GettingStartedGuide/).

1. Dopo l'esecuzione dell' EC2 istanza Amazon, abilita la porta 8883 per consentire le comunicazioni MQTT in entrata in modo che altri dispositivi possano connettersi al core. AWS IoT Greengrass 

   1. Nel pannello di navigazione della EC2 console Amazon, scegli **Gruppi di sicurezza**.  
![\[Riquadro di navigazione con i gruppi di sicurezza evidenziati.\]](http://docs.aws.amazon.com/it_it/greengrass/v1/developerguide/images/gg-get-started-002.6.1.png)

   1. Seleziona il gruppo di sicurezza per l'istanza appena avviata, quindi scegli la scheda **Regole in entrata**.

   1. Sceglere **Edit inbound rules (Modifica regole in entrata)**.

      Per abilitare la porta 8883, aggiungi una regola TCP personalizzata al gruppo di sicurezza. Per ulteriori informazioni, consulta [Aggiungere regole a un gruppo di sicurezza](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html#adding-security-group-rule) nella *Amazon EC2 User Guide*.

   1. Nella pagina **Modifica regole in entrata**, scegli **Aggiungi regola**, inserisci le seguenti impostazioni, quindi scegli **Salva**.
      + Per **Type (Tipo)** seleziona **Custom TCP Rule (Regola TCP personalizzata)**.
      + Per **Port range**, inserisci**8883**.
      + Per **Source (Origine)**, selezionare **Anywhere (Ovunque)**.
      + Per **Descrizione**, inserisci **MQTT Communications**.

       

1. Connect alla tua EC2 istanza Amazon.

   1. Nel riquadro di navigazione, scegli **Instances (Istanze)**, seleziona la tua istanza, quindi scegli **Connect (Connetti)**.

   1. Segui le istruzioni nella pagina **Connect To Your Instance (Connettiti alla tua istanza)** per connetterti all'istanza [ tramite SSH](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html) e il tuo file della chiave privata.

   È possibile utilizzare [PuTTY](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/putty.html) per Windows o Terminal per macOS. Per ulteriori informazioni, consulta [Connect to your Linux istance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstances.html) nella *Amazon EC2 User Guide*.

   Ora sei pronto per configurare la tua EC2 istanza Amazon per AWS IoT Greengrass.

1. Dopo esserti connesso alla tua EC2 istanza Amazon, crea gli `ggc_group` account `ggc_user` e:

   ```
   sudo adduser --system ggc_user
   sudo groupadd --system ggc_group
   ```
**Nota**  
Se il comando `adduser` non è disponibile nel sistema, utilizza il comando seguente.  

   ```
   sudo useradd --system ggc_user
   ```

1. Per migliorare la sicurezza, assicurati che le protezioni hardlink e softlink (symlink) siano abilitate sul sistema operativo dell'istanza Amazon EC2 all'avvio.
**Nota**  
 Le procedure di abilitazione hardlink e softlink possono variare a seconda del sistema operativo. Consultare la documentazione per la distribuzione. 

   1.  Eseguire il comando seguente per controllare se le protezioni hardlink e softlink sono abilitate: 

      ```
      sudo sysctl -a | grep fs.protected
      ```

       Se hardlink e softlink vengono impostati su `1`, le protezioni sono abilitate correttamente. Continuare con la fase 6. 
**Nota**  
I softlink sono rappresentati da `fs.protected_symlinks`.

   1. Se hardlink e softlink non sono impostati su `1`, abilitare queste protezioni. Navigare al file di configurazione del sistema. 

      ```
      cd /etc/sysctl.d
      ls
      ```

   1. Utilizza il tuo editor di testo preferito (ad esempio Leafpad, GNU nano o vi) per aggiungere le seguenti due righe alla fine del file di configurazione del sistema. Su Amazon Linux 1, questo è il file `00-defaults.conf`. Su Amazon Linux 2, questo è il file `99-amazon.conf`. Potrebbe essere necessario modificare le autorizzazioni (utilizzando il comando `chmod`) per scrivere sul file oppure utilizzare il comando `sudo` per modificare come root (ad esempio `sudo nano 00-defaults.conf`).

      ```
      fs.protected_hardlinks = 1
      fs.protected_symlinks = 1
      ```

   1. Riavvia l' EC2 istanza Amazon.

      ```
      sudo reboot
      ```

      Dopo pochi minuti, connettiti all'istanza tramite SSH, quindi esegui il comando seguente per confermare la modifica.

      ```
      sudo sysctl -a | grep fs.protected
      ```

      Dovresti vedere che hardlink e softlink sono impostati a 1.

1. Estrai ed esegui il seguente script per montare i [gruppi di controllo Linux](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/resource_management_guide/ch01) (cgroups). Ciò consente di AWS IoT Greengrass impostare il limite di memoria per le funzioni Lambda. I Cgroup devono inoltre essere eseguiti AWS IoT Greengrass nella modalità di [containerizzazione](lambda-group-config.md#lambda-containerization-considerations) predefinita.

   ```
   curl https://raw.githubusercontent.com/tianon/cgroupfs-mount/951c38ee8d802330454bdede20d85ec1c0f8d312/cgroupfs-mount > cgroupfs-mount.sh
   chmod +x cgroupfs-mount.sh 
   sudo bash ./cgroupfs-mount.sh
   ```

   La tua EC2 istanza Amazon dovrebbe ora essere pronta per AWS IoT Greengrass.

1. <a name="install-java-8-runtime"></a>Facoltativo. Installare il runtime Java 8, richiesto dal [Gestore di flussi](stream-manager.md). Questo tutorial non utilizza Gestore di flussi, ma utilizza il flusso di lavoro **Creazione gruppo predefinito** che abilita Gestore di flussi per impostazione predefinita. Utilizzare i seguenti comandi per installare il runtime Java 8 sul dispositivo principale o disabilitare Gestore di flussi prima di distribuire il gruppo. Le istruzioni per disabilitare Gestore di flussi sono fornite nel Modulo 3.
   + Per le distribuzioni basate su Debian:

     ```
     sudo apt install openjdk-8-jdk
     ```
   + Per le distribuzioni basate su Red Hat:

     ```
     sudo yum install java-1.8.0-openjdk
     ```

1. [Per assicurarti di avere tutte le dipendenze necessarie, scarica ed esegui il controllo delle dipendenze Greengrass dal AWS IoT Greengrass repository Samples in poi.](https://github.com/aws-samples/aws-greengrass-samples) GitHub Questi comandi scaricano, decomprimono ed eseguono lo script di controllo delle dipendenze nella tua istanza Amazon. EC2 

   ```
   mkdir greengrass-dependency-checker-GGCv1.11.x
   cd greengrass-dependency-checker-GGCv1.11.x
   wget https://github.com/aws-samples/aws-greengrass-samples/raw/master/greengrass-dependency-checker-GGCv1.11.x.zip
   unzip greengrass-dependency-checker-GGCv1.11.x.zip
   cd greengrass-dependency-checker-GGCv1.11.x
   sudo ./check_ggc_dependencies | more
   ```
**Importante**  
<a name="lambda-runtime-prereqs"></a>Questo tutorial richiede il runtime di Python 3.7 per eseguire le funzioni Lambda locali. Quando il gestore di flusso è abilitato, richiede anche il runtime Java 8. Se lo script `check_ggc_dependencies` produce avvisi su questi prerequisiti di runtime mancanti, assicurati di installarli prima di continuare. Puoi ignorare gli avvisi relativi ad altri prerequisiti di runtime facoltativi mancanti.

La configurazione dell' EC2 istanza Amazon è completa. Continua su [Modulo 2: Installazione del software AWS IoT Greengrass Core](module2.md).

# Configurazione di altri dispositivi
<a name="setup-filter.other"></a>

Segui i passaggi descritti in questo argomento per configurare un dispositivo (diverso da un Raspberry Pi) da utilizzare come AWS IoT Greengrass core.

**Suggerimento**  
Oppure, per utilizzare uno script che configura il tuo ambiente e installa il software AWS IoT Greengrass Core per te, consulta. [Avvio rapido: configurazione dispositivo Greengrass](quick-start.md)

Se non lo usi AWS IoT Greengrass, ti consigliamo di utilizzare un' EC2istanza Raspberry Pi o Amazon come dispositivo principale e di seguire i [passaggi di configurazione](module1.md) appropriati per il tuo dispositivo.

Se hai intenzione di creare un sistema personalizzato basato su Linux utilizzando il progetto Yocto, puoi utilizzare la Bitbake Recipe del AWS IoT Greengrass progetto. `meta-aws` Questa ricetta aiuta anche a sviluppare una piattaforma software che supporti AWS il software edge per applicazioni integrate. La build Bitbake installa, configura ed esegue automaticamente il software AWS IoT Greengrass Core sul dispositivo.

Progetto Yocto  
Un progetto di collaborazione open source che consente di creare sistemi personalizzati basati su Linux per applicazioni integrate indipendentemente dall'architettura hardware. [Per ulteriori informazioni, consulta il progetto Yocto.](https://www.yoctoproject.org/)

`meta-aws`  
Un progetto AWS gestito che fornisce ricette Yocto. Puoi usare le ricette per sviluppare software AWS edge in sistemi basati su Linux creati con Yocto Project. [OpenEmbedded](https://www.openembedded.org/wiki/Main_Page) Per ulteriori informazioni su questa funzionalità supportata dalla comunità, consulta il progetto su. [https://github.com/aws/meta-aws](https://github.com/aws/meta-aws) GitHub

`meta-aws-demos`  
Un progetto AWS gestito che contiene dimostrazioni del `meta-aws` progetto. Per altri esempi sul processo di integrazione, consulta il [https://github.com/aws-samples/meta-aws-demos](https://github.com/aws-samples/meta-aws-demos)progetto su GitHub.

Per utilizzare un dispositivo diverso o un'altra [piattaforma supportata](what-is-gg.md#gg-platforms), seguire i passaggi descritti in questo argomento.

1. <a name="setup-jetson"></a>Se il tuo dispositivo principale è un dispositivo NVIDIA Jetson, devi prima eseguire il flashing del firmware con il JetPack programma di installazione 4.3. Se stai configurando un altro dispositivo, passa alla fase 2.
**Nota**  
La versione di JetPack installazione che utilizzi si basa sulla versione di CUDA Toolkit di destinazione. Le seguenti istruzioni utilizzano JetPack 4.3 e CUDA Toolkit 10.0. Per informazioni sull'utilizzo delle versioni appropriate per il dispositivo, consulta [How to Install Jetpack](https://docs.nvidia.com/jetson/jetpack/install-jetpack/index.html) nella documentazione di NVIDIA.

   1. Su un desktop fisico che esegue Ubuntu 16.04 o versione successiva, esegui il flashing del firmware con il programma di installazione JetPack 4.3, come descritto in [Download e installazione JetPack](https://docs.nvidia.com/jetson/archives/jetpack-archived/jetpack-33/index.html#jetpack/3.3/install.htm%3FTocPath%3D_____3) (4.3) nella documentazione NVIDIA.

      Segui le istruzioni del programma di installazione per installare tutti i pacchetti e le dipendenze sulla scheda Jetson, che deve essere connessa al desktop con un cavo Micro-B.

   1. Riavvia la scheda in modalità normale e connetti un display alla scheda.
**Nota**  
Quando utilizzi SSH per connetterti alla scheda Jetson, utilizza il nome utente predefinito (**nvidia**) e la password predefinita (**nvidia**).

1. Esegui i seguenti comandi per creare l'utente `ggc_user` e il gruppo `ggc_group`. I comandi che esegui variano a seconda della distribuzione installata sul dispositivo core.
   + Se il dispositivo principale è in esecuzione OpenWrt, esegui i seguenti comandi:

     ```
     opkg install shadow-useradd
     opkg install shadow-groupadd
     useradd --system ggc_user
     groupadd --system ggc_group
     ```
   + In caso contrario, esegui i comandi seguenti:

     ```
     sudo adduser --system ggc_user
     sudo addgroup --system ggc_group
     ```
**Nota**  
Se il comando `addgroup` non è disponibile nel sistema, utilizza il comando seguente.  

     ```
     sudo groupadd --system ggc_group
     ```

1. <a name="install-java-8-runtime"></a>Facoltativo. Installare il runtime Java 8, richiesto dal [Gestore di flussi](stream-manager.md). Questo tutorial non utilizza Gestore di flussi, ma utilizza il flusso di lavoro **Creazione gruppo predefinito** che abilita Gestore di flussi per impostazione predefinita. Utilizzare i seguenti comandi per installare il runtime Java 8 sul dispositivo principale o disabilitare Gestore di flussi prima di distribuire il gruppo. Le istruzioni per disabilitare Gestore di flussi sono fornite nel Modulo 3.
   + Per le distribuzioni basate su Debian o basate su Ubuntuu:

     ```
     sudo apt install openjdk-8-jdk
     ```
   + Per le distribuzioni basate su Red Hat:

     ```
     sudo yum install java-1.8.0-openjdk
     ```

1. [Per assicurarti di avere tutte le dipendenze necessarie, scarica ed esegui il controllo delle dipendenze Greengrass dal AWS IoT Greengrass repository Samples in poi.](https://github.com/aws-samples/aws-greengrass-samples) GitHub Questi comandi decomprimono ed eseguono lo script di controllo delle dipendenze.

   ```
   mkdir greengrass-dependency-checker-GGCv1.11.x
   cd greengrass-dependency-checker-GGCv1.11.x
   wget https://github.com/aws-samples/aws-greengrass-samples/raw/master/greengrass-dependency-checker-GGCv1.11.x.zip
   unzip greengrass-dependency-checker-GGCv1.11.x.zip
   cd greengrass-dependency-checker-GGCv1.11.x
   sudo ./check_ggc_dependencies | more
   ```
**Nota**  
Lo `check_ggc_dependencies` script viene eseguito su piattaforme AWS IoT Greengrass supportate e richiede comandi di sistema Linux specifici. Per ulteriori informazioni, consulta il file [Readme](https://github.com/aws-samples/aws-greengrass-samples/blob/master/greengrass-dependency-checker-GGCv1.11.x/README.md) dello strumento di controllo delle dipendenze.

1. Installa tutte le dipendenze necessarie sul dispositivo, come indicato dall'output dello strumento di controllo delle dipendenze. Per dipendenze mancanti a livello di kernel, potrebbe essere necessario ricompilare il kernel. Per montare i gruppi di controllo Linux (`cgroups`), è possibile eseguire lo script [cgroupfs-mount](https://raw.githubusercontent.com/tianon/cgroupfs-mount/master/cgroupfs-mount). Ciò consente di AWS IoT Greengrass impostare il limite di memoria per le funzioni Lambda. I Cgroup devono inoltre essere eseguiti AWS IoT Greengrass nella modalità di [containerizzazione](lambda-group-config.md#lambda-containerization-considerations) predefinita.

   Se non compaiono errori nell'output, AWS IoT Greengrass dovrebbe essere in grado di funzionare correttamente sul dispositivo.
**Importante**  
<a name="lambda-runtime-prereqs"></a>Questo tutorial richiede il runtime di Python 3.7 per eseguire le funzioni Lambda locali. Quando il gestore di flusso è abilitato, richiede anche il runtime Java 8. Se lo script `check_ggc_dependencies` produce avvisi su questi prerequisiti di runtime mancanti, assicurati di installarli prima di continuare. Puoi ignorare gli avvisi relativi ad altri prerequisiti di runtime facoltativi mancanti.

   Per l'elenco dei AWS IoT Greengrass requisiti e delle dipendenze, vedi. [Piattaforme supportate e requisiti](what-is-gg.md#gg-platforms)