Newsroom

Inventaire automatisé de parc informatique avec GLPI

Inventaire automatisé de parc informatique avec GLPI

Fusion Inventory


Si vous avez suivi les 2 tutos précédents (ici et ), vous devriez normalement avoir un joli GLPI d’installé sur votre serveur. C’est très bien mais assez minimaliste pour le moment vu que nous n'avons aucune données.

Pour cela nous allons utiliser un petit plugin nommé FusionInventory, ce plugin est certainement le plus connu de GLPI étant donné son rôle fondamental. Son installation et son fonctionnement sont assez simple. Nous allons dans un premier temps installer un plugin qui va réceptionner nos données machines sur notre GLPI puis dans un second temps nous allons déployés un agent sur les différentes machines de notre domaine qui va récolter ces données.

 

Installation du collecteur

L’installation d’un plugin sur GLPI est extrêmement simple. Dans notre console, il faut nous placer dans le répertoire des plugins :
cd /var/www/glpi/plugins

Puis nous allons récupérer le plugin : 

Et dézippons le:
tar –xzvf fusioninventory-for-glpi_0.85+1.1.tar.gz

Maintenant vous pouvez accéder à partir de l’interface de votre GLPI dans l’onglet Configuration -> Plugins à la gestion de tous vos plugins.

Vous n’avez plus qu’à l’installer et à l’activer. Ça y est votre plugin est activé, tout est fin prêt pour la dernière étape mais autant vous prévenir la première était un jeu d’enfant par rapport à ce qui nous attend ^^

Installation de l’agent

Il y a plusieurs manières d’installer l’agent, nous pouvons l’installer poste par poste ou le déployer à partir d’un serveur AD si nous sommes dans un domaine.
Je vous montrerais dans ce tutoriel comment l’installer à partir d’un serveur car ayant utilisé la première solution lors de ma découverte de GLPI je peux vous assurer qu’avec le déploiement en masse, le gain de temps et la rationalisation sont vraiment au rendez-vous.

Nous allons donc à partir de notre serveur déployer une GPO qui va installer l’agent sur tous les postes de notre domaine. 
Ouvrez l’outil de Gestion des stratégies groupes(pour les serveurs 2003, il faut aller regarder dans l’Active Directory) et créer dans votre forêt principal une nouvelle GPO, appelez la ‘GLPI’.

Nous allons faire exécutez à tous les utilisateurs de notre domaine un petit script qui va forcer l’installation de notre agent. Je me suis servi du script situé ici.



Cependant je l’ai un peu modifié après avoir rencontré des petits problèmes. Ce script va détecter si nos OS sont des 32 bits ou des 64 bits, si l’agent est déjà installé, puis on va télécharger l’agent et l’installer. Il va aussi prendre l’adresse de notre serveur GLPI en option pour savoir où envoyer les informations récoltés. Mais cela veut dire que nous allons multipliés le téléchargement de l’agent par le nombre de personnes, de plus rien ne dit que le lien de téléchargement sera toujours pérenne avec les versions qui changent, etc… 

C’est pour cela que j’ai préféré utiliser une solution plus fiable à mon sens. A la racine de mon serveur je fais un dossier partagé qui va contenir 3 choses :
-les fichiers d’installation de mon agent, le x64 et le x86
-mon fichier de script .vbs 

Récupérez donc les deux fichiers(x86 et x64) sur ce site 

Puis faites un partage caché à l’aide du $ à la fin du nom de partage comme ceci : 

partage glpi

Collez-y les deux exécutables.

Script

La pièce maîtresse de toute cette GPO va être notre script, voici le fichier qui va nous servir de base : 
Enregistrer et dézipper ce fichier dans votre dossier partagé à la racine de votre serveur.
Nous allons avoir quelques éléments à modifier.

A la ligne 81 :
‘SetupLocation = \\monserveur\GLPI$\agent-  ‘

A la ligne 99 :
SetupOptions = "/acceptlicense /runnow /server='http://serveur_distant_glpi/plugins/fusioninventory/' /S"

Retournez maintenant dans votre gestionnaire des stratégies de groupes puis faites un clic-droit sur votre stratégie nommée ‘GLPI’ et sélectionnez ‘Modifier’.

