Page suivante Page précédente Table des matières

1. Introduction

Nous supposerons que le lecteur est familier avec les divers types d'implémentation RAID, leurs avantages et inconvénients. Ceci n'est pas un guide, juste une série d'instructions sur la manière de mettre en place du RAID sur la partition montée à la racine sur un système Linux. Toutes les informations nécessaires à une familiarisation avec RAID sous Linux sont listées ici directement ou par référence ; veuillez les lire avant d'envoyer des questions par e-mail.

1.1 Où trouver une copie à jour de ce document.

Root-RAID-HOWTO

Disponible en LaTeX (pour le DVI et le PostScript), texte pur et HTML.

sunsite.unc.edu/mdw/HOWTO/
Disponible en SGML et HTML.
ftp.bizsystems.com/pub/raid/

1.2 Bogues

Au moment d'écrire ce document, le problème qui consiste à arrêter un périphérique RAID monté à la racine n'a pas encore été résolu de manière satisfaisante. Une solution de contournement proposée par Ed Welbon et implémentée par Bohumil Chalupa est incluse dans ce document et élimine le besoin de faire un ckraid qui prend du temps à chaque démarrage pour des périphériques RAID 1 et RAID 5. Sans cette solution, il est nécessaire de faire un ckraid sur le périphérique md à chaque fois que le système est redémarré. Sur une grande matrice ceci peut entraîner une dégradation importante de la performance pour la disponibilité du système. Sur mon périphérique RAID 1 de 6 Go tournant sur un Pentium 166 avec 128 Mo de RAM, il faut au moins une demi-heure pour faire le ckraid :-( après chaque redémarrage.

La solution de contournement stocke l'état de la matrice au moment de l'extinction sur le périphérique de démarrage réel et le compare à un état de référence placé là à la première construction du système. Si les états concordent au redémarrage, le superblock de la matrice est reconstruit, sinon l'administrateur est averti de l'erreur d'état et le système de secours reste en fonctionnement avec tous les outils RAID disponibles.

La reconstruction du superblock permet au système d'ignorer que la matrice a été éteinte sans mdstop en marquant tous les disques d'un OK, comme si rien ne s'était passé. Ceci ne fonctionne que si tous les disques sont OK à l'extinction. Si la matrice fonctionnait avec un disque défectueux, l'administrateur devrait enlever le disque défectueux avant de redémarrer le périphérique md ou des données pourraient être corrompues.

Ceci ne s'applique pas pour RAID 0 qui n'a pas besoin d'un mdstop avant l'extinction.

Des solutions finales proposées pour ce problème comprennent un finalrd similaire à initrd, et un mdrootstop qui écrit les drapeaux clean (propre) sur la matrice pendant l'extinction quand la matrice est montée en lecture seule. Je suis sûr qu'il y en a d'autres.

Pendant ce temps, le problème a été contourné pour l'instant. Veuillez me tenir au courant quand ce problème sera résolu de manière plus propre !

1.3 Remerciements

Les écrits et courriers électroniques des personnes suivantes m'ont aidés à réaliser ce document. Beaucoup d'idées ont été volées du travail utile d'autres personnes, j'ai simplement essayé de les mettre sous forme de RECETTES pour qu'elles soient rapides à utiliser. Mes remerciements à :

  • Linas Vepstas pour le Howto RAID qui m'a expliqué la plupart des choses ici.
  • Gadi Oxman pour avoir répondu à mes questions idiotes de "bleu".
  • Ed Welbon pour l'excellent paquetage initrd.md qui m'a inspiré à écrire ceci.
  • Bohumil Chalupa pour avoir implémenté la "solution de contournement" du redémarrage qui permet à du RAID monté sur la racine de fonctionner dans un environnement de production.
  • et bien d'autres qui ont contribué à ce travail d'une façon ou d'une autre.

1.4 Note de copyright

Ce document est GNU copyleft par Michael Robinton michael@bzs.org.

La permission d'utiliser, copier, distribuer ce document pour n'importe quelle raison est accordée par la présente, à la condition que le nom de l'auteur / éditeur apparaisse dans toutes les copies et/ou documents accompagnateurs ; et que toute version non modifiée de ce document soit disponible librement. Ce document est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE GARANTIE, ni explicite, ni implicite. Bien que tous les efforts aient été faits pour s'assurer de la précision des informations documentées ici, l'auteur / éditeur / mainteneur ne prend AUCUNE RESPONSABILITÉ sur toute erreur ou pour tout dommage, direct ou en découlant, résultant de l'utilisation des informations documentées ici.


Page suivante Page précédente Table des matières