Afin d'avoir des données propres et à jour, nous avons besoin de nous connecter aux bases de données des collectivités. Cela nous permet de requêter sur vos données métier pour produire des tableaux de bords. La mise en place demande entre 1H et 2H heure avec la DSI.
1 ) Mise en place d'une machine virtuelle
Nous avons besoin d'une machine virtuelle dans le réseau de la collectivité avec les caractéristiques suivantes :
- Ubuntu Server 22.04 LTS
- Accès HTTPS sortant
- Accès entrant SSH depuis : 217.182.141.80
- 40 Go de stockage
- 8 Go de RAM
- 1 GHz pour le processeur
- Un utilisateur protégé par un mot de passe
Si besoin, vous pouvez télécharger l'ISO d'Installation d'Ubuntu Server 22.04 ici
Une fois la machine virtuelle installée, vous devriez nous transmettre :
- L'ip et le port de la machine virtuelle
- Le login et le mot de passe d'un l'utilisateur avec accès root
2 ) Création d'utilisateur sur les bases de données
Une fois la machine virtuelle installée, il faut créer, pour chaque base de données métier, un utilisateur ayant accès aux données. Ainsi, pour tous les logiciels métiers, nous avons besoin d'un utilisateur en lecture seule, et ayant accès à toutes les tables du schéma contenant les données.
Voici un script que vous pouvez lancer depuis un shell SQL ayant un accès administrateur :
-- Création du compte utilisateur.
-- /!\ modifier le mot de passe
CREATE USER manty IDENTIFIED BY "<password>";
-- Permission de créer une session et de stocker des résultats
GRANT CONNECT TO manty;
GRANT CREATE SESSION TO manty;
GRANT UNLIMITED TABLESPACE TO manty;
-- Permission de lire les tables de la base.
-- /!\ modifier le nom du schema
BEGIN
FOR x IN (SELECT * FROM all_tables WHERE owner='<schema>')
LOOP
EXECUTE IMMEDIATE 'GRANT SELECT ON <schema>.' || x.table_name || ' TO manty';
END LOOP;
END;
/
➕ Pour en savoir plus : Comment ajouter un utilisateur en lecture seule ?
Une fois fait les utilisateurs créés, il faudra nous transmettre :
- Le nom de compte et le mot de passe de l'utilisateur
- L'adresse ip et le port de connexion de la base de donnée
- Le langage de la base de donnée (Oracle, SQL Server, My SQL, Postgres ...)
- L'heure à laquelle nous pouvons extraire les données, cela ne doit pas rentrer en conflit avec des sauvegarde ni des utilisations intensives de Manty. Généralement nous faisons cette opération tous les jours à 18h.
ℹ️ Pour les bases Oracle, toutes les informations en dehors du login et du mot de passe sont contenus dans la chaîne de connexion DSN, contenue dans le fichier tnsnames.ora
Checklist d’installation
- Adresse IP et port de la machine virtuelle accessible en SSH depuis 217.182.141.80
- Nom d’utilisateur et mot de passe d’accès à la machine virtuelle
Pour chaque logiciel à intégrer :
- Login et mot de passe d'accès à la base
- Chaîne DSN de connexion à la base (Oracle) ou adresse et port de la base de donnée
3) Mise en place de la plateforme (coté Manty)
Que va t'il se passer ensuite ?
Nous allons :
- nous connecter en SSH sur la machine virtuelle,
- créer un utilisateur spécifique manty_vm,
- installer les paquets nécessaires à la bonne exécution de l'extraction (python et docker par exemple) ,
- télécharger le code d'extraction, ce code est régulièrement mis à jour et permet d'envoyer de façon sécurisée par HTTPS les données harmonisées et anonymisées au serveur Manty chez OVH,
- paramétrer les extractions (heure d'extraction, autorisation d'accès depuis notre serveur et autres paramétrages initiaux),
- créer votre espace client sur Manty, il sera disponible sur l'adresse votre-ville.manty.eu ,
- importer des tableaux de bords métiers qui correspondent aux cas d'usages de collectivités,
- lancer les premières extractions, en fonction de la taille de la base de donnée, cela peut prendre jusqu'à plusieurs heures, il se peut que nous attendions la fin de semaine afin d'être sûr de ne pas perturber une quelconque sauvegarde.
- Envoyer le lien de la plateforme et un Welcome Pack à tous les utilisateurs, ils auront accès à la plateforme, aux tutoriaux et aux tableaux de bords confectionnés par nos soins !
Pour tout problème ou interrogation technique, n'hésitez pas à nous contacter via notre module de conversation en bas à droite de cette page ↘️ 🙂