Vous allez maintenant dans l’onglet dans : Configuration ordinateur -> Paramètres windows -> Scripts et cliquez sur le lien Modifiez.
how to gpo Dans la fenêtre qui s’affiche donnez le lien vers votre fichier de script .vbs. Évidemment il faut que vous donniez votre chemin réseau pour que tous les utilisateurs puissent y accéder. 

Dans le filtrage de sécurité il vous faudra mettre le groupe pour lequel vous voulez que la GPO s’applique, pour ma part vu que je voulais un inventaire complet de mon réseau j’ai mis Utilisateurs du domaine.

Vous devez maintenant ‘Activez’ votre GPO en faisant un clic droit -> Appliqué puis dans la ligne de commande (cmd) faites un GPUPDATE. Cette commande permet de mettre à jour les GPO de votre système.   

Voilà vous avez fini, au prochain démarrage d’un poste Fusion Inventory va automatiquement être installé. De plus ce plugin va envoyer tous les jours à votre serveur GLPI les informations de vos différentes machines. Vous pouvez paramétrer dans les options de votre plugin Fusion Inventory le délai de la remontée d'information.  

Ce 3e tuto termine la mise en place d’un GLPI + Fusion Inventory dans un environnement Windows de manière optimisée. N’hésitez pas à me poser des questions en cas de problèmes ou de besoin d’éclaircissements…

 

 

Commentaires 34

Guest - Raphaël

le mercredi 27 avril 2016 14:08

Bonjour,

Je pense que ton probleme se situe au niveau du nom du fichier. Si je lis simplement les donnée non commenté :

SetupLocation = "\\glpi\GLPI\fusioninventory-agent_windows-x64_2.3.17-2"
SetupVersion = ""
SetupArchitecture = "Auto"
Setup = "" & SetupArchitecture & "" & SetupVersion & ".exe"

La version x64 de ton fichier se nomme donc : \\glpi\GLPI\fusioninventory-agent_windows-x64_2.3.17-2x64.exe
La version x86 de ton fichier se nomme donc : \\glpi\GLPI\fusioninventory-agent_windows-x64_2.3.17-2x86.exe

je pense que les bon paramettre sont :

SetupLocation = "\\glpi\GLPI\fusioninventory-agent_windows-"
SetupVersion = "2.3.17
SetupArchitecture = "Auto"
Setup = "" & SetupArchitecture & "_" & SetupVersion & ".exe"

Cordialement,

Bonjour, Je pense que ton probleme se situe au niveau du nom du fichier. Si je lis simplement les donnée non commenté : SetupLocation = "\\glpi\GLPI\fusioninventory-agent_windows-x64_2.3.17-2" SetupVersion = "" SetupArchitecture = "Auto" Setup = "" & SetupArchitecture & "" & SetupVersion & ".exe" La version x64 de ton fichier se nomme donc : \\glpi\GLPI\fusioninventory-agent_windows-x64_2.3.17-2x64.exe La version x86 de ton fichier se nomme donc : \\glpi\GLPI\fusioninventory-agent_windows-x64_2.3.17-2x86.exe je pense que les bon paramettre sont : SetupLocation = [b]"\\glpi\GLPI\fusioninventory-agent_windows-"[/b] SetupVersion = [b]"2.3.17[/b] SetupArchitecture = "Auto" Setup = "" & SetupArchitecture & [b]"_"[/b] & SetupVersion & ".exe" Cordialement,

Bonjour,
désolé pour le temps de réponse la semaine dernière était un peu chargée >es séparément, pour l'instant lance juste ton .vbs pour voir si le déploiement se passe bien.
Il est sensé te mettre plusieurs fenêtres d'informations tel que l'architecture, la version du script et au final après 1 petite minute, "Deployement done!"
Si tu arrives jusque là ça veut dire que ton script est ok et donc que c'est dans le déploiement de la GPO effectivement qu'il y a un problème.
Tiens moi au courant si ça marche

