

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

# Fase 6: Implementazione del componente
<a name="deploy-first-component"></a>

Con AWS IoT Greengrass, puoi distribuire componenti su singoli dispositivi o gruppi di dispositivi. Quando distribuisci un componente, AWS IoT Greengrass installa ed esegue il software di quel componente su ogni dispositivo di destinazione. È necessario specificare i componenti da distribuire e l'aggiornamento della configurazione da distribuire per ciascun componente. È inoltre possibile controllare il modo in cui la distribuzione viene distribuita ai dispositivi destinatari della distribuzione. Per ulteriori informazioni, consulta [Implementazione AWS IoT Greengrass dei componenti sui dispositivi](manage-deployments.md).

In questa sezione, ridistribuisci il componente Hello World sul tuo dispositivo principale Greengrass.

## Implementa il tuo componente (console)
<a name="deploy-first-component-console"></a>

1. Nel menu di navigazione [AWS IoT Greengrass della console](https://console.aws.amazon.com/greengrass), scegli **Componenti**.

1. Nella pagina **Componenti**, nella scheda I **miei componenti**, scegli **com.example.HelloWorld**.

1. Nella **com.example.HelloWorld**nella pagina, scegli **Deploy.**

1. Da **Aggiungi alla distribuzione**, scegli **Crea nuova distribuzione**, quindi scegli **Avanti**. 

1. Nella pagina **Specifica destinazione**, procedi come segue:

   1. Nella casella **Name** (Nome), inserisci **Deployment for MyGreengrassCore**.

   1. Per **Deployment target**, scegli **Core device** e il nome dell' AWS IoT oggetto per il tuo dispositivo principale. Il valore predefinito in questo tutorial è*MyGreengrassCore*.

   1. Scegli **Next (Successivo)**.

1. Nella pagina **Seleziona componenti**, in **I miei componenti**, verifica che **com.example.HelloWorld**il componente è selezionato e scegli **Avanti**.

1. Nella pagina **Configura componenti**, scegli **com.example.HelloWorld**ed esegui le seguenti operazioni: 

   1. Scegli **Configura componente**. 

   1. In **Aggiornamento della configurazione**, in **Configurazione da unire**, inserisci la seguente configurazione.

      ```
      {
        "Message": "universe"
      }
      ```

      Questo aggiornamento della configurazione imposta il `Message` parametro Hello World `universe` per il dispositivo in questa distribuzione.

   1. Scegli **Conferma**.

   1. Scegli **Next (Successivo)**.

1. Nella pagina **Configura impostazioni avanzate**, mantieni le impostazioni di configurazione predefinite e scegli **Avanti**.

1. Nella pagina **Review (Verifica)**, scegli **Deploy (Distribuisci)**.

1. <a name="getting-started-verify-cloud-deployment-step"></a>Verifica che la distribuzione sia completata correttamente. La distribuzione può richiedere alcuni minuti. Controlla il registro di Hello World per verificare la modifica. Esegui il seguente comando sul tuo dispositivo principale Greengrass.

------
#### [ Linux or Unix ]

   ```
   sudo tail -f /greengrass/v2/logs/com.example.HelloWorld.log
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   type C:\greengrass\v2\\logs\\com.example.HelloWorld.log
   ```

------
#### [ PowerShell ]

   ```
   gc C:\greengrass\v2\\logs\\com.example.HelloWorld.log -Tail 10 -Wait
   ```

------

   Dovresti vedere messaggi simili all'esempio seguente.

   ```
   Hello, universe! Greetings from your first Greengrass component.
   ```
**Nota**  
Se i messaggi di registro non vengono modificati, la distribuzione non è riuscita o non ha raggiunto il dispositivo principale. Ciò può verificarsi se il dispositivo principale non è connesso a Internet o non dispone delle autorizzazioni per recuperare artefatti dal bucket S3. Esegui il seguente comando sul tuo dispositivo principale per visualizzare il file di registro del software Core. AWS IoT Greengrass Questo file include i log del servizio di distribuzione del dispositivo principale Greengrass.  

   ```
   sudo tail -f /greengrass/v2/logs/greengrass.log
   ```

   ```
   type C:\greengrass\v2\\logs\\greengrass.log
   ```
<a name="windows-cmd-type-observe-logs"></a>Il `type` comando scrive il contenuto del file nel terminale. Esegui questo comando più volte per osservare le modifiche nel file.

   ```
   gc C:\greengrass\v2\\logs\\greengrass.log -Tail 10 -Wait
   ```
Per ulteriori informazioni, consulta [Risoluzione dei problemi AWS IoT Greengrass V2](troubleshooting.md).

## Distribuisci il tuo componente ()AWS CLI
<a name="deploy-first-component-cli"></a>

**Per distribuire il componente Hello World**

1. Sul tuo computer di sviluppo, crea un file chiamato `hello-world-deployment.json` e copia il seguente codice JSON nel file. Questo file definisce i componenti e le configurazioni da distribuire.

   ```
   {
     "components": {
       "com.example.HelloWorld": {
         "componentVersion": "1.0.0",
         "configurationUpdate": {
           "merge": "{\"Message\":\"universe\"}"
         }
       }
     }
   }
   ```

   Questo file di configurazione specifica di distribuire la versione `1.0.0` del componente Hello World sviluppata e pubblicata nella procedura precedente. `configurationUpdate`Specificano di unire la configurazione del componente in una stringa con codifica JSON. Questo aggiornamento della configurazione imposta il `Message` parametro Hello World sul dispositivo in `universe` questa distribuzione.

1. Esegui il seguente comando per distribuire il componente sul tuo dispositivo principale Greengrass. È possibile eseguire la distribuzione su oggetti, che sono dispositivi singoli, o gruppi di oggetti, che sono gruppi di dispositivi. Sostituiscilo *MyGreengrassCore* con il AWS IoT nome del dispositivo principale.

------
#### [ Linux or Unix ]

   ```
   aws greengrassv2 create-deployment \
     --target-arn "arn:aws:iot:region:account-id:thing/MyGreengrassCore" \
     --cli-input-json file://hello-world-deployment.json
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   aws greengrassv2 create-deployment ^
     --target-arn "arn:aws:iot:region:account-id:thing/MyGreengrassCore" ^
     --cli-input-json file://hello-world-deployment.json
   ```

------
#### [ PowerShell ]

   ```
   aws greengrassv2 create-deployment `
     --target-arn "arn:aws:iot:region:account-id:thing/MyGreengrassCore" `
     --cli-input-json file://hello-world-deployment.json
   ```

------

   Il comando restituisce una risposta simile all'esempio seguente.

   ```
   {
     "deploymentId": "deb69c37-314a-4369-a6a1-3dff9fce73a9",
     "iotJobId": "b5d92151-6348-4941-8603-bdbfb3e02b75",
     "iotJobArn": "arn:aws:iot:region:account-id:job/b5d92151-6348-4941-8603-bdbfb3e02b75"
   }
   ```

1. <a name="getting-started-verify-cloud-deployment-step"></a>Verificare che la distribuzione venga completata correttamente. La distribuzione può richiedere alcuni minuti. Controlla il registro di Hello World per verificare la modifica. Esegui il seguente comando sul tuo dispositivo principale Greengrass.

------
#### [ Linux or Unix ]

   ```
   sudo tail -f /greengrass/v2/logs/com.example.HelloWorld.log
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   type C:\greengrass\v2\\logs\\com.example.HelloWorld.log
   ```

------
#### [ PowerShell ]

   ```
   gc C:\greengrass\v2\\logs\\com.example.HelloWorld.log -Tail 10 -Wait
   ```

------

   Dovresti vedere messaggi simili all'esempio seguente.

   ```
   Hello, universe! Greetings from your first Greengrass component.
   ```
**Nota**  
Se i messaggi di registro non vengono modificati, la distribuzione non è riuscita o non ha raggiunto il dispositivo principale. Ciò può verificarsi se il dispositivo principale non è connesso a Internet o non dispone delle autorizzazioni per recuperare artefatti dal bucket S3. Esegui il seguente comando sul tuo dispositivo principale per visualizzare il file di registro del software Core. AWS IoT Greengrass Questo file include i log del servizio di distribuzione del dispositivo principale Greengrass.  

   ```
   sudo tail -f /greengrass/v2/logs/greengrass.log
   ```

   ```
   type C:\greengrass\v2\\logs\\greengrass.log
   ```
<a name="windows-cmd-type-observe-logs"></a>Il `type` comando scrive il contenuto del file nel terminale. Esegui questo comando più volte per osservare le modifiche nel file.

   ```
   gc C:\greengrass\v2\\logs\\greengrass.log -Tail 10 -Wait
   ```
Per ulteriori informazioni, consulta [Risoluzione dei problemi AWS IoT Greengrass V2](troubleshooting.md).