|
Quand il est question du choix d'une solution de stockage de masse les critères de choix les plus importants à considérer sont la vitesse, la fiabilité, et le coût. Il est plutôt rare de pouvoir réunir ces trois critères; normalement un périphérique de stockage rapide et fiable est coûteux, et pour diminuer les coûts la vitesse ou la fiabilité doivent être sacrifiées.
A la conception du système décrit plus bas, le coût a été choisi comme facteur le plus important, suivi de la vitesse, et enfin la fiabilité. La vitesse de transfert des données est limitée par le réseau. Et tandis que la fiabilité est très importante, le disque CCD décrit ci-dessous est destiné au stockage de données en ligne qui sont déjà complètement sauvegardées sur CD-Rs et qui peuvent être facilement remplacées.
Définir vos propres besoins est la première étape dans le choix d'une solution de stockage de masse. Si vos critères de choix privilégient la vitesse ou la fiabilité par rapport au coût, votre solution diférera du système décrit dans cette section.
En plus du disque système IDE, trois disques Western Digital de 30GO, 5400 trs/min IDE forment le coeur du disque CCD décrit ci-dessous donnant approximativement 90GO de stockage en ligne. La solution idéale serait d'avoir pour chaque disque IDE son propre câble et contrôleur IDE, mais pour minimiser les coûts, des contrôleur IDE supplémentaires n'ont pas été utilisés. Aussi, les disques ont été configuré de telle façon que chaque contrôleur IDE ait un disque maître et un disque esclave.
Au redémarrage, le BIOS a été configuré pour détecter automatiquement les disques attachés. FreeBSD les a d'ailleurs détectés au redémarrage:
ad0: 19574MB <WDC WD205BA> [39770/16/63] at ata0-master UDMA33 ad1: 29333MB <WDC WD307AA> [59598/16/63] at ata0-slave UDMA33 ad2: 29333MB <WDC WD307AA> [59598/16/63] at ata1-master UDMA33 ad3: 29333MB <WDC WD307AA> [59598/16/63] at ata1-slave UDMA33
Note : Si FreeBSD ne détecte pas les disques, assurez-vous que vous avez correctement placé les cavaliers. La plupart des disques IDE disposent également d'un cavalier ``Cable Select''. Ce n'est pas le cavalier de configuration maître/esclave. Consultez la documentation du disque pour identifier le cavalier correct.
Ensuite, réfléchissez sur la manière de les intégrer au système de fichiers. Vous devriez faire des recherches sur vinum(8) (Chapitre 17) et ccd(4). Dans cette configuration particulière, ccd(4) a été choisi.
Le pilote ccd(4) vous permet de prendre plusieurs disques identiques et les concaténer en un seul système de fichiers logique. Afin d'utiliser ccd(4), vous avez besoin d'un noyau avec le support ccd(4). Ajoutez la ligne suivante à votre fichier de configuration de noyau, recompilez, et installez le noyau:
pseudo-device ccd 4
Sur les systèmes 5.X, vous devez utiliser la ligne suivante à la place:
device ccd
Note : Sous FreeBSD 5.0, il n'est pas nécessaire de préciser le nombre de périphériques ccd, étant donné que le pilote de périphérique ccd est désormais auto-duplicable -- les nouveaux périphériques seront automatiquement créés à la demande.
Le support ccd peut également chargé sous la forme d'un module noyau sous FreeBSD 4.0 et suivantes.
Pour configurer ccd, vous devez tout d'abord utiliser disklabel(8) pour labéliser les disques:
disklabel -r -w ad1 auto disklabel -r -w ad2 auto disklabel -r -w ad3 auto
Cela a créé un label de disque ad1c, ad2c et ad3c qui s'étend sur l'intégralité du disque.
Note : Depuis la version FreeBSD 5.1-RELEASE, l'utilitaire bsdlabel(8) remplace l'ancien programme disklabel(8). Avec bsdlabel(8) de nombreuses options et paramètres obsolètes ont été retirés; dans les exemples ci-dessus, l'option -r doit être enlevée. Pour plus d'information, consultez la page de manuel bsdlabel(8).
L'étape suivante est de modifier le type de label de disque. Vous pouvez utiliser disklabel(8) pour éditer les disques:
disklabel -e ad1 disklabel -e ad2 disklabel -e ad3
Cela ouvre le label de disque actuel de chaque disque dans l'éditeur fixé par la variable d'environnement EDITOR, généralement, vi(1).
Un label de disque non modifié ressemblera à quelque chose comme ceci:
8 partitions: # size offset fstype [fsize bsize bps/cpg] c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597)
Ajoutez une nouvelle partition e pour être utilisé par ccd(4). Cela peut être une copie de la partition c mais le type de système de fichiers (fstype) doit être 4.2BSD. Le label de disque devait ressembler à:
8 partitions: # size offset fstype [fsize bsize bps/cpg] c: 60074784 0 unused 0 0 0 # (Cyl. 0 - 59597) e: 60074784 0 4.2BSD 0 0 0 # (Cyl. 0 - 59597)
Le fichier spécial de périphérique pour ccd0c peut ne pas exister encore, aussi pour le créer, lancez les commandes suivantes:
cd /dev sh MAKEDEV ccd0
Note : Sous FreeBSD 5.0, devfs(5) gèrera automatiquement les fichiers spéciaux de périphérique dans /dev, aussi l'utilisation de MAKEDEV n'est pas nécessaire.
Maintenant que tous les disques sont labélisés, vous devez construire le ccd(4). Pour cela, utilisez ccdconfig(8), avec des options semblables à ce qui suit:
ccdconfig ccd0 32 0 /dev/ad1e /dev/ad2e /dev/ad3e
L'utilisation et la signification de chaque option est données ci-dessous:
Après avoir utilisé ccdconfig(8) le ccd(4) est configuré. Un système de fichiers peut être créé. Consultez la page de manuel de newfs(8) pour les options disponibles, ou lancez simplement:
newfs /dev/ccd0c
Généralement, vous voudrez monter le ccd(4) à chaque redémarrage. Pour cela, vous devez le configurer avant toute chose. Ecrivez votre configuration actuelle dans /etc/ccd.conf en utilisant la commande suivante:
ccdconfig -g > /etc/ccd.conf
Lors du démarrage, la procédure /etc/rc exécute ccdconfig -C si /etc/ccd.conf existe. Cela configure automatiquement le ccd(4) de façon à pouvoir être monté.
Note : Si vous démarrez en mode mono-utilisateur, avant que vous ne puissiez monter le ccd(4), vous devez utiliser la commande suivante pour configurer l'unité:
ccdconfig -C
Pour monter automatiquement le ccd(4) placez une entrées pour le ccd(4) dans /etc/fstab, il sera ainsi monté au démarrage:
/dev/ccd0c /media ufs rw 2 2
Le gestionnaire de volume Vinum est un pilote de périphérique de gestion de disques virtuels. Il sépare le disque matériel de l'interface de périphérique bloc et organise les données de telle façon qu'il en résulte une amélioration de la flexibilité, des performances et de la fiabilité, comparé à la vision traditionnelle sous forme partitionnée du stockage disque. vinum(8) implémente les modèles RAID-0, RAID-1 et RAID-5, individuellement ou combinés.
Voir le Chapitre 17 pour plus d'information au sujet de vinum(8).
FreeBSD supporte également de nombreux contrôleurs RAID. Ces périphériques peuvent contrôler un système RAID sans nécessiter l'utilisation d'un logiciel spécifique pour FreeBSD pour gérer l'unité.
En utilisant son propre BIOS, la carte contrôle la plupart des opérations disque. Ce qui suit est une description rapide d'une configuration utilisant un contrôleur Promise IDE RAID. Quand cette carte est installée et le système redémarré, une invite s'affichera posant quelques questions. Suivez les instructions à l'écran pour atteindre l'écran de configuration de la carte. A partir de là, vous avez la possibilité de combiner tous les disques attachés. En faisant cela, les disques apparaîtront sous la forme d'un unique disque sous FreeBSD. D'autres niveaux RAID peuvent être configurés en conséquence.
FreeBSD vous permet de remplacer à chaud un disque défectueux dans une unité. Cela doit être fait avant redémarrage.
Vous verrez probablement dans /var/log/messages ou dans la sortie de dmesg(8) quelque chose comme:
ad6 on monster1 suffered a hard error. ad6: READ command timeout tag=0 serv=0 - resetting ad6: trying fallback to PIO mode ata3: resetting devices .. done ad6: hard error reading fsbn 1116119 of 0-7 (ad6 bn 1116119; cn 1107 tn 4 sn 11) status=59 error=40 ar0: WARNING - mirror lost
En utilisant atacontrol(8), recherchez de plus amples informations:
# atacontrol list ATA channel 0: Master: no device present Slave: acd0 <HL-DT-ST CD-ROM GCR-8520B/1.00> ATA/ATAPI rev 0 ATA channel 1: Master: no device present Slave: no device present ATA channel 2: Master: ad4 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5 Slave: no device present ATA channel 3: Master: ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5 Slave: no device present # atacontrol status ar0 ar0: ATA RAID1 subdisks: ad4 ad6 status: DEGRADED
Vous devrez détacher le disque de l'unité de façon à pouvoir le retirer sans risque:
# atacontrol detach 3
Remplacer le disque.
Rattacher le disque de rechange:
# atacontrol attach 3 Master: ad6 <MAXTOR 6L080J4/A93.0500> ATA/ATAPI rev 5 Slave: no device present
Recontruire l'unité:
# atacontrol rebuild ar0
La commande de reconstruction se bloque jusqu'à accomplissement. Cependant, il est possible d'ouvrir un autre terminal (en utilisant Alt+Fn) et contrôler l'avancée de la procédure en utilisant la commande suivante:
# dmesg | tail -10 [output removed] ad6: removed from configuration ad6: deleted from ar0 disk1 ad6: inserted into ar0 disk1 as spare # atacontrol status ar0 ar0: ATA RAID1 subdisks: ad4 ad6 status: REBUILDING 0% completed
Attendre jusqu'à la fin de cette opération.
Précédent | Sommaire | Suivant |
Ajouter des disques | Niveau supérieur | Périphériques de stockage USB |
Ce document, ainsi que d'autres peut être téléchargé sur ftp.FreeBSD.org/pub/FreeBSD/doc/.
Pour toutes questions à propos de FreeBSD, lisez la documentation avant de contacter <questions@FreeBSD.org>.
Pour les questions sur cette documentation, contactez <doc@FreeBSD.org>.
Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:14