Bonjour, désolé pour le temps de réponse la semaine dernière était un peu chargée >es séparément, pour l'instant lance juste ton .vbs pour voir si le déploiement se passe bien. Il est sensé te mettre plusieurs fenêtres d'informations tel que l'architecture, la version du script et au final après 1 petite minute, "Deployement done!" Si tu arrives jusque là ça veut dire que ton script est ok et donc que c'est dans le déploiement de la GPO effectivement qu'il y a un problème. Tiens moi au courant si ça marche ;)

Guest - gwadaboy97169

le jeudi 11 février 2016 12:58

Moi j'ai fait un fichier .bat comme cela et sa fonctionne:

Moi j'ai fait un fichier .bat comme cela et sa fonctionne:

Guest - Skedy

le mercredi 23 mars 2016 22:50

La différence que j'ai pu remarquer entre le cas qui fonctionne et le cas qui ne fonctionne pas dans les commentaires, c'est l'extension ".exe" dans le chemin pour l'installateur... Je pense que c'est à ne pas négliger.

La différence que j'ai pu remarquer entre le cas qui fonctionne et le cas qui ne fonctionne pas dans les commentaires, c'est l'extension ".exe" dans le chemin pour l'installateur... Je pense que c'est à ne pas négliger.

Guest - NicoB

le jeudi 14 avril 2016 14:40

Bonjour,

je pense qu'il manque juste un guillement dans le script :

SetupOptions = "/acceptlicense /runnow /server=http://192.168.1.33/glpi/plugins/fusioninventory/' /S"

après /serveur=:
SetupOptions = "/acceptlicense /runnow /server='http://192.168.1.33/glpi/plugins/fusioninventory/' /S"

Et aussi l'extension .exe comme le dit Skedy.

En esperant que ça puisse aider.

En tous cas, merci pour le tuto.

Bonjour, je pense qu'il manque juste un guillement dans le script : SetupOptions = "/acceptlicense /runnow /server=http://192.168.1.33/glpi/plugins/fusioninventory/' /S" après /serveur=: SetupOptions = "/acceptlicense /runnow /server=[b]'[/b]http://192.168.1.33/glpi/plugins/fusioninventory/' /S" Et aussi l'extension .exe comme le dit Skedy. En esperant que ça puisse aider. En tous cas, merci pour le tuto.

Bonjour,
normalement l'extension .exe est rajouté en dessous à la ligne 102 du script :
' Setup
' The installer file name. You should not have to modify this variable ever.
Setup = "" & SetupArchitecture & "" & SetupVersion & ".exe"

Concernat le guillemet ça n'a pas provoqué d'erreur chez moi mais je vais corriger mon script, merci

Bonjour, normalement l'extension .exe est rajouté en dessous à la ligne 102 du script : ' Setup ' The installer file name. You should not have to modify this variable ever. Setup = "" & SetupArchitecture & "" & SetupVersion & ".exe" Concernat le guillemet ça n'a pas provoqué d'erreur chez moi mais je vais corriger mon script, merci ;)

Guest - Steeven

le lundi 2 mai 2016 11:08

Bonjour,

J'ai suivis les differents solution je suis sur un serveur 2008 et 2012 mais je n'arrive toujour pas a lancé l'installation sur mon parc.
Meme quand je lance le script sur un poste il lance pas l'installation.

Bonjour, J'ai suivis les differents solution je suis sur un serveur 2008 et 2012 mais je n'arrive toujour pas a lancé l'installation sur mon parc. Meme quand je lance le script sur un poste il lance pas l'installation.

Bonjour Steeven,
Concernant ton erreur est ce que tu as essayé d'activé l'option Verbose à 'Yes' dans ton script pour voir où est ce que ça coince?
Une fois que tu l'as activé relance ton script et normalement tu devrais avoir plus d'informations.
Tiens moi au courant si t'as de nouvelles infos

Bonjour Steeven, Concernant ton erreur est ce que tu as essayé d'activé l'option Verbose à 'Yes' dans ton script pour voir où est ce que ça coince? Une fois que tu l'as activé relance ton script et normalement tu devrais avoir plus d'informations. Tiens moi au courant si t'as de nouvelles infos ;)

Guest - Steeven

le lundi 2 mai 2016 14:21

Oui l'option verbose etait déja activé et pourtant toujour rien

Oui l'option verbose etait déja activé et pourtant toujour rien

