Documentation:Synchoserv/fr
Contents
|
Synchronisation entre serveurs OCS maitre/esclaves
Principe de fonctionnement
Depuis la version 1.02, vous pouvez utiliser le paramètre du serveur OCS_OPT_GENERATE_OCS_FILES pour générer automatiquement des fichiers .ocs que vous pourez ensuite "injecter" sur un serveur OCS de plus haut niveau. (dans le cas d'une configuration multi-sites par exemple).
Dans ce cas, vous pouvez utiliser une tâche plannifiée si les deux serveurs sont connectés, ou tout simplement envoyer les fichiers .ocs au serveur de plus haut niveau qui les traitera en local.
| Warning: Cette fonctionnalité vous permet UNIQUEMENT "d'injecter" des inventaires sur un serveur OCS de plus haut niveau. En aucun cas il vous sera possible de déployer sur ces machines de plus bas niveau. |
Schéma simplifié
Prérequis
ocsinventory-injector.pl est un script ayant pour rôle d'envoyer des inventaires à un autre serveur OCS en utilisant les fichiers .ocs générés par l'option -local (ou /local pour les windows)
Vous devez donc disposer :
- de deux serveurs OCS minimum (un maitre, un esclave au minimum)
- d'un répertoire avec les droits d'écriture pour stocker les fichiers .ocs sur le serveur esclave
- d'une tâche cron pour automatiser cette "injection" depuis le serveur esclave
Configuration dans l'interface d'administration
Pour configurer cette fonctionnalité, cliquez sur l'icône Configuration, puis sur Configuration. Enfin, cliquez sur l'onglet Fichiers d'inventaire.
| Warning: N'oubliez pas de créer le répertoire que vous spécifiez pour la variable OCS_FILES_PATH avec des droits en écriture. |
Configuration sur le serveur
Le fichier de configuration se trouve ici :
/etc/apache2/conf.d/z-ocsinventory-server.conf
Vous pouvez vérifier les valeurs ici :
# ===== INVENTORY FILES MAPPING SETTINGS ===== # Use with ocsinventory-injector, enable the multi entities feature PerlSetEnv OCS_OPT_GENERATE_OCS_FILES 1 # Generate either compressed file or clear XML text PerlSetEnv OCS_OPT_OCS_FILES_FORMAT OCS # Specify if you want to keep trace of all inventory between to synchronisation with the higher level server PerlSetEnv OCS_OPT_OCS_FILES_OVERWRITE 0 # Path to ocs files directory (must be writeable) PerlSetEnv OCS_OPT_OCS_FILES_PATH /home/ocs
| Warning: Les valeurs en base de données (GUI) prennent le dessus sur le fichier de configuration, donc pour configurer celà passez par l'interface web et non par ce fichier de configuration. |
Options de ligne de commande
| Options | Options complètes | Significations |
|---|---|---|
| -h | --help | Aide sur la commande |
| -d | --directory | Charger les fichiers .ocs se trouvant dans ce répertoire |
| -f | --file | Charger le fichier spécifique |
| -u | --url | URL de traitement du serveur OCS maitre, par défaut http://ocsinventory-ng/ocsinventory |
| --useragent | User agent HTTP, par défaut OCS-NG_LOCAL_PL_v".VERSION." | |
| -r | --remove | Fichiers injectés supprimés avec succès |
| -m | --msg | Affichier le message retouné par OCSInventory |
| -v | --verbose | Verbosité plus importante |
| --stdin | Lire les données depuis STDIN |
| Note: Vous pouvez spécifier un --file ou un --directory ou STDIN. Le répertoire courant est celui par défaut. |
Exemples
Synchronsation d'un inventaire
perl ocsinventory-injector.pl -v -f myInventory.ocs -u http://ServeurOCSmaitre/ocsinventory
Synchronsation de tous les inventaires d'un répertoire
perl ocsinventory-injector.pl -v -r -d /my/specific/directory -u http://ServeurOCSmaitre/ocsinventory
Tâche Cron
Vous pouvez "injecter" des inventaires automatiquement avec une nouvelle entrée dans le fichier crontab de votre serveur esclave:
##### Toutes les 5 minutes ----- execution de l'injecteur OCS */5 * * * * root perl /usr/src/OCSNG_UNIX_SERVER-1.3.3/binutils/ocsinventory-injector.pl -v -r -d /home/ocs -u http://ServeurOCSmaitre/ocsinventory
Visualisation dans la console d'administration
Vous pouvez facilement déterminer dans la GUI grâce au Type d'agent si une machine est remontée grâce à son agent, ou grâce au script d'injection.

