1.3. Installation et configuration de Red Hat Enterprise Linux

Après la configuration du matériel de base du cluster, poursuivez l'installation de Red Hat Enterprise Linux sur chacun des membres et assurez-vous que tous les systèmes reconnaissent bien les périphériques connectés. Suivez les étapes suivantes :

  1. Installez Red Hat Enterprise Linux sur tous les membres du cluster. Reportez-vous au Guide d'installation de Red Hat Enterprise Linux pour obtenir des instructions.

    De plus, lors de l'installation de Red Hat Enterprise Linux, il est fortement recommandé d'effectuer les tâches suivantes :

    • Rassemblez les adresses IP des membres et des ports Ethernet liés par agrégat, avant d'installer Red Hat Enterprise Linux. Notez bien que les adresses IP des ports Ethernet liés par agrégat peuvent être des adresses IP privées (par exemple, 10.x.x.x).

    • Ne placez pas de systèmes de fichiers locaux (tels que /, /etc, /tmp et /var) sur des disques partagés ou sur le même bus SCSI que les disques partagés. Ceci permet d'une part d'éviter que les autres membres du cluster ne montent accidentellement ces systèmes de fichiers et d'autre part, permet de réserver le nombre limité de numéros d'identification SCSI sur un bus, pour les disques du cluster.

    • Placez /tmp et /var sur des systèmes de fichiers différents. Ceci permettra peut-être d'améliorer les performances des membres.

    • Lorsqu'un membre démarre, assurez-vous que ce dernier détecte bien les périphériques disques dans le même ordre que celui dans lequel ils ont été détectés lors de l'installation de Red Hat Enterprise Linux. Si les périphériques ne sont pas détectés dans le même ordre, le membre ne pourra peut-être pas démarrer.

    • Si vous utilisez le stockage RAID configuré avec une valeur Logical Unit Numbers (LUN) supérieure à zéro, il est nécessaire d'activer le support de LUN en ajoutant l'information suivante dans /etc/modules.conf :

      options scsi_mod max_scsi_luns=255

      Après avoir modifié modules.conf, il est nécessaire de reconstruire le disque RAM initial en utilisant mkinitrd. Consultez le Guide d'administration système de Red Hat Enterprise Linux pour plus d'informations sur la création de disques RAM en utilisant mkinitrd.

  2. Redémarrez les membres.

  3. Lors de l'utilisation d'un serveur terminal, configurez Red Hat Enterprise Linux de telle façon que des messages de la console soient envoyés au port de la console.

  4. Éditez le fichier /etc/hosts sur chaque membre du cluster et incluez les adresses IP utilisées dans le cluster ou assurez-vous que les adresses sont bien dans le DNS. Consultez la Section 1.3.1 pour plus d'informations sur la façon d'exécuter cette tâche.

  5. Diminuez la valeur alternative pour le dépassement de délai au démarrage (Boot timeout limit) du noyau pour réduire la durée de démarrage des membres. Consultez la Section 1.3.2 pour plus d'informations sur la façon d'exécuter cette tâche.

  6. Assurez-vous qu'aucun programme de connexion (ou getty) n'est associé aux ports série qui sont utilisés pour la connexion de l'interrupteur distant (s'il y en a un). Pour exécuter cette tâche, éditez le fichier /etc/inittab et utilisez le symbole dièse (#) pour annuler les entrées qui correspondent aux ports série utilisés pour l'interrupteur distant. Invoquez ensuite la commande init q.

  7. Vérifiez que tous les systèmes détectent bien tout le matériel installé :

    • Utilisez la commande dmesg pour afficher les messages de mise en route de la console. Consultez la Section 1.3.3 pour obtenir plus d'informations sur la façon d'exécuter cette tâche.

    • Utilisez la commande cat /proc/devices pour afficher les périphériques configurés dans le noyau. Consultez la Section 1.3.4 pour obtenir plus d'informations sur la façon d'exécuter cette tâche.

  8. Vérifiez que les membres peuvent communiquer via toutes les interfaces réseau en utilisant la commande ping pour envoyer des paquets tests d'un système à un autre.

  9. Si vous avez l'intention de configurer des services Samba, vérifiez que les paquetages RPM pour les services Samba sont bien installés.

1.3.1. Édition du fichier /etc/hosts

Le fichier /etc/hosts contient le tableau d'équivalence entre l'adresse IP et le nom d'hôte. Le fichier /etc/hosts de chaque membre doit contenir des entrées pour les éléments ci-dessous :

Comme alternative au fichier /etc/hosts, vous pouvez utiliser des services tels que DNS ou NIS pour définir les noms d'hôtes employés par un cluster. Ceci étant, et afin de limiter le nombre de dépendances et optimiser la disponibilité, il est fortement recommandé d'utiliser le fichier /etc/hosts pour définir les adresses IP des interfaces réseau du cluster.

Ci-dessous se trouve un exemple de fichier /etc/hosts sur un membre :

127.0.0.1         localhost.localdomain   localhost
193.186.1.81      cluster2.example.com      cluster2
10.0.0.1          ecluster2.example.com     ecluster2
193.186.1.82      cluster3.example.com      cluster3
10.0.0.2          ecluster3.example.com     ecluster3

L'exemple précédent montre les adresses IP et noms d'hôtes pour deux membres (cluster2 et cluster3) et les adresses IP privées et noms d'hôtes de l'interface Ethernet (ecluster2 et ecluster3) utilisés pour la connexion de pulsations point-à-point sur chaque membre.

Vérifiez que le formatage de l'entrée de l'hôte local dans le fichier /etc/hosts est correct, pour vous assurer qu'il ne comprend pas de systèmes non-locaux dans l'entrée de l'hôte local. Ci-dessous se trouve un exemple d'entrée incorrecte d'hôte local incluant un système qui n'est pas local (server1) :

127.0.0.1     localhost.localdomain     localhost server1

Il se peut qu'une connexion Ethernet ne fonctionne pas correctement si le format du fichier /etc/hosts n'est pas correct. Vérifiez le fichier /etc/hosts et corrigez le format du fichier en retirant, le cas échéant, les systèmes non-locaux dans l'entrée de l'hôte local.

Notez bien que chaque adaptateur réseau doit être configuré avec l'adresse IP et le masque réseau appropriés.

L'exemple ci-dessous montre une partie de la sortie renvoyée par la commande /sbin/ifconfig sur un membre du cluster :

eth0      Link encap:Ethernet  HWaddr 00:00:BC:11:76:93  
          inet addr:192.186.1.81  Bcast:192.186.1.245  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:65508254 errors:225 dropped:0 overruns:2 frame:0
          TX packets:40364135 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          Interrupt:19 Base address:0xfce0

eth1      Link encap:Ethernet  HWaddr 00:00:BC:11:76:92  
          inet addr:10.0.0.1  Bcast:10.0.0.245  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          Interrupt:18 Base address:0xfcc0

L'exemple précédent montre deux interfaces réseau sur un membre du cluster : eth0 (l'interface réseau pour le membre) et eth1 (l'interface réseau pour la connexion Ethernet point-à-point).

Vous pouvez également ajouter les adresses IP pour les membres du cluster sur votre serveur DNS. Reportez-vous au Guide de référence de Red Hat Enterprise Linux pour davantage d'informations sur la configuration de DNS ou consultez votre administrateur réseau.

1.3.2. Réduction de la valeur 'Boot Timeout Limit' du noyau

Il est possible de diminuer la durée de démarrage d'un membre en réduisant la valeur du dépassement de délai au démarrage (Boot Timeout Limit) du noyau. Lors de la phase de démarrage de Red Hat Enterprise Linux, le chargeur d'amorçage donne la possibilité de spécifier un autre noyau qui peut être démarré. La valeur par défaut du dépassement de délai au démarrage (Boot Timeout Limit) pour spécifier un autre noyau est de dix secondes.

Pour modifier la valeur du dépassement de délai au démarrage du noyau pour un membre, éditez les fichiers appropriés comme suit :

Lors de l'utilisation du chargeur d'amorçage GRUB, le paramètre de dépassement de délai (Timeout) figurant dans /boot/grub/grub.conf devrait être modifié afin de préciser le nombre adéquat de secondes correspondant au paramètre timeout. Pour donner à cet intervalle une valeur de 3 secondes, éditez le paramètre comme dans l'exemple ci-après :

timeout = 3

Lors de l'utilisation des chargeurs d'amorçage LILO et ELILO, éditez le fichier /etc/lilo.conf (sur des systèmes x86) ou le fichier elilo.conf (sur des systèmes Itanium) et spécifiez la valeur souhaitée (en dixièmes de secondes) pour le paramètre timeout. L'exemple suivant fixe le délai de dépassement (timeout limit) à trois secondes :

timeout = 30

Pour mettre à exécution toute modification apportée au fichier /etc/lilo.conf, invoquez la commande /sbin/lilo.

Sur un système Itanium, invoquez la commande /sbin/elilo pour mettre à exécution toute modification apportée au fichier /boot/efi/efi/redhat/elilo.conf.

1.3.3. Affichage des messages de démarrage de la console

Utilisez la commande dmesg pour afficher les messages de démarrage de la console. Consultez la page de manuel relative à dmesg(8) pour obtenir plus d'informations.

L'exemple suivant de sortie de la commande dmesg montre que deux bus SCSI externes et neuf disques ont été détectés sur le membre (notez bien que les lignes avec l'oblique inverse apparaîtront comme une seule ligne sur la plupart des écrans) :

