gblend-1
Accueil du site > Docs > Réseau > OCS inventory NG + GLPI

OCS inventory NG + GLPI

Publié le mardi 30 mai 2006, mis a jour le samedi 28 juillet 2007, par Stephane Malinet

Cette documentation a pour but l’installation de OCS inventory NG couplé à GLPI.


Introduction

Premièrement je dois préciser que cette documentation a été établie par Gael Durando.

L’inventaire, qu’il soit matériel ou logiciel, est une des préocupations les plus importantes de tout gestionnaire de parc informatique.

Pour ce faire, le monde du libre possède ses outils : OCS Inventory Next Generation et GLPI. Ce ne sont, certes, pas les seuls mais a priori les plus complets.

Dans ce qui suit, les installations se feront sur une seule machine, mais, dans un parc atteignant les 5000 clients, il est fortement conseillé d’utiliser au moins 2 serveurs afin de réduire la charge.

Serveur de données

Commençons par installer dev-db/mysql dans sa version 4.1 ou supérieure :

# USE="berkdb perl ssl latin1" emerge -av dev-db/mysql

Initialisez le système de gestion de base de données :

# /usr/bin/mysql_install_db

Lancez le démon et mettez le au runlevel default :

# /etc/init.d/mysql start
# rc-update -a mysql default

Définissez le mot de passe root mysql :

# /usr/bin/mysqladmin –u root password <motdepasse>

Serveur d’administration

Le serveur d’administration va vous permettre d’intérroger la base de données d’OCS Inventory NG. Installons donc net-www/apache :

# USE="apache2 ssl" emerge –av net-www/apache \
www-apache/mod_perl

Attention : Surtout ne pas utiliser USE=threads pour la compilation d’apache, car cela vous obligera à recompiler les paquets dev-lang/perl et sys-devel/libperl avec USE=ithreads, rendant ainsi certains modules perl incompatibles avec les scripts d’OCS Inventory NG.

Installez dev-lang/php :

# USE="apache2 berkdb bzip2 \
cli expat gd memlimit mysql nls \
pcre session ssl xml xsl zip zlib" \
emerge -av =dev-lang/php-4.* dev-lang/php

Assurez-vous d’utiliser la version 4 de php :

# php-select php php4

Modifiez le fichier /etc/conf.d/apache2 afin qu’apache prenne en compte le language perl et php :

[/etc/conf.d/apache2]
APACHE2_OPTS=”-D DEFAULT_VHOST –D SSL –D PHP4 –D SSL_DEFAULT_VHOST
–D PERL"

lancez apache et mettez-le au runlevel default :

# /etc/init.d/apache2 start
# rc-update -a apache2 default

Serveur de communication

Pour le bon fonctionement du serveur de communication installez les modules perl suivants :

# emerge –av dev-perl/libwww-perl dev-perl/XML-Simple \
dev-perl/Compress-Zlib dev-perl/DBI \
dev-perl/DBD-mysql dev-perl/Apache-DBI

Attention : Dans le cas des changements de versions de perl, lancez la commande perl-cleaner allmodules.

Pour l’utilisation de l’option ipdiscover depuis l’interface d’administration :

# emerge -av dev-perl/Net-IP

Si dans votre parc vous avez des win-win ( ;-) ), vous aurez besoin de nmblookup :

#emerge –av net-fs/samba

Mais aussi nmap :

# emerge -av net-analyzer/nmap

Attention : Si vous utilisez l’option de compilation USE=unicode dans dev-perl/HTML-parser, vous devez installer XML-SAX-PurePerl avec cet ebuild.

Installtion d’OCS Inventory NG

Téléchargeons les archives sur le site http://ocsinventory.sourceforge.net , décompressez-les et patchez-les :

# tar -xvzf OCSNG_LINUX_SERVER_1.0-RC2-FINAL.tar.gz
# tar OCSNG_PATCH_SERVER_RC2-1.tar.gz
# cp OCSNG_PATCH_SERVER_RC2-1/ocsreports/preferences.php \
OCSNG_LINUX_SERVER_1.0-RC2/ocsreports/
# cp OCSNG_PATCH_SERVER_RC2-1/Ocsinventory.pm_4_mp_since_1.999_22/Ocsinventory.pm \
OCSNG_LINUX_SERVER_1.0-RC2/ocsinventory-NG/
# cp OCSNG_LINUX_SERVER_1.0-RC2/ipdiscover-util/ipdiscover-util.pl \
OCSNG_LINUX_SERVER_1.0-RC2/ocsreports/

