Pour mon anniversaire, j’ai demandé une paire de WD 500Go. L’idée était de me faire un NAS et accessoirement securiser ma machine de developpement (non c’est pas pour pécho tes films de merde Christine).
Pour ce faire, j’avais déjà dans l’idée d’utiliser le driver RAIDframe de NetBSD. La documentation officielle issue du NetBSD Guide est extrèmement complète et détaillée, mais j’ai trouvé l’exemple d’utilisation peu explicite. Aussi, si vous souhaitez vous essayer au RAID logiciel, je vous conseille de lire en parallèle la documentation originale de Martti Kuparinen, et en particulier de suivre son exemple de disklabel qui m’a aidé à comprendre comment RAIDiser un disque entier.
Si l’on est bien ordonné et méthodique, l’opération dure à peine plus d’une heure, à l’issue de laquelle on s’extasiera devant un df -h :
Filesystem Size Used Avail %Cap Mounted on /dev/raid0a 9.7G 49M 9.2G 0% / /dev/raid0f 9.4G 38M 8.9G 0% /var /dev/raid0e 47G 2.7G 42G 6% /usr /dev/raid0g 369G 1.7G 348G 0% /home mfs:171 497M 6.0K 472M 0% /tmp kernfs 1.0K 1.0K 0B 100% /kern ptyfs 1.0K 1.0K 0B 100% /dev/pts procfs 4.0K 4.0K 0B 100% /proc
On lira et relira des extraits de dmesg(8)
Kernelized RAIDframe activated Searching for RAID components... Component on: wd0a: 976773105 Row: 0 Column: 0 Num Rows: 1 Num Columns: 2 Version: 2 Serial Number: 20090619 Mod Counter: 152 Clean: No Status: 0 sectPerSU: 128 SUsPerPU: 1 SUsPerRU: 1 RAID Level: 1 blocksize: 512 numBlocks: 976772992 Autoconfig: Yes Contains root partition: Yes Last configured as: raid0 Component on: wd1a: 976773105 Row: 0 Column: 1 Num Rows: 1 Num Columns: 2 Version: 2 Serial Number: 20090619 Mod Counter: 152 Clean: No Status: 0 sectPerSU: 128 SUsPerPU: 1 SUsPerRU: 1 RAID Level: 1 blocksize: 512 numBlocks: 976772992 Autoconfig: Yes Contains root partition: Yes Last configured as: raid0 Found: wd0a at 0 Found: wd1a at 1 RAID autoconfigure Configuring raid0: Starting autoconfiguration of RAID set... Looking for 0 in autoconfig Found: wd0a at 0 Looking for 1 in autoconfig Found: wd1a at 1 raid0: allocating 20 buffers of 65536 bytes. raid0: RAID Level 1 raid0: Components: /dev/wd0a /dev/wd1a raid0: Total Sectors: 976772992 (476939 MB) raid0: configured ok
Mais surtout, on restera bouche bée devant la vitesse d’un filesystem fondé sur du RAIDframe et journalisé avec WAPBL.
Oh, une dernière chose, ne faites pas comme moi, et lisez correctement les liens cités précedemment, en particulier le gros warning rouge qui dit :
“Always use shutdown(8) when shutting down. Never simply use reboot(8). reboot(8) will not properly run shutdown RC scripts and will not safely disable swap. This will cause dirty parity at every reboot.”
hmf…
June 20th, 2009 at 11:48 am
Tu t’es mis un post-it sur l’écran “ne pas utiliser reboot(8)” ? Nan parce que c’est con comme problème.
June 20th, 2009 at 2:54 pm
tu plaisantes mais je me suis tâté à les renommer en reboot-dontuse et fastboot-dontuse :)
June 21st, 2009 at 12:22 pm
En lisant ce billet je me suis posé une question, en effet beaucoup de cartes mères ont un utilitaire pour faire du raid mais j’en ai souvent eu de mauvais échos, tu a fait un raid logiciel car tu n’avais pas le choix (possibilité non-offerte par la CM) ou tout simplement parce que tu préfère ?
Ron
June 21st, 2009 at 5:15 pm
D’une part, la carte mère bon marché qui équipe cette machine (Gigabyte G31M-ES2L, 40€ à Montgallet) ne propose pas cette fonction; mais surtout, depuis le temps que je voyais mon noyau NetBSD me dire Kernelized RAIDframe activated, j’avais envie de m’y essayer :)
January 15th, 2010 at 7:53 am
[...] iMil, tu testes ? [...]