May 22 14:02:10 storage3 kernel: scsi0 : Adaptec AHA274x/284x/294x \
	      (EISA/VLB/PCI-Fast SCSI) 5.1.28/3.2.4 
May 22 14:02:10 storage3 kernel:         
May 22 14:02:10 storage3 kernel: scsi1 : Adaptec AHA274x/284x/294x \
              (EISA/VLB/PCI-Fast SCSI) 5.1.28/3.2.4 
May 22 14:02:10 storage3 kernel:         
May 22 14:02:10 storage3 kernel: scsi : 2 hosts. 
May 22 14:02:11 storage3 kernel:   Vendor: SEAGATE   Model: ST39236LW         Rev: 0004 
May 22 14:02:11 storage3 kernel: Detected scsi disk sda at scsi0, channel 0, id 0, lun 0 
May 22 14:02:11 storage3 kernel:   Vendor: SEAGATE   Model: ST318203LC        Rev: 0001 
May 22 14:02:11 storage3 kernel: Detected scsi disk sdb at scsi1, channel 0, id 0, lun 0 
May 22 14:02:11 storage3 kernel:   Vendor: SEAGATE   Model: ST318203LC        Rev: 0001 
May 22 14:02:11 storage3 kernel: Detected scsi disk sdc at scsi1, channel 0, id 1, lun 0 
May 22 14:02:11 storage3 kernel:   Vendor: SEAGATE   Model: ST318203LC        Rev: 0001 
May 22 14:02:11 storage3 kernel: Detected scsi disk sdd at scsi1, channel 0, id 2, lun 0 
May 22 14:02:11 storage3 kernel:   Vendor: SEAGATE   Model: ST318203LC        Rev: 0001 
May 22 14:02:11 storage3 kernel: Detected scsi disk sde at scsi1, channel 0, id 3, lun 0 
May 22 14:02:11 storage3 kernel:   Vendor: SEAGATE   Model: ST318203LC        Rev: 0001 
May 22 14:02:11 storage3 kernel: Detected scsi disk sdf at scsi1, channel 0, id 8, lun 0 
May 22 14:02:11 storage3 kernel:   Vendor: SEAGATE   Model: ST318203LC        Rev: 0001 
May 22 14:02:11 storage3 kernel: Detected scsi disk sdg at scsi1, channel 0, id 9, lun 0 
May 22 14:02:11 storage3 kernel:   Vendor: SEAGATE   Model: ST318203LC        Rev: 0001 
May 22 14:02:11 storage3 kernel: Detected scsi disk sdh at scsi1, channel 0, id 10, lun 0 
May 22 14:02:11 storage3 kernel:   Vendor: SEAGATE   Model: ST318203LC        Rev: 0001 
May 22 14:02:11 storage3 kernel: Detected scsi disk sdi at scsi1, channel 0, id 11, lun 0 
May 22 14:02:11 storage3 kernel:   Vendor: Dell      Model: 8 BAY U2W CU      Rev: 0205 
May 22 14:02:11 storage3 kernel:   Type:   Processor \
                          ANSI SCSI revision: 03 
