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
scp
utilità installata sul computer hostsed
utilità installata sul computer hostutilità 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.
-
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.
-
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.shhub_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 -gGROUPNAME
USERNAME
-
Aggiungi i comandi in
setup_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.