Il n'affiche même pas une fenêtre d'erreur?
Si je télécharge le script de l'article et que je rajoute juste l'option verbose, j'ai une fenêtre qui s'affiche...
J'ai testé sur 2 postes différents et à chaque fois j'ai quelques chose qui s'affiche.

Il n'affiche même pas une fenêtre d'erreur? Si je télécharge le script de l'article et que je rajoute juste l'option verbose, j'ai une fenêtre qui s'affiche... J'ai testé sur 2 postes différents et à chaque fois j'ai quelques chose qui s'affiche.

Guest - Steeven

le lundi 2 mai 2016 14:42

la fenetre se referme tout suite quand je la lance.

la fenetre se referme tout suite quand je la lance.

Bonjour,
essaye de regarder du côté du script initial : http://fusioninventory.org/documentation/agent/installation/windows/large_install.html
A la base mon script est tiré d'ici mais j'ai effectué des modifications dessus.
Regarde si celui de base marche mieux.

Bonjour, essaye de regarder du côté du script initial : http://fusioninventory.org/documentation/agent/installation/windows/large_install.html A la base mon script est tiré d'ici mais j'ai effectué des modifications dessus. Regarde si celui de base marche mieux.

Guest - Steeven

le vendredi 6 mai 2016 10:07

Hello,
Donc je suis allé sur le site j'ai testé les différents scripte en modifiant l’adresse IP, lien du dossier etc...
Et toujours rien peut être que c'est moi qui formule mal donc je voudrais savoir si quelqu’un pourrait me faire un script avec les élément que je vais lui donné.
Donc mon GLPI version 0.90.2I est installé sur debian 7 avec la derniers version de Fusion Inventory 2.3.17
IP: 172.16.1.121

L’adresse des serveur active directory
serveur : 2003:172.16.1.2
serveur : 172.16.1.28
J'ai crée un dossier de partage qui s'appel Deploy et partagé avec le "$" dans se dossier il y a les deux fichier exe en x64 et x86

Donc voila mes pré-requis quelqu'un aurait-il la solution a mon problème?

Hello, Donc je suis allé sur le site j'ai testé les différents scripte en modifiant l’adresse IP, lien du dossier etc... Et toujours rien peut être que c'est moi qui formule mal donc je voudrais savoir si quelqu’un pourrait me faire un script avec les élément que je vais lui donné. Donc mon GLPI version 0.90.2I est installé sur debian 7 avec la derniers version de Fusion Inventory 2.3.17 IP: 172.16.1.121 L’adresse des serveur active directory serveur : 2003:172.16.1.2 serveur : 172.16.1.28 J'ai crée un dossier de partage qui s'appel Deploy et partagé avec le "$" dans se dossier il y a les deux fichier exe en x64 et x86 Donc voila mes pré-requis quelqu'un aurait-il la solution a mon problème?

Les deux seules lignes à modifier sont les lignes :
-SetupLocation où est situé ton partage avec tes deux exécutables;
-SetupOptions où est marqué l'adresse de ton serveur GLPI.
Je ne peux pas te faire un script personnalisé juste avec tes adresse ips, je ne sais pas le chemin de ton partage ni sur lequel de tes serveurs il est effectué.
Est ce que si tu lances l’exécutable de ton partage à la main, il fonctionne bien.
L'erreur peut venir de plusieurs choses, les droits sur le partage, l'adresse ip,etc...
L'autre test que je ferais pour voir si le problème vient de ton ordinateur ou du script serait de le tester sur un autre ordinateur.
Bonne journée.

Les deux seules lignes à modifier sont les lignes : -SetupLocation où est situé ton partage avec tes deux exécutables; -SetupOptions où est marqué l'adresse de ton serveur GLPI. Je ne peux pas te faire un script personnalisé juste avec tes adresse ips, je ne sais pas le chemin de ton partage ni sur lequel de tes serveurs il est effectué. Est ce que si tu lances l’exécutable de ton partage à la main, il fonctionne bien. L'erreur peut venir de plusieurs choses, les droits sur le partage, l'adresse ip,etc... L'autre test que je ferais pour voir si le problème vient de ton ordinateur ou du script serait de le tester sur un autre ordinateur. Bonne journée.

