Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Dernière révision Les deux révisions suivantes
logiciels:environnement_serveur_pxe_boot [2014/12/13 20:55]
gcossette
logiciels:environnement_serveur_pxe_boot [2014/12/13 20:57]
gcossette
Ligne 1: Ligne 1:
 ====== Environnement serveur PXE Boot ====== ====== Environnement serveur PXE Boot ======
  
-Le présent article explique comment mettre en place un environnement PXE Boot //​(**P**re-e**X**ecution **E**nvironment)//​ hébergé sous CentOS 6.x avec SELinux actif. Un tel environnement permet de démarrer des machines physiques (virtuelles) sans avoir besoin d'y installer de système d'​exploitation et est donc particulièrement intéressant dans le cas de machines qui ne sont pas dotées d'une mémoire de masse locale encore appelées machine //​diskless//​. Bien que dans le cas de ces dernières il est courant de trouver un stockage réseau au travers de NFS, ce n'est cependant pas une obligation, la machine pouvant être directement raccordée à une baie de stockage au travers d'un réseau dédié //(Storage Ara Network - SAN)// Fibre Channel((et pas Fiber Channel…)) , Infiniband ou autre.+Le présent article explique comment mettre en place un environnement PXE Boot //​(**P**re-e**X**ecution **E**nvironment)//​ hébergé sous CentOS 6.x avec SELinux actif. Un tel environnement permet de démarrer des machines physiques (virtuelles) sans avoir besoin d'y installer de système d'​exploitation et est donc particulièrement intéressant dans le cas de machines qui ne sont pas dotées d'une mémoire de masse locale encore appelées machine //​diskless//​. Bien que dans le cas de ces dernières il est courant de trouver un stockage réseau au travers de NFS, ce n'est cependant pas une obligation, la machine pouvant être directement raccordée à une baie de stockage au travers d'un réseau dédié //(Storage Ara Network - SAN)// Fibre Channel((et pas Fiber Channel…)) ​  ​, Infiniband ou autre.
  
 ===== Comment fonctionne un environnement PXE Boot ? ===== ===== Comment fonctionne un environnement PXE Boot ? =====
Ligne 10: Ligne 10:
 Le dialogue entre une station cliente (C) et un serveur (S) configuré pour servir un environnement PXE boot est, en gros, le suivant: Le dialogue entre une station cliente (C) et un serveur (S) configuré pour servir un environnement PXE boot est, en gros, le suivant:
  
-  - C commence par envoyer sur le réseau un //DHCP ////​Discover//​ ((Etant donné que C ne connaît pas l’existence d'un serveur DHCP à ce stade, la requête est émise en diffusion broadcast au niveau 2.)) . La requête envoyée est quasi-similaire à une requête //DHCP Discover// ​ standard, excepté que C y glisse quelques informations supplémentaires à son sujet((Entre autres une identifiant unique (UUID) et l'​architecture système client.)) ;+  - C commence par envoyer sur le réseau un //DHCP ////​Discover//​ ((Etant donné que C ne connaît pas l’existence d'un serveur DHCP à ce stade, la requête est émise en diffusion broadcast au niveau 2.)) . La requête envoyée est quasi-similaire à une requête //DHCP Discover// ​ standard, excepté que C y glisse quelques informations supplémentaires à son sujet((Entre autres une identifiant unique (UUID) et l'​architecture système client.)) ​  ​;
   - S voit passer le //DHCP Discover// ​ émis par C et y répond en faisant une offre (//DHCP Offer//). Cette offre contient notamment l'​adresse IP proposée à C ainsi qu'une liste de serveurs à partir desquels il pourra s'​amorcer (liste de serveurs de démarrage). Si plusieurs serveurs sont à l'​écoute et donc répondent C aura plusieurs offres ;   - S voit passer le //DHCP Discover// ​ émis par C et y répond en faisant une offre (//DHCP Offer//). Cette offre contient notamment l'​adresse IP proposée à C ainsi qu'une liste de serveurs à partir desquels il pourra s'​amorcer (liste de serveurs de démarrage). Si plusieurs serveurs sont à l'​écoute et donc répondent C aura plusieurs offres ;
   - C collecte le //DHCP Offer// ​ renvoyé par S. Si plusieurs offres DHCP ont été faites (cas où plus d'un serveur DHCP est présent), C va choisir une des offres faites et émettre un //DHCP Request// ​ pour confirmer l'​utilisation de l'​adresse IP qui lui a été assignée ;   - C collecte le //DHCP Offer// ​ renvoyé par S. Si plusieurs offres DHCP ont été faites (cas où plus d'un serveur DHCP est présent), C va choisir une des offres faites et émettre un //DHCP Request// ​ pour confirmer l'​utilisation de l'​adresse IP qui lui a été assignée ;
