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 4: Implementazione e test del componente su un dispositivo principale
In questa sezione, distribuisci il componente sul dispositivo principale per testarne la funzionalità. Sul dispositivo principale, crei il file virtuale del livello della batteria per imitare una batteria reale. Quindi, crei distribuzioni aggiuntive e osservi i file di registro dei componenti sul dispositivo principale per verificare che il componente rinvii e confermi gli aggiornamenti.
Per distribuire e testare il componente Hello World che posticipa gli aggiornamenti
-
Usa un editor di testo per creare un file virtuale del livello della batteria. Questo file imita una batteria reale.
-
Sui dispositivi principali Linux, crea un file denominato
/home/ggc_user/virtual_battery.json
. Esegui l'editor di testo consudo
autorizzazioni. -
Sui dispositivi Windows principali, crea un file denominato
C:\Users\ggc_user\virtual_battery.json
. Esegui l'editor di testo come amministratore.
Ad esempio, su un sistema basato su Linux, è possibile eseguire il comando seguente per utilizzare GNU nano per creare il file.
sudo nano /home/ggc_user/virtual_battery.json
Copiate il seguente codice JSON nel file.
{ "battery_level": 50 }
-
-
Distribuisci il componente Hello World sul dispositivo principale. Esegui questa operazione:
-
Nel menu di navigazione AWS IoT Greengrassdella console
, scegli Componenti. -
Nella pagina Componenti, scegli la scheda I miei componenti, quindi scegli com.example.BatteryAwareHelloWorld.
-
Nella pagina com.example.BatteryAwareHelloWorld, scegli (Distribuisci).
-
Da Aggiungi alla distribuzione, scegli una distribuzione esistente da modificare oppure scegli di creare una nuova distribuzione, quindi scegli Avanti.
-
Se hai scelto di creare una nuova distribuzione, scegli il dispositivo principale o il gruppo di oggetti di destinazione per la distribuzione. Nella pagina Specificare la destinazione, in Obiettivo di distribuzione, scegli un dispositivo principale o un gruppo di oggetti, quindi scegli Avanti.
-
Nella pagina Seleziona componenti, verifica che il com.example.BatteryAwareHelloWorldcomponente sia selezionato, scegli Avanti.
-
Nella pagina Configura componenti com.example.BatteryAwareHelloWorld, selezionate e quindi effettuate le seguenti operazioni:
-
Scegli Configura componente.
-
Nella com.example.BatteryAwareHelloWorld modalità Configura, in Aggiornamento della configurazione, in Configurazione da unire, inserisci il seguente aggiornamento di configurazione.
{ "BatteryThreshold": 70 }
-
Scegli Conferma per chiudere la modalità, quindi scegli Avanti.
-
-
Nella pagina Conferma impostazioni avanzate, nella sezione Criteri di distribuzione, in Politica di aggiornamento dei componenti, conferma che sia selezionata l'opzione Notifica componenti. L'opzione Notifica componenti è selezionata per impostazione predefinita quando si crea una nuova distribuzione.
-
Nella pagina Review (Verifica), scegli Deploy (Distribuisci).
Il completamento della distribuzione può richiedere fino a un minuto.
-
-
Il software AWS IoT Greengrass Core salva lo stdout dai processi dei componenti nei file di registro nella
logs
cartella. Eseguite il comando seguente per verificare che il componente Hello World venga eseguito e stampi i messaggi di stato.Dovreste vedere messaggi simili a quelli dell'esempio seguente.
Hello, World! Battery level (50) is below threshold (70), so the component will defer updates.
Nota
Se il file non esiste, la distribuzione potrebbe non essere ancora completa. Se il file non esiste entro 30 secondi, è probabile che la distribuzione non sia riuscita. Ciò può verificarsi, ad esempio, se il dispositivo principale non è autorizzato a scaricare gli elementi del componente dal bucket S3. Esegui il comando seguente per visualizzare il file di registro del software AWS IoT Greengrass Core. Questo file include i log del servizio di distribuzione del dispositivo principale Greengrass.
-
Crea una nuova distribuzione sul dispositivo principale per verificare che il componente rinvii l'aggiornamento. Esegui questa operazione:
-
Nel menu di navigazione AWS IoT Greengrassdella console
, scegli Distribuzioni. -
Scegli la distribuzione che hai creato o modificato in precedenza.
-
Nella pagina di distribuzione, scegli Rivedi.
-
Nella modalità Revise deployment, scegli Revise deployment.
-
Scegli Avanti in ogni passaggio, quindi scegli Distribuisci.
-
-
Esegui il comando seguente per visualizzare nuovamente i log del componente e verifica che posticipi l'aggiornamento.
Dovrebbero comparire messaggi simili a quelli dell'esempio seguente. Il componente posticipa l'aggiornamento di 30 secondi, quindi stampa ripetutamente questo messaggio.
Deferred update for deployment 50722a95-a05f-4e2a-9414-da80103269aa.
-
Utilizza un editor di testo per modificare il file virtuale del livello della batteria e imposta il livello della batteria a un valore superiore alla soglia, in modo che l'installazione possa procedere.
-
Sui dispositivi principali Linux, modifica il file denominato
/home/ggc_user/virtual_battery.json
. Esegui l'editor di testo consudo
le autorizzazioni. -
Sui dispositivi Windows Core, modifica il file denominato
C:\Users\ggc_user\virtual_battery.json
. Esegui l'editor di testo come amministratore.
Ad esempio, su un sistema basato su Linux, è possibile eseguire il comando seguente per utilizzare GNU nano per creare il file.
sudo nano /home/ggc_user/virtual_battery.json
Cambia il livello della batteria in.
80
{ "battery_level": 80 }
-
-
Esegui il comando seguente per visualizzare nuovamente i log del componente e verifica che riconosca l'aggiornamento.
Dovreste vedere messaggi simili ai seguenti esempi.
Hello, World! Battery level (80) is above threshold (70), so the component will acknowledge updates. Acknowledged update for deployment f9499eb2-4a40-40a7-86c1-c89887d859f1.