Installare il software AWS IoT Greengrass Core. - 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à.

Installare il software AWS IoT Greengrass Core.

Il software AWS IoT Greengrass Core estende AWS le funzionalità su un dispositivo AWS IoT Greengrass principale, permettendo ai dispositivi locali di agire localmente sui dati che generano.

AWS IoT Greengrass fornisce diverse opzioni per l'installazione del software AWS IoT Greengrass Core:

AWS IoT Greengrass fornisce anche ambienti containerizzati che eseguono il software AWS IoT Greengrass Core.

 

Scaricare ed estrarre il pacchetto software AWS IoT Greengrass Core

Scegli il software AWS IoT Greengrass Core per la tua piattaforma da scaricare come file tar.gz ed estrailo sul tuo dispositivo. Puoi scaricare le versioni recenti del software. Per ulteriori informazioni, consulta AWS IoT Greengrass Software di base.

 

Eseguire lo script di installazione del dispositivo Greengrass

Esegui la configurazione del dispositivo Greengrass per configurare il dispositivo, installare l'ultima versione del software AWS IoT Greengrass Core e implementare una funzione Hello World Lambda in pochi minuti. Per ulteriori informazioni, consulta Avvio rapido: configurazione dispositivo Greengrass.

 

Installazione del software di AWS IoT Greengrass Core da un repository APT

Importante

A partire dall'11 febbraio 2022, non è più possibile installare o aggiornare il software AWS IoT Greengrass Core da un repository APT. Sui dispositivi in cui è stato aggiunto il AWS IoT Greengrass repository, è necessario rimuovere il repository dall'elenco delle fonti. I dispositivi che eseguono il software dal repository APT continueranno a funzionare normalmente. Si consiglia di aggiornare il software AWS IoT Greengrass Core utilizzando i file tar.

Il repository APT fornito da AWS IoT Greengrass include i seguenti pacchetti:

  • aws-iot-greengrass-core. Installa il software AWS IoT Greengrass Core.

  • aws-iot-greengrass-keyring. Installa le chiavi GnuPG (GPG) usate per firmare l'archivio dei pacchetti. AWS IoT Greengrass

    Scaricando questo software accetti l'Accordo di licenza del software Greengrass Core.

Utilizzare gli script systemd per gestire il ciclo di vita del daemon Greengrass

Il pacchetto aws-iot-greengrass-core installa anche lo script systemd che è possibile utilizzare per gestire il ciclo di vita del software AWS IoT Greengrass Core (daemon).

  • Per avviare il demone Greengrass durante l'avvio:

    systemctl enable greengrass.service
  • Per avviare il demone Greengrass:

    systemctl start greengrass.service
  • Arrestare il daemon Greengrass.

    systemctl stop greengrass.service
  • Per verificare lo stato del demone Greengrass:

    systemctl status greengrass.service

Disinstalla il software di AWS IoT Greengrass base usando il repository APT

Quando si disinstalla il software di AWS IoT Greengrass base, è possibile scegliere se conservare o rimuovere le informazioni di configurazione del software di AWS IoT Greengrass base, come i certificati dei dispositivi, le informazioni sul gruppo e i file di registro.

Per disinstallare il software di AWS IoT Greengrass base e conservare le informazioni di configurazione
  • Esegui il comando seguente per rimuovere i pacchetti software AWS IoT Greengrass principali e conservare le informazioni di configurazione nella /greengrass cartella.

    sudo apt remove aws-iot-greengrass-core aws-iot-greengrass-keyring
Per disinstallare il software di AWS IoT Greengrass base e rimuovere le informazioni di configurazione
  1. Esegui il comando seguente per rimuovere i pacchetti software AWS IoT Greengrass principali e rimuovere le informazioni di configurazione da/greengrass folder.

    sudo apt purge aws-iot-greengrass-core aws-iot-greengrass-keyring
  2. Rimuovi il repository del software AWS IoT Greengrass principale dall'elenco dei sorgenti. Per ulteriori informazioni, consulta Rimuovi i sorgenti del repository software AWS IoT Greengrass principale.