Ligne 19: Ligne 19:
 Tout cela ne ne vous rappelle-t'​il pas quelque chose? Le chargeur (Grub, LILO, etc) situé sur le disque dur de votre ordinateur ! Le processus est cependant un rien plus complexe car il implique quelques acteurs externes supplémentaires externes à la machine, reste que dans les grandes lignes la philosophie reste la même. Tout cela ne ne vous rappelle-t'​il pas quelque chose? Le chargeur (Grub, LILO, etc) situé sur le disque dur de votre ordinateur ! Le processus est cependant un rien plus complexe car il implique quelques acteurs externes supplémentaires externes à la machine, reste que dans les grandes lignes la philosophie reste la même.
  
-La seule différence entre un échange DHCP standard et PXE est l'​utilisation de l'​option DHCP 60 (Vendor class identifier((Voir ​ [[http://​www.networksorcery.com/​enp/​rfc/​rfc2132.txt|RFC 2132]])) ). Une option DHCP est un paramètre envoyé par un serveur DHCP (il en existe plus d'une dizaine) à un client DHCP et permet de spécifier des paramètres tels que son adresse IP, sa passerelle, l'​adresse des serveurs de nom, etc.+La seule différence entre un échange DHCP standard et PXE est l'​utilisation de l'​option DHCP 60 (Vendor class identifier((Voir ​ [[http://​www.networksorcery.com/​enp/​rfc/​rfc2132.txt|RFC 2132]])) ​  ​). Une option DHCP est un paramètre envoyé par un serveur DHCP (il en existe plus d'une dizaine) à un client DHCP et permet de spécifier des paramètres tels que son adresse IP, sa passerelle, l'​adresse des serveurs de nom, etc.
  
 ===== Capacité d'​amorçage en PXE boot ===== ===== Capacité d'​amorçage en PXE boot =====
Ligne 38: Ligne 38:
  
 ===== Mise en place de l'​environnement PXE ===== ===== Mise en place de l'​environnement PXE =====
 +
 +{{:​pxe_schema_reseau.png?​nolink&​637x421}}
  
 La configuration réseau à laquelle le reste de l'​article fait référence est la suivante: La configuration réseau à laquelle le reste de l'​article fait référence est la suivante:
  
   * Les trois machines situées sur la droite de l'​image et identifiées « Station » sont des machines ayant une mémoire de masse locale((mémoire de grande capacité, non volatile et qui peut être lue et écrite (exemple:​disque dur)) ) mais aucun système d'​exploitation n'y est installé. Elles devront donc charger le programme d'​installation de leur système d'​installation au travers du réseau. Le système installé sera, pour les besoins de la cause, CentOS 6.x.   * Les trois machines situées sur la droite de l'​image et identifiées « Station » sont des machines ayant une mémoire de masse locale((mémoire de grande capacité, non volatile et qui peut être lue et écrite (exemple:​disque dur)) ) mais aucun système d'​exploitation n'y est installé. Elles devront donc charger le programme d'​installation de leur système d'​installation au travers du réseau. Le système installé sera, pour les besoins de la cause, CentOS 6.x.
- 
   * Les deux machines situées sur la gauche de l'​image et identifiées « Serveur » sont les serveurs TFTP et DHCP (il est tout à fait possible de regrouper les services DHCP et TFTP sur une machine unique). **Il est assumé dans le reste de l'​article que ces deux machines fonctionnent sous Linux CentOS 6.x**.   * Les deux machines situées sur la gauche de l'​image et identifiées « Serveur » sont les serveurs TFTP et DHCP (il est tout à fait possible de regrouper les services DHCP et TFTP sur une machine unique). **Il est assumé dans le reste de l'​article que ces deux machines fonctionnent sous Linux CentOS 6.x**.
  
  • logiciels/environnement_serveur_pxe_boot.txt
  • Dernière modification: 2018/09/28 18:27
  • par dpascot