M1 Préparation de l'intervention
Objectif : disposer du matériel, d'une fiche de site remplie et vérifiée, et d'une demande de validation d'enrôlement déposée auprès d'IoBase.
Cette voie configure une passerelle depuis l'état d'usine, et produit le fichier de référence qui servira aux suivantes. Si ce fichier existe déjà, la mise en service tient en une page : Installation rapide.
Matériel
| Câble Ethernet | En atelier, pour les chapitres M2 à M4. |
|---|---|
| Antenne | Part sur site avec la passerelle. Se visse sur le connecteur MAIN. |
| Carte SIM M2M | Activée avant M2, chez un opérateur qui déploie le Cat M1. |
| Aimant | Part sur site. Réveil des capteurs Asystom. |
| Poste d'administration | Outillé selon la liste ci-dessous. |
| Support de relevé | Sur site : emplacement de chaque capteur et point surveillé. |
Outillage du poste d'administration
M2 se fait dans un navigateur, depuis n'importe quelle machine. M3 et M4 demandent un poste outillé :
bash, curl, tar | Présents sur Linux et macOS. |
|---|---|
git | Uniquement si le dossier de mise en service est remis par accès Git. |
python3 | Version 3.6 ou plus. |
sshpass | À installer. La passerelle s'authentifie par mot de passe. |
ssh | OpenSSH 8.5 ou plus. |
| Accès au dépôt | Dépôt privé. Voir la section suivante. |
Un poste Windows sans WSL n'exécute ni M3 ni M4. Prévoir une machine Linux
ou macOS. Avec un OpenSSH antérieur à 8.5, les scripts s'arrêtent sur Bad
configuration option.
Fiche de site
Douze valeurs. Elles constituent les fichiers config/<site>.env et
config/<site>.balises.json.
Deux systèmes distincts y apparaissent, et la passerelle parle aux deux :
| IoBase | La plateforme de données de l'exploitant, éditée par Indabox. Elle reçoit et stocke les mesures de tous les capteurs, quelle que soit leur marque, ainsi que l'état de santé de la passerelle. C'est elle qui exige un enrôlement. Détail en T3. |
|---|---|
| Asystom Advisor | La plateforme du fabricant Asystom, spécialisée dans l'analyse vibratoire. Elle ne reçoit que les trames des capteurs Asystom, en plus de l'envoi vers IoBase, et sert aussi à leur transmettre des commandes. Détail en T4. |
| Valeur | Qui la fournit | Utilisée en |
|---|---|---|
| Nom de la passerelle | à définir, explicite et unique | M3 |
| Mot de passe d'administration | à définir | M2.2 puis M3 |
| Deux mots de passe du cockpit | à définir, longs et distincts | M3 |
| APN de la carte SIM | l'opérateur | M2.3 |
| Adresse de la passerelle sur le site | le responsable réseau du site | M2.5 puis M3 |
| Clé pré-partagée, hôte et sous-réseau distants du tunnel | l'exploitant, si le site en dispose | M2.6 |
| URL, réseau, client et authentification d'Asystom Advisor | Asystom | M3 |
| Hôte, identifiant et clé du service d'authentification | IoBase | M3 |
| AppEUI des capteurs non-Asystom | le fabricant des capteurs | M3 |
| DevEUI et AppKey de chaque capteur | étiquettes des capteurs | M4 |
| Site, source de données, modèle d'équipement, métriques | IoBase | M4, par capteur |
Installer le dossier de mise en service
Le dossier de mise en service contient tout ce qui sera installé dans la passerelle, ainsi que les commandes des chapitres M3 et M4. Il est remis par le fournisseur, soit sous forme d'archive, soit par un accès au dépôt Git.
Toutes les commandes de cette documentation se tapent dans un terminal : l'application Terminal sur macOS, l'émulateur de la distribution sous Linux.
- Ouvrir un terminal.
- Vérifier que les outils nécessaires répondent. Chaque ligne doit afficher un numéro de
version :
git --version python3 --version curl --version ssh -V sshpass -VUne ligne qui répond
command not foundsignale un outil absent. Le faire installer avant de poursuivre. - Créer le répertoire de travail et s'y placer :
mkdir -p ~/cloudgate-sites cd ~/cloudgate-sites - Installer le dossier de mise en service, selon ce qui a été remis.
- Archive : la décompresser dans ce répertoire.
- Accès Git :
git clone <adresse remise par le fournisseur>
- Entrer dans le dossier et vérifier qu'il est complet. La commande doit lister au moins
config,flow,scriptsetdocs:cd cloudgate ls
Créer le fichier du site
Chaque site a son propre fichier de configuration, qui reçoit les valeurs de la fiche ci-dessus.
- Choisir un nom de site : minuscules, sans espace ni accent. Il apparaîtra dans chaque
commande. Exemple :
mon-site. - Créer le fichier du site à partir du modèle fourni :
cp config/exemple.env config/mon-site.env - Ouvrir
config/mon-site.envdans un éditeur de texte et renseigner chaque ligne à partir de la fiche de site. Le fichier décrit ce qui est attendu pour chaque valeur. - Pour déclarer les capteurs dès maintenant plutôt qu'au chapitre M4 :
puis renseigner une entrée par capteur.cp config/balises.modele.json config/mon-site.balises.json
Ces deux fichiers contiennent les mots de passe du site et les clés des capteurs. Ils restent sur ce poste et dans les sauvegardes du site. Ils ne sont jamais transmis avec le dossier de mise en service.
Prévenir l'administrateur d'IoBase
IoBase n'accepte pas une passerelle inconnue. Avant de lui délivrer ses identifiants, la plateforme exige qu'une personne habilitée reconnaisse l'équipement dans son interface. Cette validation est un geste humain, fait chez l'exploitant, et rien ne la remplace.
Le déroulé est le suivant :
- En M3.6, la commande
registerdéclare la passerelle et obtient un code d'attente. - L'équipement apparaît alors dans l'interface d'IoBase, en attente de validation.
- Un administrateur l'ouvre, menu Services et équipements, puis clique sur Valider l'équipement.
- La commande
tokenobtient enfin les identifiants. Avant la validation, elle répond une erreur d'attente.
Rien de tout cela ne se fait en M1. Ce qui se fait ici, c'est de s'assurer qu'il y aura quelqu'un au bout :
- Identifier, chez l'exploitant, la personne disposant d'un compte administrateur IoBase pour ce site.
- L'informer de la date d'intervention, et de l'équipement qui apparaîtra sous le nom de passerelle choisi dans la fiche de site.
- Convenir d'un moyen de la joindre le jour venu.
Tant que la validation n'est pas donnée, la passerelle est configurée et
n'envoie rien. Le délai s'est déjà compté en jours sur ce projet. Relancer
register pendant l'attente annule le code en cours et exige une nouvelle
validation : l'attente repart de zéro.
Contrôles avant de commencer
- Vérifier que le terminal se trouve dans le dossier de mise en service. La réponse
doit se terminer par
/cloudgate:pwd - Préparer le fichier qui sera installé dans la passerelle :
La réponse commence parpython3 flow/build.py mon-siteflux assemblé →. Rien n'est envoyé à la passerelle à ce stade.Si la réponse est
valeurs absentes de la configuration :suivie d'un ou plusieurs noms, ces lignes du fichier de site sont vides. Les compléter, puis relancer la commande. - Vérifier que l'administrateur IoBase est prévenu de la date d'intervention.
- Vérifier que les capteurs sont présents, avec leurs étiquettes lisibles.