Rimuovi i sorgenti del repository software AWS IoT Greengrass principale

È possibile rimuovere i sorgenti del AWS IoT Greengrass core software repository quando non è più necessario installare o aggiornare il software di AWS IoT Greengrass base dal repository APT. Dopo l'11 febbraio 2022, è necessario rimuovere il repository dall'elenco delle fonti per evitare errori durante l'esecuzione. apt update

Per rimuovere il repository APT dall'elenco delle fonti
  • Eseguite i seguenti comandi per rimuovere il repository del software AWS IoT Greengrass principale dall'elenco dei sorgenti.

    sudo rm /etc/apt/sources.list.d/greengrass.list sudo apt update

Esegui AWS IoT Greengrass in un container Docker

AWS IoT Greengrass offre un Dockerfile e un''immagine Docker che rende più semplice l'esecuzione del software AWS IoT Greengrass Core in un container Docker. Per ulteriori informazioni, consulta AWS IoT Greengrass Software Docker.

Nota

È inoltre possibile eseguire un'applicazione Docker su un dispositivo principale Greengrass. Aggiunto il supporto per il connettore di distribuzione dell'applicazione Greengrass Docker.

 

Esecuzione di AWS IoT Greengrass in uno snap

AWS IoT Greengrasssnap 1.11.x consente di eseguire una versione limitata di AWS IoT Greengrass tramite comodi pacchetti software, insieme a tutte le dipendenze necessarie, in un ambiente containerizzato.

Il 31 dicembre 2023, AWS IoT Greengrass terminerà la manutenzione per la versione AWS IoT Greengrass principale del software 1.11.x Snap pubblicata su snapcraft.io. I dispositivi che attualmente eseguono Snap continueranno a funzionare fino a nuovo avviso. Tuttavia, lo Snap AWS IoT Greengrass principale non riceverà più patch di sicurezza o correzioni di bug al termine della manutenzione.

Concetti relativi a

Di seguito sono riportati i concetti essenziali di snap per aiutarti a capire come utilizzare lo AWS IoT Greengrass snap:

Canale

Un componente snap che definisce quale versione di uno snap è installata e monitorata per gli aggiornamenti. Gli snap vengono aggiornati automaticamente alla versione più recente del canale corrente.

Interfaccia

Un componente snap che consente l'accesso a risorse, come reti e file utente.

Per eseguire lo AWS IoT Greengrass snap, è necessario collegare le seguenti interfacce. Nota che greengrass-support-no-container deve essere prima connessa e mai disconnessa.

- greengrass-support-no-container - hardware-observe - home-for-hooks - hugepages-control - log-observe - mount-observe - network - network-bind - network-control - process-control - system-observe

Le altre interfacce sono opzionali. Se le funzioni Lambda richiedono l'accesso a risorse specifiche, potrebbe essere necessario connettersi alle interfacce appropriate.

Aggiorna

Gli snap vengono aggiornati automaticamente. Il snapd demone è il gestore di pacchetti snap che verifica la presenza di aggiornamenti quattro volte al giorno per impostazione predefinita. Ogni controllo di aggiornamento è chiamato aggiornamento. Quando si verifica un aggiornamento, il demone si arresta, lo snap viene aggiornato e quindi il demone si riavvia.

Per ulteriori informazioni, consulta il sito Web di Snapcraft.

Cosa c'è di nuovo con AWS IoT Greengrass snap v1.11.x