Guest - Stephane

le mercredi 11 mai 2016 09:03

Bonjour,

Mon projet actuel traite de l'installation d'un serveur Debian 8.4, d'un deploiement glpi + Fusioninventory + ldap.
Moi le script fonctionne mais j'ai quelques interrogations :
- Pour le déploiement sur des postes hors serveur AD, Est ce que J'indique mon ip web et mon port d'entrée au lieu de l'ip serveur dans la ligne Setup options ?
SetupOptions = "/acceptlicense /runnow /server='http://x.x.x.x:10000/glpi/plugins/fusioninventory/' /S"

- Je souhaiterais également que la fenêtre d'installation de l'agent Windows n'apparaisse pas et s'installe en arrière plan, comment faire svp ?
Merci pour ce sujet, et pour toutes vos réponses qui me font avancer.
Bonne journée.

Bonjour, Mon projet actuel traite de l'installation d'un serveur Debian 8.4, d'un deploiement glpi + Fusioninventory + ldap. Moi le script fonctionne mais j'ai quelques interrogations : - Pour le déploiement sur des postes hors serveur AD, Est ce que J'indique mon ip web et mon port d'entrée au lieu de l'ip serveur dans la ligne Setup options ? SetupOptions = "/acceptlicense /runnow /server='http://x.x.x.x:10000/glpi/plugins/fusioninventory/' /S" - Je souhaiterais également que la fenêtre d'installation de l'agent Windows n'apparaisse pas et s'installe en arrière plan, comment faire svp ? Merci pour ce sujet, et pour toutes vos réponses qui me font avancer. Bonne journée.

Bonsoir,
oui si tu ne passes par un partage réseau il est tout à fait possible d'indiquer une adresse ip au lieu de ton serveur, l'adresse du script de base etait celle-ci : http://prebuilt.fusioninventory.org/stable/windows-i386/
Je l'ai juste modifié pour éliminer des sources possibles d'erreurs et ne pas avoir à retélécharger à chaque fois l'executable.

Moi je l'ai fait via une GPO sur mon serveur AD qui lance automatiquement le script en arrière plan sans rien demander à l'utilisateur mais si tu dis que tu veux le déployer sur des postes en dehors de ton AD je suppose que ça ne correspond pas...

Bonsoir, oui si tu ne passes par un partage réseau il est tout à fait possible d'indiquer une adresse ip au lieu de ton serveur, l'adresse du script de base etait celle-ci : http://prebuilt.fusioninventory.org/stable/windows-i386/ Je l'ai juste modifié pour éliminer des sources possibles d'erreurs et ne pas avoir à retélécharger à chaque fois l'executable. Moi je l'ai fait via une GPO sur mon serveur AD qui lance automatiquement le script en arrière plan sans rien demander à l'utilisateur mais si tu dis que tu veux le déployer sur des postes en dehors de ton AD je suppose que ça ne correspond pas...

Guest - Elie

le dimanche 22 mai 2016 14:21

Bonjour,
Alors moi le petit soucis c'est que mon vbs se lance niquel mais il ne m'installe rien ..
Voila les lignes que j'ai modifié ( Mon Serveur GLPI est en 192.168.1.28 . Le nom du pc sur lequel je test mon vbs c'est modèle-PC et les deux dossiers fusion.exe son sur mon bureau dans un dossier GLPI )
SetupLocation = "\\modèle-PC\D:\GLPI\fusioninventory-agent_windows"
SetupVersion = "2.3.17"
SetupArchitecture = "Auto"
SetupOptions = "/acceptlicense /runnow /server='http://192.168.1.28/glpi/plugins/fusioninventory/' /S"
Force = "Yes"
Verbose = "Yes"
Et j'ai recommenté cette ligne 'SetupLocation = "http://freefr.dl.sourceforge.net/project/fiawi/2.3.x/2.3.0"

Merci en avance de votre réponse

