

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Déployez le SDK du Hub à l'aide d'un script
<a name="managedintegrations-sdk-v2-cookbook-deployment-nogg"></a>

Déployez les composants du SDK Hub d'intégrations gérées manuellement à l'aide de scripts d'installation, puis validez le déploiement. Cette section décrit les étapes d'exécution du script et le processus de vérification.

**Topics**
+ [Préparez votre environnement](#managedintegrations-sdk-v2-cookbook-runscript-prereq)
+ [Exécutez le script du SDK Hub](#managedintegrations-sdk-v2-cookbook-runscript-run)
+ [Vérifier le provisionnement du hub](#managedintegrations-sdk-v2-cookbook-odm-validation-hub)
+ [Vérifier le fonctionnement de l'agent](#managedintegrations-sdk-v2-cookbook-odm-validation-agent)
+ [Vérifier le fonctionnement du LPW-Provisioner](#managedintegrations-sdk-v2-cookbook-odm-validation-provisioner)

## Préparez votre environnement
<a name="managedintegrations-sdk-v2-cookbook-runscript-prereq"></a>

Effectuez les étapes suivantes avant d'exécuter le script d'installation du SDK :

1. Créez un dossier nommé `middleware` à l'intérieur du `artifacts` dossier.

1. Copiez les fichiers du middleware de votre hub dans le `middleware` dossier.

1. Exécutez les commandes d'initialisation avant de démarrer le SDK.
**Important**  
Répétez les commandes d'initialisation après chaque redémarrage du hub.

   ```
   #Get the current user
   _user=$(whoami)
   
   #Get the current group
   _grp=$(id -gn)
   
   #Display the user and group
   echo "Current User: $_user"
   echo "Current Group: $_grp"
   
   sudo mkdir -p /dev/aipc/
   sudo chown -R $_user:$_grp /dev/aipc
   sudo mkdir -p /data/ace/kvstorage
   sudo chown -R $_user:$_grp /data/ace/kvstorage
   ```

## Exécutez le script du SDK Hub
<a name="managedintegrations-sdk-v2-cookbook-runscript-run"></a>

Accédez au répertoire des artefacts et exécutez le `start_iotmi_sdk.sh` script. Ce script lance les composants du SDK du hub dans le bon ordre. Consultez les exemples de journaux suivants pour vérifier la réussite du démarrage :

**Note**  
Les journaux de tous les composants en cours d'exécution se trouvent dans le `artifacts/logs` dossier.

```
hub@hub-293ea release_Oct_17$ ./start_iotmi_sdk.sh
-------Stopping SDK running processes---
DeviceAgent: no process found
------Starting SDK-------
-------Creating logs directory----------
Logs directory created.
-------Verifying Middleware paths-------
All middleware libraries exist
-------Verifying Middleware pre reqs---
AIPC and KVstroage directories exist
-------Starting HubOnboarding-----------
-------Starting MQTT Proxy-----------
-------Starting Event Manager-----------
-------Starting Zigbee Service----------
-------Starting Zwave Service----------
/data/release_Oct_17/middleware/AceZwave/bin /data/release_Oct_17
/data/release_Oct_17
-------Starting CDMB--------------------
-------Starting Agent--------------------
-------Starting Provisioner--------------
-------Checking SDK status---------------
hub         6199  1.7  0.7 1004952 15568 pts/2   Sl+  21:41   0:00 ./iotmi_mqtt_proxy -C /data/aws/iotmi/config/iotmi_config.json
Process 'iotmi_mqtt_proxy' is running.
hub         6225  0.0  0.1 301576  2056 pts/2    Sl+  21:41   0:00 ./middleware/AceCommon/bin/ace_eventmgr
Process 'ace_eventmgr' is running.
hub         6234  104  0.2 238560  5036 pts/2    Sl+  21:41   0:38 ./middleware/AceZigbee/bin/ace_zigbee_service
Process 'ace_zigbee_service' is running.
hub         6242  0.4  0.7 1569372 14236 pts/2   Sl+  21:41   0:00 ./zwave_svc
Process 'zwave_svc' is running.
hub         6275  0.0  0.2 1212744 5380 pts/2    Sl+  21:41   0:00 ./DeviceCdmb
Process 'DeviceCdmb' is running.
hub         6308  0.6  0.9 1076108 18204 pts/2   Sl+  21:41   0:00 ./IoTManagedIntegrationsDeviceAgent
Process 'DeviceAgent' is running.
hub         6343  0.7  0.7 1388132 13812 pts/2   Sl+  21:42   0:00 ./iotmi_lpw_provisioner
Process 'iotmi_lpw_provisioner' is running.
------Successfully Started SDK----
```

## Vérifier le provisionnement du hub
<a name="managedintegrations-sdk-v2-cookbook-odm-validation-hub"></a>

Vérifiez que le `iot_provisioning_state` champ `/data/aws/iotmi/config/iotmi_config.json` est défini sur`PROVISIONED`.

## Vérifier le fonctionnement de l'agent
<a name="managedintegrations-sdk-v2-cookbook-odm-validation-agent"></a>

Vérifiez dans le fichier journal les messages de démarrage de l'agent et la réussite de l'initialisation.

```
tail -f -n 100 logs/agent_logs.txt
```

exemple

```
[2024-09-06 02:31:54.413758906][Device_Agent][info] Successfully subscribed to topic: south/bF|gi_044F8821D0193608C8D5BF80858E20A56E3A8490/control
[2024-09-06 02:31:54.513956059][Device_Agent][info] Successfully subscribed to topic: south/bF|gi_044F8821D0193608C8D5BF80858E20A56E3A8490/setup
```

**Note**  
Vérifiez que la `iotmi.db` base de données existe dans votre `artifacts` répertoire.

## Vérifier le fonctionnement du LPW-Provisioner
<a name="managedintegrations-sdk-v2-cookbook-odm-validation-provisioner"></a>

Vérifiez dans le fichier journal les messages de `LPW-Provisioner` démarrage et la réussite de l'initialisation.

```
tail -f -n 100 logs/provisioner_logs.txt
```

Le code suivant en présente un exemple.

```
[2024-09-06 02:33:22.068898877][LPWProvisionerCore][info] Successfully subscribed to topic: south/bF|gi_044F8821D0193608C8D5BF80858E20A56E3A8490/setup
```