Di seguito vengono descritte le novità e le modifiche apportate alla versione 1.11.x dello snap. AWS IoT Greengrass

  • Questa versione supporta solo l'snap_daemonutente, esposto come ID utente (UID) e gruppo (GID). 584788

  • Questa versione supporta solo funzioni Lambda non containerizzate.

    Importante

    Poiché le funzioni Lambda non containerizzate devono condividere lo stesso utente snap_daemon (), le funzioni Lambda non sono isolate l'una dall'altra. Per ulteriori informazioni, vedere Controllo dell'esecuzione delle funzioni di Greengrass Lambda utilizzando la configurazione specifica del gruppo.

  • Questa versione supporta i runtime C, C++, Java 8, Node.js 12.x, Python 2.7, Python 3.7 e Python 3.8.

    Nota

    Per evitare runtime Python ridondanti, le funzioni Lambda di Python 3.7 eseguono effettivamente il runtime di Python 3.8.

Nozioni di base sullo snap AWS IoT Greengrass

La procedura seguente consente di installare e configurare lo snap sul dispositivo. AWS IoT Greengrass

Requisiti

Per eseguire lo AWS IoT Greengrass snap, devi fare quanto segue:

  • Esegui lo AWS IoT Greengrass snap su una distribuzione Linux supportata, come Ubuntu, Linux Mint, Debian e Fedora.

  • Installa il snapd demone sul tuo dispositivo. Il snapd demone che include snap lo strumento gestisce l'ambiente snap sul tuo dispositivo.

Per l'elenco delle distribuzioni Linux supportate e le istruzioni di installazione, consulta Installazione di snapd nella documentazione di Snap.

Installa e configura lo snap AWS IoT Greengrass

Il seguente tutorial mostra come installare e configurare lo AWS IoT Greengrass snap sul tuo dispositivo.

