Table of Contents
Centos : Mise en oeuvre de DRBL
Table of Contents
Présentation de DRBL
Présentation de Clonezilla
Afin de réaliser un clone d'un disque système celui-ci ne doit pas être monté (le système hébergé ne doit pas être démarré), car alors certaines ressources sont occupées.
Pour réaliser le clonage on doit donc démarrer sur un système diskless.
Une fois démarré le programme Clonezilla permet de dupliquer bloc à bloc un disque ou une partition (Clonezilla copie des blocs et non pas des fichiers).
Clonezilla peut être utilisé à partir de différents systèmes diskless :
- Sur un live CD
- Sur une clé USB
- Sur un serveur PXE
- Sur un serveur DRBL
Présentation de DRBL
DRBL (Diskless Remote Boot in Linux) est un logiciel libre, open source pour gérer le déploiement de système d'exploitation GNU / Linux sur des postes clients.
DRBL offre un environnement sans disque ou systemless pour les machines clientes. Il fonctionne sur Debian, Ubuntu, Red Hat, Fedora, CentOS et SuSE. DRBL utilise des ressources matérielles distribuées et permet d'accéder pleinement aux ressources locales des clients.
Il embarque Clonezilla, un utilitaire de partitionnement et de clonage de disque similaire à TrueImage® ou Norton Ghost®.
Installation d'un serveur
Installation d'un serveur CENTOS
Procéder à l'installation d'un socle dgfip
Installation de DRBL
Avant propos
Ne pas installer ni configurer aucun des produits utilisé par DRBL (serveur NFS, serveur TFTP, serveur DHCP, Iptables etc.. ) car leur installation sera effectuée lors de la configuration de DRBL.
Si le firewall IPtables est déjà installé et configuré, toutes ces informations seront écrasées lors de la configuration.
Pré requis
Vérifier l'environnement installé
Après avoir installé le serveur, assurez-vous que le disque dur est en mode DMA. Il permettra d'accélérer la vitesse de disque dur du serveur d'accès. Utiliser “hdparm /dev/hdx” pour vérifier si le mode DMA est activé ou désactivé. Si il est éteint, utiliser “hdparm -d1 -c3 -k1 /dev/hdx” pour l'allumer. Remplacez /dev/hdx par /dev/hda si le disque dur IDE pour ce système Linux est en “IDE primaire.”
Définir des adresses IP de la carte réseau
Si vous avez seulement un NIC, vous pouvez définir deux adresses IP, à savoir une dans eth0 et une autre adresse IP d'alias dans eth0 :. 1 eth0 sera utilisé pour le serveur pour se connecter à l'Internet public DRBL tout eth0: 1 sera utilisé pour l'environnement DRBL.
Reconfigurer le pare-feu iptables
Les règles de pare-feu seront écrasées lors de la configuration du serveur DRBL. Après avoir terminé la configuration DRBL, on peut configurer le pare-feu en utilisant des nouvelles règles. Dans l'environnement DRBL, NFS, NIS, les services TFTP et DHCP sont nécessaires, et ne doivent donc PAS être bloqués par les règles de firewall.
Installer la clé DRBL
Selon la version du système Il y a deux façons de le faire ..
Premère technique
$ rm -f GPG-KEY-DRBL $ wget http://drbl.org/GPG-KEY-DRBL $ rpm --import GPG-KEY-DRBL
ou
$ rm -f GPG-KEY-DRBL $ wget http://drbl.nchc.org.tw/GPG-KEY-DRBL $ rpm --import GPG-KEY-DRBL
Deuxième technique
Télécharger la clé de serveur de clés (le key id pour DRBL est D7E8DF3A) :
$ gpg --keyserver subkeys.pgp.net --recv-key D7E8DF3A $ gpg --export D7E8DF3A -a> GPG-KEY-DRBL rpm --import GPG-KEY-DRBL
Télécharger et installer le RPM DRBL
Télécharger le RPM sur le site SourceForge
Installer le paquet RPM
$ yum install drbl-XXX.i386.rpm
Installer lee module perl-Digest-SHA1
Ce module perl est nécessaire pour drbl rpm , normalement la distribution devrait installer le paquet «perl-Digest-SHA1» par défaut, si ce n'est pas le cas installez le manuellement :
$ yum install perl-Digest-SHA1
Installer DRBL
Vérifier les serveurs DNS dans le fichier /etc/resolv.conf :
nameserver 10.154.59.104 nameserver 10.156.32.33
Exécuter la commande :
$ drblsrv -i
Les valeurs par défaut peuvent être utilisées, mais il faut renseigner le proxy http (proxy.infra.dgfip sur le port 3128)
Préparer la configuration du serveur DRBL
Avant de passer à l'étape de configuration du serveur vous pouvez personnaliser certains paramètres.
- Si vous avez des répertoires spécifiques à partager dans ce serveur DRBL, comme par exemple /work1, alors vous pouvez utiliser l'éditeur de texte pour ouvrir le fichier /etc/drbl/drbl.conf pour ajouter disklessrootdirrouseradd = “/ work1” (si vous voulez que /work1 ne puisse être que lu par les clients, et non inscriptible) ou disklessrootdirrwuseradd = “/ work1” (si vous voulez que /work1 soit lisible et modifiable par les clients)
- Si tous les clients ont leur disque dur local, et si la partition est formatée (par exemple, /dev/hda1), alors vous pouvez monter /dev/hda1 comme /localwork lors du démarrage en ajoutant dans/etc/drbl/client-append-fstab:
/dev/hda1 /localwork ext3 defaults 0 0 - Si vous voulez que d'autres services supplémentaires (comme apmd et Bluetooth) démarrent sur le client, vous pouvez modifier /etc/drbl/client-extra-service, en ajoutant serviceextraadded = “bluetooth apmd”.
- Si vous souhaitez remplacer une partie ou tous les noms d'hôte créées automatiquement plus tard par “drblpush -i”, vous pouvez éditer “/etc/drbl/client-ip-hostname”. Si certaines machines ne sont pas affectées, drblpush utilisera les hostname créés automatiquement.
Ne pas créer manuellement les répertoires de DRBL
Vous ne devez pas créer le répertoire /tftpboot/node_root /localwork dans le serveur DRBL manuellement, plus tard drblpush va le faire pour vous
Ne pas activer les mises à jour automatique
Il est recommandé de ne pas activer la mise à jour du système automatiquement. Si nouveaux paquets sont installés dans le serveur automatiquement, sans relancer “drblpush -i”, les programmes pour les clients pourraient ne pas être compatibles avec les nouveaux.
Configuration
Préparer la Configuration de DRBL
Choisir la topologie du réseau
Afin de permettre à DRBL de travailler plus efficacement il est recommandé d'utiliser deux intefaces NIC, une carte est pour le WAN et les autres sont pour le LAN.
Si vous ne disposez que d'une seule interface il est recommandé de définir un alias eth0 :1 pour les environnements DRBL(LAN)
Choisir un mode d'exécution de DRBL
Il y a quatre modes disponibles de la version 1.6.3 ou version ultérieure de DRBL:
- Full DRBL,
- Full Clonezilla,
- DRBL SSI (Single System Image)
- box Clonezilla. Les deux premiers modes nécéssitent plus de bande passante du réseau et d'espace disque, mais tous les réglages du système seront sauvegardés sur disque dur du serveur, et chaque client peut avoir son propre réglage individuel.
Dans le mode DRBL SSI tous les réglages individuels nécessaires des clients sont créés au fil du temps quand ils démarrent. Cela permet de réduire l'espace disque requis sur le serveur puisqu'une seule image est nécessaire. Cependant, chaque client ne peut pas avoir son propre réglage de système individuel (Les réglages de l'utilisateur sont enregistrés dans le serveur). Dans ce mode, Théoriquement une carte réseau dans le serveur peut fournir 253 clients.
Le mode box Clonezilla, est basé sur le mode DRBL SSI, en particulier pour le système de clone. Si vous voulez utiliser le mode DRBL SSI, assurez-vous que votre client a une grande capacité mémoire (disons> 512 Mo), et que tout le matériel (en particulier le carte graphique) des clients sont les mêmes.
Exécuter les scripts post-installation
"drblpush -i" détecte automatiquement le système pour composer une configuration adaptée à vos besoins.
Configuration des éléments d'identification
Les valeurs par défaut peuvent être laissés :
- Nom de domaine DNS
- Nom de domaine NIS/YP
- Préfixe des noms d'hôtes
Configuration du réseau
Renseigner les valeurs de dernier octet (20) de l'adresse IP et du nombre d'adresses distribuées (10) par le serveur DHCP.
Le Serveur mutualisé délivrera les adresses xx.xxx.xxx.20 à xx.xxx.xxx.29.
Toutes les autres valeurs peuvent être laissées à défaut :
- Port ethernet utilisé
- Lecture des adresses MAC des clients
- Offrir les mêmes adresses aux clients à chaque démarrage
- Valeur de début pour le dernier octet de l'adresse IP des clients = 20
- Nombre de clients DRBL connectés = 10
Choix des modes d'exécution
Bien qu'il ne soit pas nécessaire de donner aux clients un mode diskless complet (réservation d'un espace sur le serveur) on peut laisser les valeurs par défaut pour pouvoir utiliser clonezilla en mode graphique.
Choix de l'architecture clients
Agrandir la taille de l'espace d'échange, les autres valeurs peuvent être laissées à défaut :
- Répertoire pour enregistrer les images
- Partition de swap
- Taille maximale pour l'espace d'échange = 1024
- Mode de démarrage des clients
- Type d'ouverture de session
- Mot de passe du super-utilisateur
- Mot de passe pxelinux des clients
Définir le prompt de démarrage
Le prompt de démarrage défini le nombre de seconde d'attente avant le démarrage sur l'option par défaut (démarrage sur le disque dur de la lame).
Les valeurs par défaut peuvent être laissées :
- Définir le prompt de démarrage des clients
- Temporisation du prompt de démarrage
- Arrière-plan graphique pour le menu PXE au démarrage
Fin de la configuration
Les valeurs par défaut peuvent être laissées :
- Définir l'adresse publique des clients
- Fonctionnement en mode terminal
- Activation du serveur NAT
- Conserver les précédents paramètres des clients DRBL
Démarrage des démons
A la fin de l'installation le script démarre les démons du serveur :
- dhcpd
- xinetd
- rpcbind
- iptables
- NFS
Adaptation du noyau PXE initrd
Sur les Blade seul le planar ethernet 2 (eth1) d'une lame peut être utilisé pour charger le noyau PXE initrd.
Lors de la séquence de chargement du noyau initrd par NFS commence les pilotes embarqués dans l'image sont substitués aux drivers par défaut de PXE.
Ce rechargement provoque un bref déchargement des périphériques, y compris les cartes réseau.
Si la carte planar ethernet est utilisée pour le démarrage sous PXE les deux ports ethernet demeurent disabled même après le rechargement.
Afin de l'éviter il faut désactiver complètement l'utilisation du port eth0 dans l'image initRAMFS.
Pour cela recompiler le noyau INTITRAMFS avec la commande :
$ mknic-nbi -p 3 --netdev "eth1"
–netdev “eth1” force l'utilisation exclusive du planar ethernet 2 (eth1)
-p 3 force le programme à attendre le rechargement du pilote pour poursuivre le processus (le switch nortel intégré a besoins d'un délai de 3s pour mettre le lien UP)
Configurer le menu de Boot
Afin de pouvoir démarrer clonezilla, éditer le fichier /tftpboot/nbi_img/pxelinux.cfg/default
$ vi /tftpboot/nbi_img/pxelinux.cfg/default
Dièser MENU HIDE dessous le label clonezilla
label clonezilla # MENU DEFAULT # MENU HIDE MENU LABEL Clonezilla # MENU PASSWD # Append DHCP/BOOTP to the kernel command line, i.e., ip=<client-ip>:<boot-server-ip>:<gw-ip>:<netmask> # We need this when using proxy DHCP IPAPPEND 1 kernel vmlinuz-pxe append initrd=initrd-pxe.img devfs=nomount drblthincli=off selinux=0 text 1 TEXT HELP * Clonezilla version: 3.27.16-drbl1.noarch. (C) 2003-2018, NCHC, Taiwan * Disclaimer: Clonezilla comes with ABSOLUTELY NO WARRANTY ENDTEXT
Configuration des clients
Paramétrage du boot PXE
Cette étape ne doit être faite qu'une seule fois. Après cette configuration la lame tentera toujours un boot sur la carte réseau en PXE, mais l'option de boot par défaut du menu PXE renverra systématiquement sur le premier disque dur (si aucune option n'ai choisie lors du prompt).
La carte PXE doit utiliser la méthode de boot LEGACY et doit être en tout début dans la séquence de boot
Adapter les paramètres Network Boot Configuration
Désactiver le mode démarrage PXE sur le premier interface réseau
Les serveurs BLADE utilise la première interface de réseau, Ethernet 1 (eth1 ou Planar Ethernet 1), du serveur lame pour Serial Over LAN (SOL). Lorsque cette interface réseau tente de démarrer à travers PXE ou DHCP, l'interface réseau est réinitialisée, provoquant la fermeture de la session courante (LINK DOWN). Pour démarrer à travers PXE ou DHCP, il faut utiliser la seconde interface réseau, Ethernet 2 (eth2 ou Planar Ethernet 2), des serveurs lames.
- Choisir Système settings
- Sélectionner Network Boot Configuration
- Sélectionner Le premier interface réseau
- Mettre Le PXE Mode à disabled
Appliquer les changements par Save Changes
Modifier le mode de boot PXE du deuxième interface
Le mode de boot par défaut est le mode “UEFI and Legacy support”
- Choisir Système settings
- Sélectionner Network Boot Configuration
- Sélectionner Le deuxième interface réseau
- Modifier PXE Mode pour ne laisser que le support LEGACY
Pour que les modifications prennent effet sélectionner Save Changes
Vérifier le paramétrage MBA des interfaces
Multi-Boot Agent (MBA) est un module logiciel qui permet à un ordinateur de démarrer avec les images fournies par les serveurs distants sur le réseau.
Vérifier le paramétrage MBA du Premier Interface
- Choisir Système settings
- Sélectionner Network Device List
- Choisir le premier interface
- Chosir MBA Configuration Menu
- Mettre Legacy Boot Protocol à NONE
Vérifier le paramétrage MBA du Second Interface
- Choisir Système settings
- Sélectionner Network Device List
- Choisir le deuxième interface
- Chosir MBA Configuration Menu
- Mettre Legacy Boot Protocol à PXE
- Mettre VLAN Mode à Disabled
Paramétrage de la séquence de Boot
Pour démarrer sur PXE les cartes réseau doivent être les premières dans la séquence de boot
- Sélectionner Boot Manager dans le menu général
- Sélectionner Change Boot Order
- Remonter “PXE netxowrk” tout en haut de la liste (avec la touche +)
Valider le changement par Commit Changes
- Sortir du menu Bios et sauvegarder la configuration
Configuration spécique au BLADECENTER
Description de l'architecture du BladeCenter
Les lames du TXXA sont connectées au lan à partir de deux modules Planar Ethernet via deux switchs NORTEL internes.
La configuration installée sur le BLADECENTER utilise 3 vlan :
- Un vlan data externe (506)
- Un vlan admin externe (205)
- Un vlan admin interne (4095)
Les seuls interfaces déclarés dans les switchs NORTEL sont celles des modules de de management MGMT1 et MGMT2.
Configuration du switch NORTEL2
La configuration du switch interne NORTEL2 (switch de la partie basse du BLADE CENTER) doit être adaptée pour tenir compte :
- Des exigences de l'architecture propriétaire
- Le module planar Ethernet 1 (eth0) des lames est réservé à l'utilisation de la fonctionnalité SOL (Serial Over Lan), seul le module planar Etehernet 2 (eth1) peut donc être utilisé pour démarrer les lames en PXE.
- DRBL démarre automatiquement les ports du serveur en SPEED 1000 et FULL DUPLEX, il est donc important que les ports externes du switch NORTEL2 soient configurés en mode automatique.
- Des limitations imposées par PXE
- Lorsque PXE charge le système d'exploitation il recharge également les drivers des modules planar Ethernet, ce rechargement écrase la configuration d'origine, il n'est donc pas possible de gérer le démarrage sous PXE avec l'option mode vlan enabled, puisque cette option va être écrasée lors du rechargement du driver.
Les ports internes (INT) du swith NORTEL2 doivent donc être configurer pour ôter le tag des trames.
Dans le SWITH NORTEL2 mettre :
- les ports INT en VLAN Tagging = Disabled et PVID Tagging = disabled
- Les ports EXT en autoneg
- les ports EXT en VLAN Tagging = enabled et PVID Tagging = enabled
Installation de logiciels tiers
drbl-sl
Le script drbl-sl permet d'installer les logiciels tiers suivants :
- DSL PuppyLinux
- Clonezilla-live
- GParted-live
Installation de GPARTED LIVE
- Télécharger l'image iso du live cd
- Transférer l'image sur le serveur (par tftp par ex)
- Exécuter sur le serveur la commande 'drbl-sl -i gparted-live-0.22.0-2-i586.iso'
Utilisation de GPARTED LIVE
Seule la carte planar ethernet 2 (eth1) d'un serveur lame pouvant démarrer sur PXE, il faut donc adapter la ligne initrd du fichier /tftpboot/nbi_img/pxelinux.cfg/default en y insérant live-netdev:
APPEND initrd=GParted-live-initrd.img boot=live union=overlay username=user config components quiet noswap noeject live-netdev="eth1" ip= nosplash noprompt fetch=tftp://xx.xx.xxx.xx/GParted-live-filesystem.squashfs