Table des matières

,

FOG

FOG est une application open-source sous licence GPL de gestion d'images disques permettant le déploiement de stations via PXE. Ça permet par exemple d'éviter d'avoir à réinstaller et configurer un poste utilisateur pour chaque nouvel arrivant dans votre entreprise ou sur votre réseau en général. Il suffit de déployer une image que l'on souhaite sur le poste et il sera immédiatement prêt à l'utilisation. FOG permet d'imager plusieurs stations en même temps ce qui permet de gagner énormément de temps.

Pré-requis

Version fog_0.32 fonctionne à merveille sous ubuntu 12.10.

Installation

Pour installer ce logiciel récupérez l'archive de la dernière version et décompressez-la où vous le souhaitez, puis lancez le script d'installation se trouvant dans le répertoire extrait :

wget http://sourceforge.net/projects/freeghost/files/fog_0.32.tar.gz
sudo tar -xvzf fog*
cd fog*
cd bin
sudo ./installfog.sh

Cet exemple est basé sur une installation fraîche d'Ubuntu sur un serveur dédié à FOG. Le script d'installation utilisant Apache et Mysql, si vous avez déjà des instances en cours d'utilisation ou dont vous souhaitez garder la configuration, n'utilisez pas ce script (ou alors faites des sauvegardes de vos configs et modifiez ensuite selon vos besoins). FIXME: L'installation sur un serveur servant déjà de serveur web n'a pas été testée par le rédacteur de cette page, donc le comportement du script dans ce cas n'est pas encore connu. A priori (et le script met en garde au début), les configurations suivantes seraient perdues : “DHCP, apache, pxe, tftp, et NFS”.

Le script va alors vous demander tout un tas de paramètres. Tout d'abord sélectionnez ubuntu comme distribution (donc la 2), ensuite il va vous demander si vous souhaitez faire une installation en mode normal ou en mode stockage. Le mode stockage est uniquement prévu pour stocker des images, donc si vous souhaitez l'application complète faites la en mode normal (donc N). Entrez l'IP du serveur, puis indiquez si vous souhaitez spécifier l'adresse d'un routeur pour le serveur DHCP ou non. Indiquez si vous souhaitez spécifier l'adresse d'un DNS pour le serveur DHCP ou non. Indiquez si vous souhaitez changer l'interface par défaut. En temps normal non mais pour un serveur étant sur plusieurs VLAN ça peut être utile. Indiquez si vous souhaitez utiliser le serveur en tant que DHCP ou non.

Si vous ne configurez pas votre serveur en DHCP, il faudra indiquer au routeur que les demandes PXE doivent être redirigées vers le serveur.

Installez des langages supplémentaires si vous le désirez, puis validez la configuration de l'installation. Durant l'installation il va vous demander le mot de passe root mysql (à retenir !), puis il vous demandera si vous souhaitez dire à l'équipe de FOG qu'ils sont géniaux (à votre bon coeur), et ça sera terminé pour la partie “terminal”.

Un utilisateur appelé “Fog” sera créé automatiquement avec un mot de passe aléatoire. Changez le mot de passe pour celui-ci dans un terminal :

sudo passwd fog

Editez le fichier de configuration “/var/www/fog/commons/config.php” afin d'entrer votre mot de passe mysql dans la variable “MYSQL_PASSWORD”. Remplacez également les valeurs de TFTP_FTP_PASSWORD and STORAGE_FTP_PASSWORD par le mot de passe que vous venez de définir pour fog.

sudo gedit /var/www/fog/commons/config.php

Il est conseillé de créer un utilisateur spécifique ayant les droits complets sur la base FOG dans mysql plutôt que d'utiliser root comme c'est le cas par défaut. Si vous créez un utilisateur, il faudra bien sûr modifier la variable “MYSQL_USERNAME”.

Pour terminer l'installation on va se rendre à l'adresse suivante : http://IP_SERVEUR/fog/management/ puis cliquer sur le bouton qui s'affiche : “install/upgrade now” ou assimilé.

Il se peut que lors de l'installation il y ai des erreur ( checking …. php5 … Failed !), les paquets n'arrivent pas à s'installer. tapez alors :

 sudo apt-get install [le nom du paquet] 

faites-le pour toute(s) les erreurs qu'il aura trouvé

Configuration

Modifier la langue

Cette traduction a été faite par un utilisateur, il n'y a pour le moment aucune validation de l'équipe officielle de FOG, vous téléchargez et utilisez ce fichier en tout connaissance de cause.

Téléchargez l'archive de traduction correspondant au langage que vous souhaitez installer (débrouillez-vous pour la trouver sur le forum de FOG si elle existe :-P). Pour les français, elle est actuellement ici

sudo wget kernchr.free.fr/download/drivers/fr_FR.UTF-8.tar.gz
sudo tar -xvzf fr_FR.UTF-8.tar.gz
sudo mv fr_FR.UTF-8 /var/www/fog/management/languages/

Décompressez-la puis copiez le tout dans le dossier “languages” de FOG (donc normalement dans /var/www/fog/management/languages/).

Utilisation

Allez à l'URL http://IP_SERVEUR/fog/management/.

Les identifiants par défaut sont “fog” “password”.

FIXME Ne souhaitant pas refaire toute la config de son LAN, le rédacteur de cette page n'a pas pu tester l'utilisation réelle de FOG. Néanmoins l'utilisation a l'air assez simple : Une fois que votre serveur est configuré et que le routeur/DHCP redirige les requêtes PXE vers lui, il suffit de modifier le bios d'un client pour le faire booter en PXE. Ce qui suit n'est qu'une traduction de certains articles du wiki de FOG.

