Linux DPT Hardware RAID HAWTO
Version originale : Ram Samudrala (
[email protected]) Version fran-
caise : Nicolas Jadot (
[email protected])
v1.1, 15 Decmebre 1997
Comment configurer un materiel RAID sous Linux
11.. IInnttrroodduuccttiioonn
Ce document decrit comment configurer un materiel RAID SCSI, en se
focalisant principalement sur les adaptateurs internes d'origine DPT,
bien que les principes appliques ici soient assez generaux.
Utilisez les informations ci-dessous a vos risques et perils. L'auteur
(NDT : et le traducteur) denient toute responsabilite concernant ce
que le lecteur pourra faire apres avoir lu ce document. La version la
plus recente de ce HOWTO sera toujours disponible a l'adresse
http://www.ram.org/computing/linux/dpt_raid.html.
22.. CCoonnttrroolleeuurrss ssuuppppoorrtteess
Le seul controleur RAID actuellement bien supporte ( c.a.d. un
controleur pour lequel il existe un pilote sous Linux) est celui
fabrique par la societe DPT <
http://www.dpt.com>. Cependant, il existe
d'autres controleurs internes (NDT : _h_o_s_t_-_b_a_s_e_d, controleur installe
sur la carte-mere, a l'interieur de la machine) et externes (NDT :
_s_c_s_i_-_t_o_-_s_c_s_i, controleurs connectes sur une chaine SCSI existante ; on
pourrait egalement dire additionnels) pouvant fonctionner sous Linux.
Ceci inclut les controleurs produits par Syred <
http://www.syred.com>,
ICP-Vortex <
http://www.icp-vortex.com>, et BusLogic <
http://www.bus-
logic.com>. De plus, il existe de nombreux controleurs additionnels.
Consultez la page RAID solutions for Linux
<
http://linas.org/linux/raid.html> pour plus d'informations.
Si, dans l'avenir, de nouveaux modeles sont supportes, je ferai de mon
mieux afin d'inclure ces informations dans ce document.
33.. QQuueell mmaatteerriieell vvaauutt--iill mmiieeuuxx uuttiilliisseerr ??
Connaissant ces donnees , vous devez, si vous cherchez une solution
RAID, reflechir a deux fois a ce que vous voulez. En fonction de ce
que vous voulez faire, et du niveau de redondance(NDT : ceci est une
traduction un peu libre de RAID level), certaines cartes seront
meilleures que d'autres. Les adaptateurs externes peuvent par exemple
ne pas etre aussi adaptes que les controleurs internes (consultez DPT
comparison between host-based and SCSI-to-SCSI adapters
<
http://www.dpt.com/hstvscsi.html> pour en connaitre les raisons).
Michael Neuffer (
[email protected]), auteur du pilote
EATA-DMA, discute de tout cela sur sa page Linux High Performance SCSI
and RAID page <
http://www.uni-mainz.de/~neuffer/scsi/>.
Pour les besoins de ce document, je considererai que vous ne disposez
que d'un systeme Linux en ordre de marche. Cependant, notez que je
n'ai fait l'essai que du controleur DPT Smartcache VI PM2144UW, avec
la tour fournie par DPT (SmartRAID tower), et que je n'ai pas
l'experience d'une autre configuration. Les choses peuvent donc etre
differentes pour votre configuration.
44.. IInnssttaallllaattiioonn
44..11.. IInnssttaalllleerr eett ccoonnffiigguurreerr llee mmaatteerriieell
Reportez-vous aux manuel d'instructions pour installer votre carte et
vos disques. Pour le materiel DPT, comme il n'existe pas encore de
gestionnaire de stockage pour Linux, vous devez creer un disque
formatte MS-DOS avec le systeme dessus (generalement grace a la
commande "format \s" a l'invite MS-DOS ). Vous utiliserez egalement le
gestionnaire de stockage DPT pour MS-DOS, dont vous devriez faire une
copie de sauvegarde par mesure de precaution.
Une fois le materiel en place, demarrez en utilisant le disque systeme
DOS. Remplacez le disque DOS par le gestionnaire de stockage. Et
lancez celui-ci avec la commande :
a:\ dptmgr
Attendez une minute et vous obtiendrez un sympathique menu d'options.
Configurez l'ensemble des disques comme materiel RAID (unite logique
unique ). Choisissez "other"(NDT : autre(s)) comme systeme
d'exploitation.
Le gestionnaire de stockage MS-DOS est beaucoup plus facile a utiliser
a la souris, et donc vous devriez avoir un gestionnaire de souris sur
le premier disque systeme que vous creerez.
Techniquement, il devrait etre possible de lancer le gestionnaire de
stockage de SCO sous Linux, mais cela pourrait vous apporter plus de
soucis que de facilites. Il est probablement bien mieux de lancer le
gestionnaire MS-DOS sous Linux.
44..22.. CCoonnffiigguurreerr llee nnooyyaauu
Vous devrez configurer le noyau en activant le support SCSI ainsi que
le gestionnaire de peripherique approprie. Voyez Kernel HOWTO
<
http://sunsite.unc.edu/mdw/HOWTO/Kernel-HOWTO.html>(NDT : Kernel
HOWTO <
http://www.freenix.fr/linux/HOWTO/Kernel-HOWTO.html> en
francais) pour toute information relative a la compilation du noyau.
Une fois que vous aurez choisi "yes" pour activer le support SCSI,
selectionnez, dans la section concernant les gestionnaires bas-niveau,
celui de votre choix (EATA-DMA pour la majorite des cartes compatibles
EATA-DMA (DPT), EATA-PIO pour les tres vieilles PM2001 et PM2012A de
DPT). La plupart des pilotes, ainsi que le pilote EATA-DMA, devrait
etre disponible dans les versions recentes du noyau.
Une fois que vous avez compile le noyau, relancez la machine, et si
vous avez tout configure correctement, vous devriez voir le pilote
considerer l'unite RAID comme un unique disque SCSI. Si vous utilisez
RAID-5, vous constaterez que la taille de l'unite correspond aux deux
tiers de l'espace total de stockage. Les messages que vous verrez lors
du demarrage devraient ressembler a :
EATA (Extended Attachment) driver version: 2.59b
developed in co-operation with DPT
(c) 1993-96 Michael Neuffer,
[email protected]
Registered HBAs:
HBA no. Boardtype Revis EATA Bus BaseIO IRQ DMA Ch ID Pr QS S/G IS
scsi0 : PM2144UW v07L.Y 2.0c PCI 0xef90 11 BMST 1 7 N 64 252 Y
scsi0 : EATA (Extended Attachment) HBA driver
scsi : 1 host.
Vendor: DPT Model: RAID-5 Rev: 07LY
Type: Direct-Access ANSI SCSI revision: 02
Detected scsi disk sda at scsi0, channel 0, id 8, lun 0
scsi0: queue depth for target 8 on channel 0 set to 64
scsi : detected 1 SCSI disk total.
SCSI device sda: hdwr sector= 512 bytes. Sectors= 35591040 [17378 MB] [17.4 GB]
(La sortie ci-dessus correspond a une configuration comportant un seul
controleur DPT, configure en RAID-5, avec trois disques de 9Go
chacun.)
55.. UUttiilliissaattiioonn
55..11.. ffddiisskk,, mmkkee22ffss,, mmoouunntt,, eettcc..
Vous pouvez desormais utiliser votre unite RAID comme un disque
normal. Le premiere chose que vous aurez a faire sera de partitionner
le disque (en utilisant fdisk). Vous devrez ensuite creer un systeme
de fichiers ext2. Ceci se fait par la commande :
% mkfs -t ext2 /dev/sdxN
ou /dev/sdxN est le nom de votre partition SCSI. Une fois ceci fait,
vous pourrez monter les partitions et les utiliser comme vous le
feriez pour tout autre disque (incluant l'ajout d'entrees dans le
fichier /etc/fstab).
55..22.. EEcchhaannggee aa cchhaauudd
Nous avons d'abord tente un echange a chaud(L'echange a chaud
(hotswapping) consiste en le remplacement d'une unite de l'ensemble
RAID alors que l'ordinateur est en fonctionnement) en retirant puis en
remettant un disque dans la boite/tour fournie par DPT (que vous
pouvez acheter moyennant supplement). Avant que nous ayons pu mener
l'operation a son terme, un des disques est tombe en panne ( pendant
que j'ecris ces lignes, la sonnerie commence a me rendre dingue ).
Malgre cette panne de l'un des disques, toutes les donnees stockees
sur l'unite RAID sont accessibles.
Au lieu de remplacer le disque, nous avons machinalement remis la meme
unite. L'unite s'est reconstruite et tout semble etre parfait. Durant
tout le temps de la panne, ainsi que durant la reconstruction, toutes
les donnees sont restees accessibles. Malgre tout, si un autre disque
etait tombe en panne, nous aurions eu des serieux problemes.
55..33.. PPeerrffoorrmmaanncceess
Ici sont retranscrites les sorties du programme Bonnie, sur un 2144UW
avec une condiguration de 9x3=17Go -- faux ! --> RAID-5. L'unite RAID
est connectee a une machine biprocesseurs Pentium Pro avec Linux
2.0.32. Pour comparer, les resultats de Bonnie sur les disques IDE de
cette machine sont aussi indiques.
-------Sequential Output-------- ---Sequential Input-- --Random--
-Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU /sec %CPU
RAID 100 9210 96.8 1613 5.9 717 5.8 3797 36.1 90931 96.8 4648.2 159.2
IDE 100 3277 32.0 6325 23.5 2627 18.3 4818 44.8 59697 88.0 575.9 16.3
Il est clair que l'unite RAID est performante pour les lectures et
ecritures de blocs (malgre la degradation des performances en ecriture
due a l'utilisation du RAID-5), mais n'est pas tres bonne pour ce qui
est des reecritures sequentielles.
66.. CCaarraacctteerriissttiiqquueess dduu ppiilloottee DDPPTT RRAAIIDD
Cette section decrit quelques-unes des commandes disponibles sous
Linux pour verifier la configuration RAID. De nouveau, meme s'il est
fait reference au pilote eata_dma, ceci peut etre utilise pour la
verification d'autres pilotes.
Pour voir la configuration de votre pilote, tapez :
% cat /proc/scsi/eata_dma/N
ou N est l'identificateur du controleur. Vous devriez obtenir quelque
chose comme :
EATA (Extended Attachment) driver version: 2.59b
queued commands: 353969
processed interrupts: 353969
scsi0 : HBA PM2144UW
Firmware revision: v07L.Y
Hardware Configuration:
IRQ: 11, level triggered
DMA: BUSMASTER
CPU: MC68020 20MHz
Base IO : 0xef90
Host Bus: PCI
SCSI Bus: WIDE Speed: 10MB/sec.
SCSI channel expansion Module: not present
SmartRAID hardware: present.
Type: integrated
Max array groups: 7
Max drives per RAID 0 array: 7
Max drives per RAID 3/5 array: 7
Cache Module: present.
Type: 0
Bank0: 16MB without ECC
Bank1: 0MB without ECC
Bank2: 0MB without ECC
Bank3: 0MB without ECC
Timer Mod.: present
NVRAM : present
SmartROM : enabled
Alarm : on
Host<->Disk command statistics:
Reads: Writes:
1k: 0 0
2k: 0 0
4k: 0 0
8k: 0 0
16k: 0 0
32k: 0 0
64k: 0 0
128k: 0 0
256k: 0 0
512k: 0 0
1024k: 0 0
>1024k: 0 0
Sum : 0 0
Pour obtenir les statistiques des commandes avancees, tapez :
% echo "eata_dma latency" > /proc/scsi/eata_dma/N
Ensuite, vous pouvez faire :
% cat /proc/scsi/eata_dma/N
pour obtenir des statistiques plus detaillees.
Pour desactiver les statistiques avancees, tapez :
% echo "eata_dma nolatency" > /proc/scsi/eata_dma/N
77.. EEnn ccaass ddee pprroobblleemmee......
77..11.. AAuuccuunnee uunniittee SSCCSSII nn''eesstt ddeetteecctteeee lloorrss dduu ddeemmaarrrraaggee
Ceci peut avoir de multiples causes, mais c'est probablement que le
pilote addequat n'a pas ete configure dans le noyau. Verifiez et
assurez-vous que le pilote (EATA-DMA pour la plupart des cartes DPT)
est configure.
77..22.. LLaa ccoonnffiigguurraattiioonn RRAAIIDD eesstt vviissiibbllee ccoommmmee NN ddiissqquueess ddiiffffeerreennttss
Le RAID n'a pas ete configure correctement. Si vous utilisez un
gestionnaire de stockage DPT, vous devez configurer les disques RAID
comme une seule unite logique. Michael Neuffer
(
[email protected]) ecrit "Quand vous configurez le
controleur avec le SM demarrez-le avec le parametre /FWO et/ou
selectionnez Solaris comme systeme d'exploitation. Cela configurera
l'unite pour etre controlee en interne par le controleur."
77..33.. SSii rriieenn nnee mmaarrcchhee......
Relisez le SCSI-HOWTO. Verifiez le cablage et les terminaisons.
Essayez une machine differente si vous en avez la possibilite. La
cause la plus commune de problemes avec les unites et les pilotes SCSI
est un materiel defectueux ou mal configure. Finalement, vous pouvez
ecrire dans les forums de discussion ou m'envoyer un courrier
electronique (NDT : a l'auteur, pas au traducteur...), et je ferai de
mon mieux pour vous aider.
88.. RReeffeerreenncceess
Les documents suivants vous seront tres utiles lorsque vous
configurerez une unite RAID :
+o DPT RAID Primer and other RAID/SCSI-related documents
<
http://www.dpt.com/techno.html>
+o EATA-DMA homepage <
http://www.uni-
mainz.de/~neuffer/scsi/dpt/index.html>
+o Linux Disk HOWTO <
http://sunsite.unc.edu/mdw/HOWTO/Disk-HOWTO.html>
+o Linux Kernel HOWTO <
http://sunsite.unc.edu/mdw/HOWTO/Kernel-
HOWTO.html>
+o Linux SCSI HOWTO <
http://sunsite.unc.edu/mdw/HOWTO/SCSI-HOWTO.html>
+o RAID Solutions for Linux <
http://linas.org/linux/raid.html>
99.. RReemmeerrcciieemmeennttss
Les personnes suivantes m'ont beaucoup aide pour la realisation de cet
HOWTO :
+o Boris Fain (
[email protected])
+o Jos Vos (
[email protected])
+o Michael Neuffer (
[email protected])
+o Ralph Wallace (
[email protected])
+o Russell Brown (
[email protected])
+o Syunsuke Ogata (
[email protected])