Nota
  • Sebbene questo tutorial utilizzi un'istanza Amazon EC2 (x86 t2.micro Ubuntu 20.04), puoi eseguire lo AWS IoT Greengrass snap con hardware fisico, come un Raspberry Pi.

  • Il snapd demone è preinstallato su Ubuntu.

  1. Installa lo core18 snap eseguendo il seguente comando nel terminale del tuo dispositivo:

    sudo snap install core18

    Lo core18 snap è uno snap di base che fornisce un ambiente di runtime con librerie di uso comune. Questo snap è stato creato da Ubuntu 18.04 LTS.

  2. Effettua l'aggiornamento snapd eseguendo il seguente comando:

    sudo snap install --channel=edge snapd; sudo snap refresh --channel=edge snapd
  3. Esegui il snap list comando per verificare se hai installato lo AWS IoT Greengrass snap.

    Il seguente esempio di risposta mostra che snapd è installato, ma aws-iot-greengrass non lo è.

    Name Version Rev Tracking Publisher Notes amazon-ssm-agent 3.0.161.0 2996 latest/stable/… aws✓ classic core 16-2.48 10444 latest/stable canonical✓ core core18 20200929 1932 latest/stable canonical✓ base lxd 4.0.4 18150 4.0/stable/… canonical✓ - snapd 2.48+git548.g929ccfb 10526 latest/edge canonical✓ snapd
  4. Scegli una delle seguenti opzioni per installare AWS IoT Greengrass snap 1.11.x.

    • Per installare lo AWS IoT Greengrass snap, esegui il seguente comando:

      sudo snap install aws-iot-greengrass

      Risposta di esempio:

      aws-iot-greengrass 1.11.5 from Amazon Web Services (aws) installed
    • Per migrare da una versione precedente alla v1.11.x o eseguire l'aggiornamento all'ultima versione di patch disponibile, esegui il comando seguente:

      sudo snap refresh --channel=1.11.x aws-iot-greengrass

    Come altri snap, lo AWS IoT Greengrass snap utilizza i canali per gestire le versioni minori. Gli snap vengono aggiornati automaticamente all'ultima versione disponibile del canale corrente. Ad esempio, se lo specifichi--channel=1.11.x, lo AWS IoT Greengrass snap viene aggiornato alla v1.11.5.

    È possibile eseguire il snap info aws-iot-greengrass comando per ottenere l'elenco dei canali disponibili per. AWS IoT Greengrass

    Risposta di esempio:

    name: aws-iot-greengrass summary: AWS supported software that extends cloud capabilities to local devices. publisher: Amazon Web Services (aws✓) store-url: https://snapcraft.io/aws-iot-greengrass contact: https://repost.aws/tags/TA4ckIed1sR4enZBey29rKTg/aws-io-t-greengrass license: Proprietary description: | AWS IoT Greengrass seamlessly extends AWS onto edge devices so they can act locally on the data they generate, while still using the cloud for management, analytics, and durable storage. AWS IoT Greenrgrass snap v1.11.0 enables you to run a limited version of AWS IoT Greengrass with all necessary dependencies in a containerized environment. The AWS IoT Greengrass snap doesn't support connectors and machine learning (ML) inference. By downloading this software you agree to the Greengrass Core Software License Agreement (https://s3-us-west-2.amazonaws.com/greengrass-release-license/greengrass-license-v1.pdf). For more information, see Run AWS IoT Greengrass in a snap (https://docs.aws.amazon.com/greengrass/latest/developerguide/install-ggc.html#gg-snap-support) in the AWS IoT Greengrass Developer. If you need help, try the AWS IoT Greengrass tag on AWS re:Post (https://repost.aws/tags/TA4ckIed1sR4enZBey29rKTg/aws-io-t-greengrass) or connect with an AWS IQ expert (https://iq.aws.amazon.com/services/aws/greengrass). snap-id: SRDuhPJGj4XPxFNNZQKOTvURAp0wxKnd channels: latest/stable: 1.11.3 2021-06-15 (59) 111MB - latest/candidate: 1.11.3 2021-06-14 (59) 111MB - latest/beta: 1.11.3 2021-06-14 (59) 111MB - latest/edge: 1.11.3 2021-06-14 (59) 111MB - 1.11.x/stable: 1.11.3 2021-06-15 (59) 111MB - 1.11.x/candidate: 1.11.3 2021-06-15 (59) 111MB - 1.11.x/beta: 1.11.3 2021-06-15 (59) 111MB - 1.11.x/edge: 1.11.3 2021-06-15 (59) 111MB -
  5. Per accedere a risorse specifiche di cui le tue funzioni Lambda hanno bisogno, puoi connetterti a interfacce aggiuntive.

    Esegui il comando seguente per ottenere l'elenco delle interfacce supportate da AWS IoT Greengrass snap:

    snap connections aws-iot-greengrass

    Risposta di esempio:

    Interface Plug Slot Notes camera aws-iot-greengrass:camera - - dvb aws-iot-greengrass:dvb - - gpio aws-iot-greengrass:gpio - - gpio-memory-control aws-iot-greengrass:gpio-memory-control - - greengrass-support aws-iot-greengrass:greengrass-support-no-container :greengrass-support - hardware-observe aws-iot-greengrass:hardware-observe :hardware-observe manual hardware-random-control aws-iot-greengrass:hardware-random-control - - home aws-iot-greengrass:home-for-greengrassd - - home aws-iot-greengrass:home-for-hooks :home manual hugepages-control aws-iot-greengrass:hugepages-control :hugepages-control manual i2c aws-iot-greengrass:i2c - - iio aws-iot-greengrass:iio - - joystick aws-iot-greengrass:joystick - - log-observe aws-iot-greengrass:log-observe :log-observe manual mount-observe aws-iot-greengrass:mount-observe :mount-observe manual network aws-iot-greengrass:network :network - network-bind aws-iot-greengrass:network-bind :network-bind - network-control aws-iot-greengrass:network-control :network-control - opengl aws-iot-greengrass:opengl :opengl - optical-drive aws-iot-greengrass:optical-drive :optical-drive - process-control aws-iot-greengrass:process-control :process-control - raw-usb aws-iot-greengrass:raw-usb - - removable-media aws-iot-greengrass:removable-media - - serial-port aws-iot-greengrass:serial-port - - spi aws-iot-greengrass:spi - - system-observe aws-iot-greengrass:system-observe :system-observe -

    Se vedi un trattino (-) nella colonna Slot, l'interfaccia corrispondente non è connessa.

  6. Segui Installazione del software AWS IoT Greengrass Core per creare un AWS IoT oggetto, un gruppo Greengrass, risorse di sicurezza che consentano comunicazioni sicure con AWS IoT e il file di configurazione del software AWS IoT Greengrass Core. Il file di configurazione contiene configurazioni specifiche del core di Greengrass, come la posizione dei file dei certificati e l'endpoint dei dati del AWS IoT dispositivo. config.json

    Nota

    Se hai scaricato il file su un altro dispositivo, segui questo passaggio per trasferire i file sul dispositivo AWS IoT Greengrass principale.

  7. Per prima AWS IoT Greengrass cosa, assicurati di aggiornare il file config.json, come illustrato di seguito:

    • Sostituisci ogni istanza di CertificateID con l'ID del certificato nel nome del certificato e dei file chiave.

    • Se hai scaricato un certificato Amazon Root CA diverso da Amazon Root CA 1, sostituisci ogni istanza di AmazonRootCA1.pem con il nome del file CA root Amazon.

    { ... "crypto" : { "principals" : { "SecretsManager" : { "privateKeyPath" : "file:///snap/aws-iot-greengrass/current/greengrass/certs/certificateId-private.pem.keyy" }, "IoTCertificate" : { "privateKeyPath" : "file:///snap/aws-iot-greengrass/current/greengrass/certs/certificateId-private.pem.key", "certificatePath" : "file:///snap/aws-iot-greengrass/current/greengrass/certs/certificateId-certificate.pem.crt" } }, "caPath" : "file:///snap/aws-iot-greengrass/current/greengrass/certs/AmazonRootCA1.pem" }, "writeDirectory": "/var/snap/aws-iot-greengrass/current/ggc-write-directory", "pidFileDirectory": "/var/snap/aws-iot-greengrass/current/pidFileDirectory" }
  8. Esegui il comando seguente per aggiungere il AWS IoT Greengrass certificato e i file di configurazione:

    sudo snap set aws-iot-greengrass gg-certs=/home/ubuntu/my-certs

