Deploiement heterogene 2010 groupe 4

Definition

Le démarrage PXE (sigle de Pre-boot eXecution Environment) permet à une station de travail de démarrer depuis le réseau en récupérant une image de système d'exploitation qui se trouve sur un serveur.

L'image ainsi récupérée peut être le système d'exploitation brut ou bien le système d'exploitation personnalisé avec des composantes logicielles (suite bureautique, utilitaires, packs de sécurité, scripts, etc…).

Une fois cette image "pré-chargée", elle peut éventuellement, en fonction des paramétrages passés à cette image sur le serveur, être installée sur la machine qui a booté en PXE.

PXE.bmp

Il permet également d'installer de manière automatique et à distance des serveurs sous divers OS.

Pour activer le PXE, il faut auparavant le configurer dans le BIOS. L’option se trouve fréquemment dans un menu concernant la carte réseau.

Le boot par PXE s'effectue en plusieurs étapes :

* Recherche d'une adresse IP sur un serveur DHCP/BOOTP ainsi que du fichier à booter
* Téléchargement du fichier à booter depuis un serveur Trivial FTP.
* Exécution du fichier à booter.

La taille du fichier à booter ne permet pas de booter directement un noyau Linux, par exemple, mais il faut que le logiciel à booter le télécharge et l'exécute lui même.

Introduction

Nous allons utiliser la méthode du PXE pour permettre a plusieurs clients de faire des installations des différents os qui se trouve sur un serveur prédéfini.

Pour que cela fonctionne, il nous faut 3 serveurs :

* un serveur DHCP qui attribut des adresses IP aux machines clientes
* un serveur TFTP qui permet le boot par carte réseau
* un serveur Apache qui permet le transfert des fichiers pour l'installation

Le serveur DHCP

Pour installer le service DHCP, il faut installer un service pour trouver la commande consulte le web :

Yum install dhcp

Le fichier de configuration par defaut du dhcpd.conf doit être récupérer dans /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample, celui-ci doit être copié dans /etc pour avoir une base de travail.

Par la suite, il faut configurer le fichier /etc/dhcpd.conf afin de paramétrer les range d’adresses IP et aussi la ligne qui va booter sur PXE.

ddns-update-style interim;
not authoritative;
allow unknown-clients;
allow booting
allowbootp
next-server192.168.1.1;

option domain-name "info.uccle";
#option domain-name-servers 208.67.222.222, 208.67.220.220;
option subnet-mask255.255.255.0;
subnet192.168.1.0netmask255.255.255.0{
range 172.20.30.10172.20.30.90;
option routers192.168.1.1;
filename"/pxelinux.0";
}

Une fois la configuration terminé, on pourra lancer le service via la commande :
-#Cd /etc/init.d puis #. /dhcpd restart
Avant toute chose il faut vérifier, s’il n’y a pas d’autre serveur DHCP qui tourne dans votre environnement.
Pour tester si notre DHCP tourner, il faut lancer le client, pour voir, s’il lui attribut une IP via la commande :
-#dhclient

Le serveur FTP

Pour installer le service FTP, il faut installer un service pour trouver la commande consulte le web :

#yum install vsftpd
#yum install tftpboot-server

Pour installer, il faudra 2 packages, cela permettra au FTP, la création via tftp-server du folder /tftpboot dans laquelle on va placer le script pour l’installation du Pxe, après avoir installé tftpboot il faut aller éditer le fichier qui se trouve dans /etc/xinet.d/tftp , la ligne « disable » nous la changeons en « yes ».
Service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
Puispour rendre public l’installation on crée /var/ftp/install/centos/i386/5.3 via la commande suivent.

  1. mkdir –p /var/ftp/install/centos/i386/5.3

Le serveur /tftpboot

Dans ce dossier, nous allons créer un script qui permettra d’automatiser l’installation du Pxe.
Nous allons trouver dans le dossier /tftpboot :
-Nous avons trouvé plusieurs fichiers mais avant tout, il faut installer un autre service via la commande :
#yuminstallsyslinux
Nous allons copier ces fichiers via une commande :
cp /usr/lib/syslinux/pxelinux.0 /tftpboot
cp /usr/lib/syslinux/menu.c32 /tftpboot
cp /usr/lib/syslinux/memdisk /tftpboot
cp /usr/lib/syslinux/mboot.c32 /tftpboot
cp /usr/lib/syslinux/chain.c32 /tftpboot

On va créer le menu pour pxe :
-mkdir /tftpboot/pxelinux.cfg

On va créer le dossier où l’on va placer les fichiers qui se trouve sur le dvd :
-mkdir -p /tftpboot/images/centos/i386/5.3

Ensuite, nous allons coller les fichiers vmlinuz et initrd.img qui se trouve sur le dvd dans le dossier /tftpboot/images/centos/i386/5.3.

Pour finir, nous allons créer le fichier default, qui devra se trouver dans /tftpboot/pxelinux.cfg:
-mkdir /tftpboot/pxelinux.cfg
Puis le fichier default :
-touch default qui aura la configuration pour l’installation de Pxe.
default menu.c32
prompt 0
timeout 300
MENU TITLE PXE Menu
LABEL CentoS 5.3 i386
MENU LABEL CentOS 5.3 i386
KERNEL images/centos/i386/5.3/vmlinuz
append vga=normal initrd=images/centos/i386/5.3/initrd.imgramdisk_size=32768 method=ftp://192.168.1.1/install/centos/i386/5.3

Le fichier kickstart

Ce fichier contient toute l’option que l’on souhaite mettre en place pendant l’installation pour mettre en place le kickstart :
-yuminstall system-config-kickstart
Une fois installer retourne dans le fichier /tfpboot/pxelinux.cfg/default pour mettre ligne du chemin ou se trouve l’iso :
ks=ftp://192.168.1.1/install/ks/ks.cfg
Le lancement de l’installation:
Pour tester la configuration, il suffit de mettre en route touts les services et de bien vérifier si tout les services se lance, puis lance la machine client.
-1 le client va boot sur la carte réseaux a fin de obtenir une IP puis le serveur ftp va se charger du reste.
-2 il va consulte le fichier default a fin de l’exécuter toute l’installation.
-3 l’exécution de l’installation va se lancer en fonction du fichier kickstart qui va automatiser l’installation à travers le réseau, puis qui va s’adresse eu serveur ftp mentionné dans le fichier kickstart.

Sauf mention contraire, le contenu de cette page est protégé par la licence Creative Commons Attribution-ShareAlike 3.0 License