Implementa Hub SDK con systemd - Integrazioni gestite per AWS IoT Device Management

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

Implementa Hub SDK con systemd

Importante

Segui la hubSystemdSetup cartella del readme.md file release.tgz per gli ultimi aggiornamenti.

Questa sezione descrive gli script e i processi per la distribuzione e la configurazione dei servizi su un dispositivo hub basato su Linux.

Panoramica

Il processo di distribuzione è costituito da due script principali:

  • copy_to_hub.sh: viene eseguito sul computer host per copiare i file necessari nell'hub

  • setup_hub.sh: viene eseguito sull'hub per configurare l'ambiente e distribuire i servizi

Inoltre, systemd/deploy_iotshd_services_on_hub.sh gestisce la sequenza di avvio dei processi e la gestione delle autorizzazioni dei processi e viene attivato automaticamente da. setup_hub.sh

Prerequisiti

I prerequisiti elencati sono necessari per una corretta implementazione.

  • il servizio systemd è disponibile sull'hub

  • accesso SSH al dispositivo hub

  • Privilegi Sudo sul dispositivo hub

  • scputilità installata sul computer host

  • sedutilità installata sul computer host

  • utilità di decompressione installata sul computer host

Struttura dei file

La struttura del file è progettata per facilitare l'organizzazione e la gestione dei suoi vari componenti, consentendo un accesso e una navigazione efficienti del contenuto.

hubSystemdSetup/ ├── README.md ├── copy_to_hub.sh ├── setup_hub.sh ├── iotshd_config.json # Sample configuration file ├── local_certs/ # Directory for DHA certificates └── systemd/ ├── *.service.template # Systemd service templates └── deploy_iotshd_services_on_hub.sh

Nel file tgz della versione SDK, la struttura complessiva del file è:

IoT-managed-integrations-Hub-SDK-aarch64-v1.0.0.tgz ├──package/ ├──greengrass/ ├──artifacts/ ├──recipes/ ├──hubSystemdSetup/ ├── REAME.md ├── copy_to_hub.sh ├── setup_hub.sh ├── iotshd_config.json # Sample configuration file ├── local_certs/ # Directory for DHA certificates └── systemd/ ├── *.service.template # Systemd service templates └── deploy_iotshd_services_on_hub.sh

Configurazione iniziale

Estrai il pacchetto SDK

tar -xzf managed-integrations-Hub-SDK-vVersion-linux-aarch64-timestamp.tgz

Vai alla directory estratta e prepara il pacchetto:

# Create package.zip containing required artifacts
zip -r package.zip package/greengrass/artifacts
# Move package.zip to the hubSystemdSetup directory
mv package.zip ../hubSystemdSetup/

Aggiungi i file di configurazione del dispositivo

Segui i due passaggi elencati per creare i file di configurazione del dispositivo e copiarli nell'hub.

  1. Aggiungi i file di configurazione del dispositivo per creare i file di configurazione del dispositivo necessari. L'SDK utilizza questo file per le sue funzioni.

  2. Copia i file di configurazione per copiare i file di configurazione creati nell'hub.

Copiare i file nell'hub

Esegui lo script di distribuzione dal tuo computer host:

chmod +x copy_to_hub.sh
./copy_to_hub.sh hub_ip_address package_file
Esempio
./copy_to_hub.sh 192.168.50.223 ~/Downloads/EAR3-package.zip

Questo copia:

  • Il file del pacchetto (rinominato in package.zip sull'hub)

  • File di configurazione

  • Certificati

  • file di servizio Systemd

Configura l'hub

Dopo aver copiato i file, inserisci SSH nell'hub ed esegui lo script di configurazione:

ssh hub@hub_ip
chmod +x setup_hub.sh
sudo ./setup_hub.sh

Configurazioni di utenti e gruppi

Per impostazione predefinita, utilizziamo l'hub utente e l'hub di gruppo per i componenti SDK. Esistono diversi modi per configurarli:

  • Usa un utente/gruppo personalizzato:

    sudo ./setup_hub.sh --user=USERNAME --group=GROUPNAME
  • Creali manualmente prima di eseguire lo script di installazione:

    sudo groupadd -f GROUPNAME
    sudo useradd -r -g GROUPNAME USERNAME
  • Aggiungi i comandi insetup_hub.sh.

Gestisci i servizi

Per riavviare tutti i servizi, esegui il seguente script dall'hub:

sudo /usr/local/bin/deploy_iotshd_services_on_hub.sh

Lo script di installazione creerà le directory necessarie, imposterà le autorizzazioni appropriate e distribuirà automaticamente i servizi. Se non utilizzi SSH/SCP, devi modificarlo in base al tuo metodo di distribuzione specifico. copy_to_hub.sh Assicurati che tutti i file e le configurazioni dei certificati siano configurati correttamente prima della distribuzione.