Bonjour, Alors moi le petit soucis c'est que mon vbs se lance niquel mais il ne m'installe rien .. Voila les lignes que j'ai modifié ( Mon Serveur GLPI est en 192.168.1.28 . Le nom du pc sur lequel je test mon vbs c'est modèle-PC et les deux dossiers fusion.exe son sur mon bureau dans un dossier GLPI ) SetupLocation = "\\modèle-PC\D:\GLPI\fusioninventory-agent_windows" SetupVersion = "2.3.17" SetupArchitecture = "Auto" SetupOptions = "/acceptlicense /runnow /server='http://192.168.1.28/glpi/plugins/fusioninventory/' /S" Force = "Yes" Verbose = "Yes" Et j'ai recommenté cette ligne 'SetupLocation = "http://freefr.dl.sourceforge.net/project/fiawi/2.3.x/2.3.0" Merci en avance de votre réponse

Bonjour,
le problème peut venir de plusieurs endroits, est ce que tu es sûr que ton partage est bien actif et configuré avec les bon droits?
Est ce que la variable Setup qui ressemble à cela chez moi correspond bien :
Setup = "fusioninventory-agent_windows-" & SetupArchitecture & "_" & SetupVersion & ".exe"
Est ce que tu as au moins des popups qui s'affichent lors de l'installation?
Et si cela n'est pas le cas est ce qu'au moins tu as une entrée dans ta table de registre dans HKEY_LOCAL_MACHINE -> Software -> FusionInventory-Agent?
Bon courage

Bonjour, le problème peut venir de plusieurs endroits, est ce que tu es sûr que ton partage est bien actif et configuré avec les bon droits? Est ce que la variable Setup qui ressemble à cela chez moi correspond bien : Setup = "fusioninventory-agent_windows-" & SetupArchitecture & "_" & SetupVersion & ".exe" Est ce que tu as au moins des popups qui s'affichent lors de l'installation? Et si cela n'est pas le cas est ce qu'au moins tu as une entrée dans ta table de registre dans HKEY_LOCAL_MACHINE -> Software -> FusionInventory-Agent? Bon courage ;)

Bonjour

Je crois avoir trouvé la problématique.En fait en activant le verbose je me suis aperçu dans le popup qu'il cherchait un fichier "fusioninventory-agent_windows-x862.3.17.exe" et non "fusioninventory-agent_windows-x86_2.3.17".
Il suffit de forcer "_" dans la ligne du SetupVersion = """ ==> SetupVersion=_2.3.17.
Et là miracle le script s'execute.
Par contre,malgré la bonne install de l'agent (présence de la cle de registre) le pc de remonte pas dans mon inventaire.Y aurait-il d'autres lignes à modifier concernant ce "_"?

Bonjour Je crois avoir trouvé la problématique.En fait en activant le verbose je me suis aperçu dans le popup qu'il cherchait un fichier "fusioninventory-agent_windows-x862.3.17.exe" et non "fusioninventory-agent_windows-x86_2.3.17". Il suffit de forcer "_" dans la ligne du SetupVersion = """ ==> SetupVersion=_2.3.17. Et là miracle le script s'execute. Par contre,malgré la bonne install de l'agent (présence de la cle de registre) le pc de remonte pas dans mon inventaire.Y aurait-il d'autres lignes à modifier concernant ce "_"?

Normalement non.
Est ce que tu es sur que ton chemin vers ton serveur GLPI est bien configuré.
Après il faudrait aussi faire un test en lançant un inventaire manuel , il faut aller dans :
C:\Program Files\FusionInventory-Agent là tu as un fichier fusioninventory-agent.bat
Lance le en tant qu’administrateur pour être sur d'avoir les droits et regarde si ton poste remonte.
I faut parfois attendre quelques minutes pour que le poste remonte dans GLPI.

Normalement non. Est ce que tu es sur que ton chemin vers ton serveur GLPI est bien configuré. Après il faudrait aussi faire un test en lançant un inventaire manuel , il faut aller dans : C:\Program Files\FusionInventory-Agent là tu as un fichier fusioninventory-agent.bat Lance le en tant qu’administrateur pour être sur d'avoir les droits et regarde si ton poste remonte. I faut parfois attendre quelques minutes pour que le poste remonte dans GLPI.
Pas encore de commentaire
avatar du commentateur
Guest
dimanche 15 mai 2022

Image Captcha

captcha

By accepting you will be accessing a service provided by a third-party external to https://www.pulsar-agency.com/