May 22 14:02:11 storage3 kernel: scsi1 : channel 0 target 15 lun 1 request sense \
	      failed, performing reset. 
May 22 14:02:11 storage3 kernel: SCSI bus is being reset for host 1 channel 0. 
May 22 14:02:11 storage3 kernel: scsi : detected 9 SCSI disks total.

L'exemple suivant de sortie de la commande dmesg montre qu'une carte quad Ethernet a été détectée sur le membre :

May 22 14:02:11 storage3 kernel: 3c59x.c:v0.99H 11/17/98 Donald Becker
May 22 14:02:11 storage3 kernel: tulip.c:v0.91g-ppc 7/16/99 becker@cesdis.gsfc.nasa.gov 
May 22 14:02:11 storage3 kernel: eth0: Digital DS21140 Tulip rev 34 at 0x9800, \
	      00:00:BC:11:76:93, IRQ 5. 
May 22 14:02:12 storage3 kernel: eth1: Digital DS21140 Tulip rev 34 at 0x9400, \
	      00:00:BC:11:76:92, IRQ 9. 
May 22 14:02:12 storage3 kernel: eth2: Digital DS21140 Tulip rev 34 at 0x9000, \
	      00:00:BC:11:76:91, IRQ 11. 
May 22 14:02:12 storage3 kernel: eth3: Digital DS21140 Tulip rev 34 at 0x8800, \
	      00:00:BC:11:76:90, IRQ 10.

1.3.4. Affichage des périphériques configurés dans le noyau

Pour vous assurer que les périphériques installés, y compris les interfaces série et réseau, sont bien configurés dans le noyau, utilisez la commande cat /proc/devices sur chaque membre. Utilisez cette commande également pour déterminer si un support pour les périphériques bruts est installé sur le membre. Par exemple :

Character devices:
  1 mem
  2 pty
  3 ttyp
  4 ttyS
  5 cua
  7 vcs
 10 misc
 19 ttyC
 20 cub
128 ptm
136 pts
162 raw

Block devices:
  2 fd
  3 ide0
  8 sd
 65 sd

L'exemple précédent montre les éléments suivants :