Implementazione di una funzione Lambda

Questa sezione mostra come implementare una funzione Lambda gestita dal cliente sullo AWS IoT Greengrass snap.

Importante

AWS IoT Greengrasssnap v1.11 supporta solo funzioni Lambda non containerizzate.

  1. Esegui il comando seguente per avviare il demone: AWS IoT Greengrass

    sudo snap start aws-iot-greengrass

    Risposta di esempio:

    Started.
  2. Esegui il comando seguente per confermare che il demone è in esecuzione:

    snap services aws-iot-greengrass.greengrassd

    Risposta di esempio:

    Service Startup Current Notes aws-iot-greengrass.greengrassd disabled active -
  3. Segui il Modulo 3 (parte 1): Lambda funziona AWS IoT Greengrass per creare e distribuire una funzione Hello World Lambda. Tuttavia, prima di distribuire la funzione Lambda, completa il passaggio successivo.

  4. Assicurati che la tua funzione Lambda venga eseguita come snap_daemon utente e in modalità senza contenitore. Per aggiornare le impostazioni del tuo gruppo Greengrass, procedi come segue nella AWS IoT Greengrass console:

    1. Accedi alla console AWS IoT Greengrass.

    2. Nel riquadro di navigazione della AWS IoT console, in Gestione, espandi i dispositivi Greengrass, quindi scegli Gruppi (V1).

    3. In Gruppi Greengrass, scegli il gruppo target.

    4. Nella pagina di configurazione del gruppo, nel riquadro di navigazione, scegli la scheda Funzioni Lambda.

    5. In Ambiente di runtime della funzione Lambda predefinito, scegliete Modifica ed effettuate le seguenti operazioni:

      1. Per Utente e gruppo di sistema predefiniti, scegliete Un altro ID utente/ID di gruppo, quindi immettete sia 584788 l'ID utente di sistema (numero) che l'ID del gruppo di sistema (numero).

      2. Per la containerizzazione predefinita della funzione Lambda, scegli Nessun contenitore.

      3. Selezionare Salva.