Installez les scripts php et modifiez les droits comme suit :

# cp -r OCSNG_LINUX_SERVER_1.0-RC2/ocsreports \
/var/www/localhost/htdocs
# chown –R root:apache /var/www/localhost/htdocs/ocsreports
# chmod gu+w /var/www/localhost/htdocs/ocsreports
# chmod gou+rx /var/www/localhost/htdocs/ocsreports/css
# chmod gou+rx /var/www/localhost/htdocs/ocsreports/files
# chmod gou+rx /var/www/localhost/htdocs/ocsreports/image
# chmod gou+rx /var/www/localhost/htdocs/ocsreports/languages

Installons les scripts propre au serveur de communication :

# cp -r OCSNG_LINUX_SERVER_1.0-RC2/ocsinventory-NG /usr/local

Modifiez-y le fichier Ocsinventory_startup.pl :

use lib "/usr/local/ocsinventory-NG";
use XML::Simple;
use Compress::Zlib;
use Apache::DBI;
use DBI;
use Net::IP;
1;

Maintenant, configurez et chargez OCS Inventory NG comme un module d’apache :

# cp /usr/local/ocsinventory-NG/apache_config \
/etc/apache2/modules.d/99_ocsinventory-NG.conf

Modifiez le fichier /etc/apache2/modules.d/99_ocsinventory-NG.conf en y modifiant ce qui suit :

[/etc/apache2/modules.d/99_ocsinventory-NG.conf]
<IfDefine OCSNG>
PerlRequire /usr/local/ocsinventory-NG/Ocsinventory_startup.pl
[...]
</IfDefine>

Puis/etc/conf.d/apache2 :

[/etc/conf.d/apache2]
APACHE2_OPTS=”[...]-D OCSNG [...]"

Créez le repertoire des logs d’OCS Inventory NG :

# mkdir /var/log/ocsinventory-NG
# chown apache:apache /var/log/ocsinventory-NG

Ensuite redémarrez apache :

# /etc/init.d/apache2 restart

Avec votre navigateur web, connectez-vous à http://ip_serveur/ocsreports, et renseignez les différents champs. Pour la première connexion les login et mot de passe sont admin : pensez à les modifier.

Installation de GLPI

Téléchargez depuis le site http://glpi-project.org/ l’archive correspondant à la dernière version stable et décompressez-là sur votre serveur web :

# tar zxvf glpi-<version>.tar.gz -C /var/www/localhost/htdocs/

Augmentez la mémoire allouée à l’exécution des scripts php en modifiant le fichier /etc/php/apache2-php4/php.ini comme suit :

memory_limit = 16M

modifiez les propriétaires et droits de certains repertoire pour le bon fonctionement de GLPI :

# chown apache:apache /var/www/localhost/htdocs/glpi/backups/dump
# chmod 700 /var/www/localhost/htdocs/glpi/backups/dump
# chown apache:apache /var/www/localhost/htdocs/glpi/docs
# chmod 700 /var/www/localhost/htdocs/glpi/docs
# chown apache:apache /var/www/localhost/htdocs/glpi/glpi/config
# chmod 700 /var/www/localhost/htdocs/glpi/glpi/config

Toujours avec votre navigateur web, allez sur http://ip_serveur/glpi et procédez à la création de la base de données. Pour une première connexion, les login et mot de passe sont glpi... Une fois connecté, allez dans Administration, Configuration, et activez le mode OCSNG.

Installation d’un client Linux

Tout d’abord installons les modules perl nécéssaires au client :

# emerge -av dev-perl/libwww-perl dev-perl/XML-Simple \
dev-perl/Compress-Zlib dev-perl/Net-IP

Puis télécharger sur le site http://ocsinventory.sourceforge.net le client Linux, décompressez l’archive et éxecutez le script ocsinventory-installer.pl. Choisissez l’option http, entrez l’adresse IP du serveur, activez ou non l’auto-update, vous pouvez ensuite laisser l’option tag qui est facultative.

Allez vérifier, via l’interface d’administration d’OCS Inventory NG, que la machine est bien rentrée dans la base, si c’est le cas, il ne vous reste plus qu’à l’importer via l’interface de GLPI.

Liens

 GLPI

 OCS Inventory NG

Remerciements

Je remercie en particulier Gael Durando qui est l’auteur originel de cette documentation.


Suivre la vie du site RSS 2.0 | Plan du site | Espace privé | SPIP | squelette