Version 0.2 ----------- 25 octobre 2002 : ajouts - Teresa Gomez-Diaz 22 octobre 2002 : version originale - Joel Marchand Référence --------- * les pages jaunes du catalogue Transtec Support ======= * plusieurs technologies d'attachement : IDE - SCSI - Fiber Channel - USB - Firewire/1394 - FlashDisk * il semble que cela soit le meme support magnétique après il y a peut-etre des différences de qualité, vu la différence de prix * différentes vitesses de rotation : 7200, 10000, 15000 tours/minute, voire aussi 4800 et 5400 tours/minutes (USB) différentes tailles 3.5, 2.5, 1.8, 1.3 pouces différentes hauteurs : 82 mm -> 12.5 mm * caractéristiques taux de transfert temps de positionnement cache mémoire * capacité de plus en plus grande, pour un cout fixe mais jamais inférieur à environ 150 euros IDE - EIDE - ATA - FastATA - UltraATA ------------------------------------- * ce qui existe dans le PC depuis le debut * 2 éléments par bus - souvent au plus 2 canaux par carte mère - - peu de carte d'extension ou de connexion d'externe -> au maximum 4 disques (- le(s) CD/graveur) - 2 elements par bus : primaire et secondaire - le secondaire est contacte si la requete n'est pas pour le primaire - un graveur doit etre mis en primaire, pour etre bien alimenté en données * capacités actuelles typiques : 20, 40, 80, 120, 160 Go, ... * vitesses de plus en plus grandes UltraATA (33 Mo/s) UltraATA/66 (66 Mo/s) UltraATA/100 (100 Mo/s) UltraATA/133 (133 Mo/s) ne pas confondre la vitesse du bus et du disque ! -> cf la commande 'hdparm' sur Linux pour en tirer partie à utiliser pour optimiser la vitesse de fonctionnement d'un disque, lors par exemple d'un ajout. les différences constatées sont alors importantes. * cela consomme du CPU, car pas de controleur spécialisé mais aujourd'hui quelle importance ? * cela traite les requetes dans l'ordre où elles sont émises une seule requete à la fois sur le bus à la différence d'un controleur SCSI -> réputation d'etre plus lent * disques au rapport prix/capacités imbattables, y compris pour de la sauvegarde/mirroring (pour se prémunir du crash disque ou du "rm" malheureux) SCSI - UltraWide SCSI - UW2 SCSI - UW160 SCSI - UW320 SCSI ---------------------------------------------------------- * Wide = 16 bits pour les data (avant : Narriw : 8 bits) UW160 = 160 Mo/s de débit maximal du bus * ce qui existe historiquement dans le monde de la station de travail * - jusque 15 éléments par bus SCSI autant de bus SCSI que de controleurs SCSI sur autant de slots PCI -> nombre maximum de disques "illimité" - attention au problème de longueur (étendue de 1.5 à 12m avec la technologie Low Voltage Differential (LVD) à partir d'UW2) et de terminaison de chaine -> il peut arriver que le device soit auto-terminé penser à ces questions en cas de problème sur un bus SCSI * capacités actuelles typiques : 18, 36, 72, ... * vitesses de bus de plus en plus grandes, mais alors attention au bus PCI lui-meme : cf les bus PCI 64 bits à 33, 66, 100 Mhz -> ne pas oublier de prendre en compte la vitesse du bus PCI pour avoir un lien performant (carte PCI, controleur, bus de données, disques durs) * pas de consommation de CPU - travail pris en charge par le controleur (de plus en plus présent sur les cartes mères) et réputation de meilleures performances (ordonnancement des requetes) mais cf http://www.cs.virginia.edu/~bsw9d/papers/ide_scsi.pdf -> débat pas simple * - grosse différence de prix avec les IDE (cout du controleur + surcout très important du disque) - un graveur sera mieux en SCSI (cf plus haut) - un bus IDE est plus sensible aux problèmes électriques Fiber-Channel ------------- * technologie haut de gamme dans les NAS et les SAN encore plus chère * lien entre les disques par fibre optique * debit de 2 Gbs (?) * nombre de disques chainable nettement plus grand ? USB --- * technologie lente, surtout utilisée pour Zip & cie, mais hot-plug * quid de USB 1 -> USB 2, réputé beaucoup plus rapide -> concurrent de FireWire Firewire -------- * autres noms : IEEE 1394 ; I-link * technologie plus rapide, utilisée pour les disques "pocket" portables (cf le monde Mac & iPod), concue pour la video numérique FlashDisk --------- * cher/capacité * usage dans les clients légers RAID ==== * l'idée n'est plus de faire pas cher un gros volume, mais de faire soit un très gros volume (si on veut un f.s plus gros qu'un disque), soit surtout d'avoir une redondance * RAID 0 : stripping écriture en // sur plusieurs disques plus vite qu'un seul disque * RAID 1 : mirroring redondance totale 1/2 espace utilisé meme vitesse d'écriture qu'un seul disque, et lecture plus rapide par choix de la tete la plus proche * RAID 5 : parité répartie sur les disques redondance sur la panne d'un disque capacité utile = n-1 disques moins vite qu'un seul disque, surtout sur petites requetes * amélioration des perfs par gros cache mémoire ==> batterie jusque 256 Mo en cas de panne électrique, ces piles peuvent garder les données que durant quelques jours après, il faut du temps pour les recharger * configs mixtes : RAID 0+1, 0+5, .. * controleurs - certaines cartes mère intègrent la gestion de RAID 0 ou 1 entre deux disques IDE -> tres peu cher - semble bien fonctionner - logiciels (Linux, FreeBSD) : lents, gratuits, mais au point -> très lent - sur carte PCI : pas trop cher -> soft d'admin tournant dans l'OS du processeur ? possibilité de reconstruction à chaud ? admin => passage sous le BIOS ? - dans baie de disque externes via un processeur et un micro-OS spécialisé : admin par LCD, port série ou http -> pas mal de bonnes (et moins bonnes) expériences avec cela charme de la pérennité de vieux modes d'administration (LCD, vt100) * notion de disque de spare - prédéfini et pret à emploi -> reconstruction auto. - fonction hot-plug/hot-swap -> résolution complète de crash disque totalement à chaud * IMPORTANT - attention à la loi de l'e..... maximal : 2 disques H.S - ne pas croire qu'il ne faut pas faire de sauvegarde !! rm archivage bug du controleur perte de deux disques ==> perte de toutes les données degat physique Exemples d'organisation physique ================================ A/ machine classique -------------------- 1/ <=4 disques IDE internes -> le PC classique pas cher 2/ <= 6 à 10 disques SCSI internes éventuellement hot-swap et hot-plug -> mais quid de l'OS ? éventuellement avec controleur RAID interne 3/ controleur(s) SCSI sur slot PCI, avec connecteur externe et disques autonomes externes 4/ baie de disques externes attachement : SCSI ou FiberChannel interne : IDE, SCSI ou FiberChannel sans ou avec controleur RAID Tendances et observations : - 1/ : peut désormais suffire pour faire un serveur d'applications qui ne contient pas de données utilisateurs et qui ne va quasiment pas faire d'I/O en local sur ses disques - 2/ : remplace de plus en plus 3/, et permet d'avoir qqch de plus compact, plus robuste (double alim, pas de pb d'alim dans les boitiers externes, double ventilation, hot-plug) -> nombreuses offres chez les constructeurs - 3/ : offre tjs le confort de pouvoir déplacer le disque sur un autre serveur - 4/ : on trouve des baies SCSI/IDE pour un rapport prix/capacité très bon les baies SCSI/SCSI semblent etre en fin de vie elles sont remplacées par des baies FC/SCSI ou FC/FC plus extensibles et permettant de commencer un SAN B/ serveur NAS (Network Attached Storage) ----------------------------------------- * idée sous-jacente : intégrer complètement les fonctions de stockage partage de fichiers réseau : NFS, SMB/CIFS, AFP administration de cela dans une boite noire qu'on oublie, et qu'on gere plus facilement qu'un OS traditionnel * leader du marché : Network Appliance -> c'est la Rolls Royce... * prix abordables : plein de configs +/- grosses basée sur des coeurs en Windows 2000 : confiance ? exception : chez Iomega (petites configs) avec OS libre * configuration en SCSI et en IDE * très tentant : fonctions de snapshots (quand cela existe !) -> pour se prémunir du "rm" malheureux jusqu'à 32 snapshots sur un NetApp - à instants choisis * avantage/inconvénient des boites noires ex : sécurité == sécurité donnée avec la boite, pas de correctif possible, à part via la maintenance du vendeur -> pas vu de produit intéressant et abordable C/ réseau SAN (Storage Area Network) ------------------------------------ * idée sous-jacente : constituer un résau de stockage distinct du réseau de traitement, et masquer aux serveurs la localisation réelle des données -> possibilité d'aller jusque deux réseaux complètement distincts * technologie, protocoles et connecteurs Fiber Channel * partage d'une meme baie par plusieurs serveurs plusieurs serveurs peuvent constituer un espace vu un meme serveur interconnexion via des switches dédiés entre les baies et les serveurs * complexité, extensibilité, prix plus élevés maturité (interdépendance : serveurs/connecteurs/switches/baies) moindre que SCSI -> on vous dira si cela marche bien ;-) Organisation logique ==================== * les filesystems locaux - classiques quid des paramètres par défaut sur le # d'inodes le % de place libre la taille des blocs ? -> possibilité de modifier cela a posteriori par 'tunefs' conseil : taille de bloc du f.s == taille du bloc d'une baie RAID - réponse au fsck et à l'intégrité : filesystems journalisés softupdates cf http://www.freebsd-fr.org/doc/fr/books/systeme-fichier/index.html http://www.usenix.org/publications/library/proceedings/usenix2000/general/full_papers/seltzer/seltzer_html/ -> dans FreeBSD 5.0 le facsk se fait en background - serveur disponible de suite mais dans quel état est le f.s ? - autres fonctions avancées usage de plusieurs disques pour un meme f.s taille max du f.s, taille max. d'un fichier extension à la volée snapshots - Unix historique : ufs FreeBSD : ufs avec softupdates Solaris : ufs avec softupdates ? ufs avec snapshots entre 2 boots Linux : ext2, ext3, reiserfs ext2 : très rapide ext3 : compatible dans les 2 sens avec ext2 au point - stable - journalisé reiserfs : ancien pb avec export par NFS corrigé avenir ? <- développement d'une personne xfs : ? AIX : jfs Tru64 : advfs IRIX : xfs - Windows : FAT 16, FAT 32 : à oublier NTFS : journalisé, droits nettements plus fins -> comment on les sauve ? fragmentation ? bonne réputation ? possibilité de lecture voire écriture depuis Linux fluctuante dans le temps -> tendance voulue par M$ : ne pas permettre une bonne collaboration avec les Unix/Linux - Macintosh : HFS, HFS+ : un fichier est en fait 2 fichiers (data et ress.) UFS (avec MacOS X) - les surcouches : vxfs de Veritas : très cher - uniquement Solaris - demain Linux * les filesystems distribués, cad répartis sur plusieurs machines AFS PFS, GPFS ? projet de f.s du projet Mosix ? * NFS : - v2, v3, demain v4 (?) - pas d'authentification d'usagers -> DANGER !!! qui à accès physique à une machine cliente peut devenir root, donc n'importe quel uid, donc peut accèder aux fichiers de n'importe qui qui peut prendre le numéro IP d'une machine cliente : idem - bonne fiabilité et performances -> interet des automounters ? je n'utilise plus automount :-) - problème vu du client quand le serveur est down - attention à NFS v3 en monde hétérogène - NFS sur Linux versus FreeBSD ou Solaris ? - NFS et routage IP sur commutateur/routeur de niveau 3 ? - on peut jouer sur les paramètres au niveau client sur UDP versus TCP : conseil a priori = UDP v2 / v3 : conseil a priori = v3 taille des blocs : conseil a priori = 8192 cf http://www.citi.umich.edu/techreports/reports/citi-tr-01-12.pdf * SMB/CIFS : - Samba, pour causer d'un Unix vers des PC - Windows NT et 2000 - authentification/usager, avec mot de passe chiffré - performances aussi bonnes ? - quid des droits NTFS plus fins que ceux d'Unix ? - outil 'smbmount', permettant de monter par /etc/fstab ou l'auto-mounter, avec mise en clair du mot de passe dans un fichier (bof !) ou frappe à la demande (à voir) * AFP : - NetAtalk, pour causer d'un Unix vers des Mac -> chargement d'un module ou recompilation du noyau Unix - authentification/usager, avec mot de passe chiffré (c'est dit "clairement" par l'interface du client sur le Mac) - performances aussi bonnes ? - quel avenir ? * synchronisation d'arborescences : - peut souvent suffire pour remplacer le montage par NFS de machines personnelles clientes, qui veulent juste dupliquer - unidirectionnel : rsync (Unix - au-dessus de SSH) - bidirectionnel : unison (Windows/Unix - au-dessus de rsync) - mondes Mac et Windows ? Exemple de Jussieu ================== - 1996 -> fin 1999 : 1 baie SCSI/SCSI de 6*4 Go sur serveur Sun pour tout l'IMJ -> environ 15 Go nets - 1998 -> auj. : en plus, 1 autre baie SCSI/SCSI de 6*4 Go sur un Compaq Proliant Linux 2.2 - fin 1999 -> auj. : 1 "petit" PC sous FreeBSD 4.5 2 controleurs UW2 4 disques UW2 18 Go -> 66% d'occupation 2 disques IDE 80 Go - 1 mirroir de l'autre pour les zones scratch - autre serveur : Mac - MacOS 9.1 - AppleShare IP 6.3 (-> AFP et SMB) - 1 disque 36 Go pour espace de mirroring -> sauvegarde pour Mac et PC : bof - demain : 1 "gros" PC sous FreeBSD 1 baie FC/SCSI - 7 disques 72 Go en RAID 5 + 7 slots extension possible : infinie + 1 "moyen" PC sous FreeBSD 1 baie SCSI/IDE - 8 disques 120 Go en RAID 5 fonction de mirroring/snapshot du pauvre via 'tar' ou 'rsync' + liaison via 2 cartes Giga optiques sur notre commutateur - entre les serveurs et les postes clients : pas de partage par NFS pas de partage par Samba epsilon de partage par AFP en fait, les gens sont quasi strictement dans deux groupes utilisateurs tX-> serveurs -> $HOME sur serveur commun utilisateurs Mac/PC -> $HOME sur poste personnel mise en place de 'unison' (1er groupe) accès depuis Internet du serveur Mac par SMB et AFP (2eme groupe) Remarques en vrac ================= * les matheux consomment très peu en comparaison de la taille des disques actuels ! -> la capacité d'un disque IDE du premier PC IDE suffit pour tout un labo de taille ordinaire -> distingo très fort entre matheux qui calculent et matheux qui ne calculent pas * l'évolution de l'espace utilisé est très très linéaire, avec un taux de progression très faible. Ex : nos 4*18 Go : fin 1999 = un peu moins de 50% auj = environ 66% * comme la taille, les volumes d'I/O, les besoins en performances les besoins en réseau, sont devenus quasi négligeables comparés aux possibilités actuelles des technologies. * ce qui reste cher, c'est la sauvegarde (cf plus loin). Envie de continuer à dissocier $HOME et 'zone scratch' (MP3, DivX, CD, ...) * c'est dur de maintenir l'idée d'un serveur commun versus tout sur son PC perso -> arguments sécurité physique (vol !) bruit sauvegarde disponibilité de partout accès depuis l'extérieur synchro par 'rsync' ou 'unison' -> contre-arguments des utilisateurs les portables ... * attention au partage NFS entre le serveur et les postes du LAN !! -> avenir de NFS sur le poste client ? quid de remplacer par SMB/CIFS ? envie de "monter" dans un arbre Unix un volume par SMB... * la nouvelle problématique va se situer dans la possibilité de donner accès au $HOME des gens depuis le maximum de postes et d'endroits -> concept de 'disque Internet' uniformément accessible depuis son bureau, son domicile, son labo de visite => authentification par usager sans transmission de mot de passe en clair - oui avec SMB et AFP - oui avec rsync/unison, mais => duplication - non avec NFS v3 ; peut-etre demain avec NFS v4 (prévu pour ?) * comme pour la messagerie entre une approche POP sur mon portable versus IMAP en ligne depuis partout, il y a deux approches radicalement différentes pour faire cela - tous les fichiers sur le portable de l'utilisateur -> tendance naturelle de nos collègues gros DANGERS : sauvegarde, perte, vol, sécurité, cout mais vrai confort au premier ordre - tous les fichiers sur le serveur du labo, avec accès souple depuis tout l'Internet, mais sait-on ou veut-on faire ? -> grand chantier pour l'avenir. Opposition centrale modèle centralisé / distribué.