Arresto del demone AWS IoT Greengrass

È possibile utilizzare il snap stop comando per interrompere un servizio.

Per fermare il AWS IoT Greengrass demone, esegui il seguente comando:

sudo snap stop aws-iot-greengrass

Il comando dovrebbe tornare. Stopped.

Per verificare se lo snap è stato interrotto correttamente, esegui il seguente comando:

snap services aws-iot-greengrass.greengrassd

Risposta di esempio:

Service Startup Current Notes aws-iot-greengrass.greengrassd disabled inactive -

Disinstallazione dello snap AWS IoT Greengrass

Per disinstallare lo AWS IoT Greengrass snap, esegui il seguente comando:

sudo snap remove aws-iot-greengrass

Risposta di esempio:

aws-iot-greengrass removed

Risoluzione dei problemi relativi allo AWS IoT Greengrass snap

Utilizza le seguenti informazioni per risolvere i problemi relativi allo AWS IoT Greengrass snap.

Errori relativi all'autorizzazione ottenuta e negata.

Soluzione: gli errori di autorizzazione negata sono spesso dovuti alla mancanza di interfacce. Per l'elenco delle interfacce mancanti e informazioni dettagliate sulla risoluzione dei problemi, puoi utilizzare lo snappy-debug strumento.

Eseguite il comando seguente per installare lo strumento.

sudo snap install snappy-debug

Risposta di esempio:

snappy-debug 0.36-snapd2.45.1 from Canonical✓ installed

Esegui il sudo snappy-debug comando in una sessione terminale separata. L'operazione continua fino a quando non si verifica un errore di autorizzazione negata.

Ad esempio, se la funzione Lambda tenta di leggere un file nella $HOME directory, potresti ottenere la seguente risposta:

INFO: Following '/var/log/syslog'. If have dropped messages, use: INFO: $ sudo journalctl --output=short --follow --all | sudo snappy-debug kernel.printk_ratelimit = 0 = AppArmor = Time: Dec 6 04:48:26 Log: apparmor="DENIED" operation="mknod" profile="snap.aws-iot-greengrass.greengrassd" name="/home/ubuntu/my-file.txt" pid=12345 comm="touch" requested_mask="c" denied_mask="c" fsuid=0 ouid=0 File: /home/ubuntu/my-file.txt (write) Suggestion: * add 'home' to 'plugs'

Questo esempio mostra che la creazione del /home/ubuntu/my-file.txt file ha causato l'errore di autorizzazione. Suggerisce inoltre di aggiungere home aplugs. Tuttavia, questo suggerimento non è applicabile. Agli home-for-greengrassd and home-for-hooks plug viene concesso solo l'accesso in sola lettura.

Per maggiori informazioni, consulta The snappy-debug snap nella documentazione di Snap.

errore: impossibile eseguire le seguenti attività: - Esegui il comando di servizio «start» per i servizi ["greengrassd"] di snap "" ([start snap. aws-iot-greengrass aws-iot-greengrass.greengrassd.service] non riuscito con exit status 1: Job for snap. aws-iot-greengrass.greengrassd.service non è riuscito perché il processo di controllo è terminato con un codice di errore. Vedi «systemctl status snap». aws-iot-greengrass.greengrassd.service» e «journalctl -xe» per i dettagli.)

Soluzione: è possibile che venga visualizzato questo errore quando il snap start aws-iot-greengrass comando non riesce ad avviare il software Core. AWS IoT Greengrass