Une fois que vous avez booté sur la carte réseau de votre station, cette page apparaît : http://www.howtogeek.com/wp-content/uploads/2011/04/fog1.png

Si vous ne touchez a rien, au bout de 3 secondes la machine boot sur son disque dur, autrement dit, comme si de rien n'était. Dans cet intervalle, appuyez sur une des flèches du clavier et le compte a rebours s'arrête, vous pouvez alors choisir l'option que vous souhaitez.

Lancer un Memtest (vérification de l'état de vos barretes de RAM).
Faire un recensement rapide de votre machine auprès du serveur FOG.
Faire un recensement Complet ( nom, IP, …) de votre machine auprès du serveur FOG.
déployer rapidement une image (non testé)
Information sur le système.
Mode de débug.

Le recensement rapide envoi au serveur l'adresse MAC de la machine et lui attribut comme nom l'adresse MAC sans les “ : ”.

Le recensement complet permet d'indiquer le nom de la machine, l'adresse IP, de le joindre a un domaine, de lui attibuer une image par défaut …

Le recensement complet ne change pas le nom de la machine dans l'OS ! seulement dans la base de données du serveur. votre machine Windows peut s'appeler “poste_1” mais elle seras répertorié dans la base de données de FOG comme “ poste_de_salon”

Création d'une image

Enregistrement du client

Faites booter votre client en PXE, puis, lors de l'affichage du menu FOG enregistrez-le auprès du serveur en sélectionnant “Perform Full Host Registration and Inventory” ou équivalent. Quelques questions de configuration vont vous être posées telles que le nom d'hôte du client, puis un rapide inventaire matériel sera effectué et le client sera rebooté. A ce point il sera enregistré auprès du serveur.

Création de l'image

Ensuite allez sur l'interface de gestion de fog (toujours http://IP_SERVEUR/fog/management/) via n'importe quel client sur le réseau. Allez dans la partie “images”, puis cliquez sur “new image”. Remplissez les champs comme demandé en laissant “default” pour la partie storage (sauf si vous avez un autre serveur avec fog installé en mode “storage” dessus, dans ce cas vous pouvez définir les règles que vous souhaitez).

Le nom de fichier de l'image ne doit pas contenir de caractères spéciaux ou d'espaces !

Cliquez sur “add” pour terminer la création.

Association de l'image avec l'hôte à figer

Allez dans la partie “hosts” puis cliquez sur “list all hosts” et cliquez sur le bouton “edit” de l'hôte que vous souhaitez imager. Vérifiez les champs affichés puis sélectionnez l'image que vous avez créée juste avant dans la liste déroulante dédiée. Cliquez sur “Update”.

Création de la tâche d'imaging

Toujours dans le menu d'édition de l'hôte, cliquez sur “basic tasks” dans le menu de gauche puis sélectionnez “upload” et cliquez sur “upload image”. Rebootez le client à imager et vous devriez avoir la création de l'image de ce client sur le serveur.

Pour un Upload normal ( 15Go env.) compter environ 20/25 Min.

Déploiement d'une image sur un client unique

Enregistrement du client

Deux solutions s'offrent a vous : 1) Faites booter votre client en PXE, puis, lors de l'affichage du menu FOG enregistrez-le auprès du serveur en sélectionnant “Perform Full Host Registration and Inventory” ou équivalent. Quelques questions de configuration vont vous être posées telles que le nom d'hôte du client, puis un rapide inventaire matériel sera effectué et le client sera rebooté. A ce point il sera enregistré auprès du serveur. 2) Rendez-vous dans l'interface web de FOG, allez dans “Host management” » “nouveau poste”, vous devez impérativement connaître l'adresse MAC du poste à ajouter (fog utilise principalement (exclusivement ??) l'adresse MAC pour communiquer avec les postes client), vous pouvez aussi rentrer le nom de la machine ainsi que l'adresse IP.

Association de l'image avec le client

Sur l'interface de gestion, allez dans la partie “hosts” puis cliquez sur “list all hosts” et cliquez sur le bouton “edit” de l'hôte sur lequel vous souhaitez déployer une image. Si vous ne l'avez pas fait durant l'enregistrement du client, sélectionnez alors l'image et l'OS que vous souhaitez déployer puis cliquez sur “update”.

Création de la tâche de déploiement

Toujours dans le menu d'édition de l'hôte, cliquez sur “basic tasks” dans le menu de gauche puis sélectionnez “deploy” et sélectionnez “image all computers”. Rebootez le client et ça devrait être bon.

Déploiement d'une image sur un groupe de clients

FIXME Il va probablement falloir créer un groupe d'hôtes dans le menu correspondant et appliquer la procédure ci-dessus au groupe plutôt qu'à un hôte seul. A vérifier.

Désinstallation

Pour supprimer cette application, il suffit : Supprimer les répertoires :

/var/www/fog 
/opt/fog 
/tftpboot 
/images

Supprimer les bases de données FOG :

mysql
drop database fog;
quit

Supprimer l'utilisateur FOG :

userdel fog

Supprimer les services FOG :

sudo rm /etc/init.d/FOGImageReplicator
sudo rm /etc/init.d/FOGMulticastManager
sudo rm /etc/init.d/FOGScheduler

Voir aussi


Contributeurs principaux : piccolo.