Per ulteriori informazioni sulla risoluzione dei problemi, esegui il comando seguente:

sudo snap run aws-iot-greengrass.greengrassd

Risposta di esempio:

Couldn't find /snap/aws-iot-greengrass/44/greengrass/config/config.json.

Questo esempio mostra che AWS IoT Greengrass non è stato possibile trovare il config.json file. È possibile controllare i file di configurazione e di certificato.

/var/snap/ aws-iot-greengrass /current/ ggc-write-directory /packages/1.11.5/rootfs/merged non è un percorso assoluto o è un collegamento simbolico.

Soluzione: lo AWS IoT Greengrass snap supporta solo funzioni Lambda non containerizzate. Assicurati di eseguire le funzioni Lambda in modalità no container. Per ulteriori informazioni, consulta Considerazioni sulla scelta della containerizzazione delle funzioni Lambda nella Guida per gli sviluppatori. AWS IoT Greengrass Version 1

Il demone snapd non è riuscito a riavviarsi dopo aver eseguito il comando sudo snap refresh snapd.

Soluzione: segui i passaggi da 6 a 8 Installa e configura lo snap AWS IoT Greengrass per aggiungere il AWS IoT Greengrass certificato e i file di configurazione allo snap. AWS IoT Greengrass

Archiviazione di un'installazione del software AWS IoT Greengrass Core

Quando esegui l'aggiornamento a una nuova versione del software AWS IoT Greengrass Core, puoi archiviare la versione attualmente installata. In questo modo, l'ambiente di installazione corrente resta a disposizione e puoi testare una nuova versione del software sullo stesso hardware. Questo semplifica inoltre l'esecuzione del rollback alla versione archiviata per qualsiasi motivo.

Per archiviare l'installazione corrente e installare una nuova versione
  1. Scaricare il pacchetto di installazione del software AWS IoT Greengrass Core che si desidera utilizzare per l'aggiornamento.

  2. Copiare il pacchetto nel dispositivo core di destinazione. Per istruzioni che mostrano come trasferire i file, consulta questa fase.

    Nota

    I certificati, le chiavi e il file di configurazione correnti verranno copiati nella nuova installazione in seguito.

    Eseguire i comandi nelle fasi seguenti nel terminale del dispositivo core:

  3. Assicurarsi che il daemon Greengrass sia stato arrestato sul dispositivo core.

    1. Per controllare se il daemon è in esecuzione:

      ps aux | grep -E 'greengrass.*daemon'

      Se l'output contiene una voce root per /greengrass/ggc/packages/ggc-version/bin/daemon, allora il daemon è in esecuzione.

      Nota

      Questa procedura viene scritta presumendo che il software AWS IoT Greengrass Core sia installato nella directory /greengrass.

    2. Per arrestare il daemon:

      cd /greengrass/ggc/core/ sudo ./greengrassd stop
  4. Sposta la directory principale di Greengrass in una directory diversa.

    sudo mv /greengrass /greengrass_backup
  5. Decomprimi il nuovo software sul dispositivo core. Sostituisci i segnaposto os-architecture e version nel comando.

    sudo tar –zxvf greengrass-os-architecture-version.tar.gz –C /
  6. Copia i certificati, le chiavi e il file di configurazione archiviati nella nuova installazione.

    sudo cp /greengrass_backup/certs/* /greengrass/certs sudo cp /greengrass_backup/config/* /greengrass/config
  7. Avvia il daemon:

    cd /greengrass/ggc/core/ sudo ./greengrassd start

Ora è possibile effettuare una distribuzione del gruppo per testare la nuova installazione. Se si verifica un errore, è possibile ripristinare l'installazione archiviata.

Per ripristinare l'installazione archiviata
  1. Arresta il daemon.

  2. Elimina la nuova directory /greengrass.

  3. Riporta la directory /greengrass_backup in /greengrass.

  4. Avvia il daemon.