mercredi 21 octobre 2015

Réflexion sur le NAS "Home made" 1 - Introduction

J'ai décidé d'étudier l'opportunité de m'assembler un NAS.  Et j'ai commencé à gratter le sujet qui s'est avéré riche et ardu.

J'ai essayé de faire oeuvre de vulgarisation sur le sujet en même temps que je complétais mes connaissances initiales par la lecture de nombreuses sources. Je ne suis pas un expert et ce travail est plus qu'incomplet mais je pense qu'il peut constituer un point d'entrée intéressant pour quelqu'un de novice ou en phase de montée en compétences.

Tout d'abord dans cette introduction, et en application du principe "ça va toujours mieux en le disant", le rappel de quelques évidences.


Pour les personnes peu familiarisées avec le hardware (le matériel), j'ai écrit un article qui explique le B-A BA du hardware  ; si vous ne comprenez pas tout dans les paragraphes qui suivent (qui sont très peu techniques mais nécessitent tout de même un minimum de connaissances en informatique), il peut être intéressant de le parcourir avant de lire ce qui suit.


Un NAS est un serveur, pas un PC

Un serveur est une machine mutualisée et utilisée simultanément par plusieurs utilisateurs, tandis qu'un PC est un ordinateur personnel dédié à un ou éventuellement plusieurs utilisateur mais pas simultanément.

Du coup les contraintes sont plus fortes (plus fortement sollicitée, plus critique) et les plateformes matérielles comme logicielles envisageables plus nombreuses, plus complexes, et moins accessibles aux non initiés.

Qu'entendons nous par plus critique ? Si vous confiez à un NAS le stockage de tous vos fichiers et qu'il tombe en panne, c'est bien plus ennuyeux que si une des machines de votre réseau local prend feu, car ce sont tous les utilisateurs qui sont impactés. Moi je dis ça, mais c'est vous qui expliquerez à bobonne que ses photos de vacances sont perdues...

Aujourd'hui monter un PC de bureau est à la portée d'à peu près n'importe qui d'un peu curieux grâce au développement des sites de vente en ligne qui ont bien compris l'intérêt d'aider les newbies ou les passionnés en mettant à disposition de nombreux tutoriaux et documentations techniques.

La situation est par contre différente pour le marché des serveurs, qui adresse un public plus restreint et plus généralement professionnel, et ne bénéficie pas du même niveau de support, voire de transparence. Cependant, en cherchant bien, on trouve de nombreuses ressources intéressantes, même parfois en Français pour ceux que l'anglais rebute (ce qui risque tout de même de s'avérer totalement rédhibitoire) ; il faut cependant faire attention, garder un œil critique, et surtout vérifier la date de publication des articles, les choses évoluant très vite.

Alors, il est toujours possible de monter un NAS low cost en recyclant des pièces de PC mais il y aura des limitations dont il faut avoir conscience (en terme de fiabilité de fonctionnement, de niveau de service, d'encombrement et de consommation électrique).

Si vous voulez creuser un peu plus en avant ce point, je vous suggère cette ressource : Server Hardware Explained ; ça se lit comme un roman ;-)


Il existe pour les NAS une grande diversité de plateformes éligibles

Le panorama des technologies informatiques a beaucoup évolué récemment avec une mise en cause du socle "traditionnel" Wintel (Windows sur plateforme Intel) qui tient le haut du pavé depuis 25 ans, mais qui est fragilisé par les nouvelles tendances de consommation (tablettes, smartphones, baisse continue de la vente de PC).

En gros, il y a encore peu, pour monter une machine on choisissait un processeur Intel x86, ou un équivalent chez AMD selon ses moyens et objectifs, on trouvait une carte mère qui allait avec sans trop de difficulté, puis on ajoutait le reste. Les standards de connectique étant assez stables et bien connus, la difficulté n'était pas majeure. La grande majorité installait un Windows là dessus, les plus aguerris prenaient un Linux qui supporte très bien l'architecture x86 (il faut quand même dans ce cas faire attention aux périphériques qui sont bien moins largement supportés et faire ses choix en conséquence).

Ajoutons que ces dernières années le choix entre Intel et AMD était assez simple étant donné que Intel avait largement le dessus sur le haut de gamme, et qu'AMD en était réduit à se battre sur les prix dans les segments inférieurs du marché (ça n'a pas toujours été le cas, la situation était plutôt à l'avantage d'AMD à une époque plus ancienne mais pas si lointaine, avec un meilleur rapport qualité/prix ; cependant l'arrivée de la micro-architecture core chez Intel a rebattu les cartes).

En simplifiant à outrance, et si on n'avait pas une imagination débridée, si on voulait un serveur ou une station de travail très puissante, on prenait un processeur dans la gamme Intel Xeon, pour un PC puissant on tapait dans du Intel core-i7 (gamer, programmeur, montage vidéo ou retouche photo HD ...), pour des configurations plus modestes (bureautique, surf internet) on prenait du Intel core-i5 ou Intel core-i3, voire des versions dégradées encore moins chères (Celeron / Pentium).

La principale difficulté était, selon moi, dans le choix de la GPU (la carte graphique qui gère l'affichage vidéo) pour les configurations avancées. Mais tout le monde n'a pas cette problématique et les GPU intégrées aux processeurs actuels sont largement suffisantes pour les usages courants.

Bref, tout ça pour dire que monter un NAS un tant soit peu sérieux, c'est une autre paire de manche que monter un PC car on est amené à considérer :
  • des architectures processeur différentes de Intel x86
  • au sein de l'architecture Intel x86, des micro-architectures spécifiques (différentes de celles utilisées pour les PC de bureau, typiquement la gamme Atom)
  • un plus large panel de systèmes d'exploitations (Windows, Linux, Unix)

Pour les besoins les plus complexes, on doit également aborder de nombreux autres aspects spécifiques (contrôleurs disques ou réseau évolués pour l'essentiel) mais j'ai choisi de ne pas les aborder, d'une part pour limiter la complexité du sujet, d'autre part car cela implique le recours à des composants haut de gamme extrêmement coûteux ce qui ne se justifie que pour des usages professionnels (et ici je vise bien entendu un usage domestique, les professionnels qui passeraient par ici seraient certainement amusés par mon explication basique).


Il faut commencer par définir ce qu'on attend du NAS 

Si vous vous posez des questions sur l'opportunité d'acheter/construire un NAS mais sans vraiment maîtriser ce que c'est, pour suivre le le conseil du cousin Régis (et comme on le sait bien, Régis est un con, pardon pour les Régis), ou parce que le site topmoumoute.com vous explique que vous êtes un has-been sans ça, vous êtes au bon endroit.

Dans une première étape, la chose principale à retenir est : avant de vous lancer, commencez pas définir ce que vous voulez faire avec votre NAS.

J'insiste car même si ça semble tomber sous le sens, on a souvent tendance à réfléchir à une solution avant même de définir ses besoins. Et vu la complexité du sujet et le coût d'un NAS, la précipitation peut coûter cher.

Le nombre de modèles existant est très important et si il y a un tel écart de prix entre les modèles les moins chers et les plus chers, ce n'est pas dû au hasard, c'est qu'ils sont adaptés à des usages différents nécessitant des configuration plus ou moins performantes sur tel ou tel aspect (puissance de traitement, capacité de stockage, tolérance aux pannes, support matériel pour la cryptographie, support matériel pour l'encodage/décodage des flux vidéo en temps réel...). Bon le marketing, cette plaie de notre époque, peut également jouer.

Dans le cas de l'assemblage d'un NAS maison, c'est encore plus indispensable de bien définir vos critères de choix sinon vous risquez de vous noyer dans toutes les possibilités et de passer des journées entières à lire des documentations et valider la cohérence de tel ou tel assemblage de pièces et de logiciel.

Pour les personnes peu familiarisées avec les multiples cas d'usages d'un "NAS" (encore une fois, je trouve le terme usurpé dans un certain nombre de cas, d'où les guillemets), j'ai également écrit un petit article sur le sujet. C'est assez lapidaire car une fois de plus je m'attache au sujet d'un NAS domestique et non pas professionnel, mais ça devrait, je l'espère, contrebalancer les effets néfastes d'un marketing qui nous prend pour des buses.


Assembler ou acheter tout fait ?

Alors vous me direz pour commencer : pourquoi assembler un NAS alors qu'il existe des fournisseurs renommés (Synology, Qnap ...) qui vendent des solutions clef en main réputées pour leur simplicité et leur bon fonctionnement ?
  • Les discours marketing constituent des écrans de fumée parfaitement opaques et il est bien difficile de s'y retrouver dans la jungle des modèles ; le risque de se retrouver avec une machine sous dimensionnée et inexploitable, non évolutive, ou à l'inverse payée beaucoup trop chère car sur-dimensionnée est bien réel (l'avantage c'est qu'il y a un marché de l'occasion avec tous les gens qui revendent leur premier NAS)
  • En creusant le sujet et en prenant un peu de recul, on se rend compte que derrière le terme NAS, les marchands regroupent beaucoup de choses différentes ; d'ailleurs ils ne s'en cachent même pas, et ils vous expliquent l'air de rien qu'aujourd'hui un NAS ça a plein de fonctions... Sauf que pour moi ça s'appelle noyer le poisson et qu'en fait ils mélangent toutes sortes de besoins différents qui appellent des solutions techniques différentes pour essayer de vendre des produits plus ou moins fourre-tout à grand renforts de termes techniques et marketings
  • Corollaire des points précédents, pour monter une configuration adaptée à son besoin présent et futur (dans la mesure du raisonnable), avec le bon nombre de connecteurs disques, une CPU adaptée à son usage etc.
  • Avant tout, pour le plaisir de comprendre et de maîtriser la solution de bout en bout
  • Last but not least : économiser quelques picaillons, en ces temps de crise. 

Conclusion temporaire

Monter un NAS soit même peut être une opération assez complexe, selon le niveau de service attendu et requérir pas mal de compétences au niveau hardware, comme au niveau software. C'est bien plus complexe qu'assembler un PC.

Si vous ne vous sentez pas à l'aise, ou si vous n'avez pas envie de passer des heures à lire des spécifications ou des documentations et à chercher des fournisseurs, l'achat d'une solution clé en main peut être une solution préférable, le travail d'intégration des différents composants, de l'OS et des principaux logiciels aura déjà été effectué par le fournisseur. Dans ce cas, cette série d'articles peut simplement vous aider à bien sélectionner votre modèle sans vous fier aveuglement au discours du vendeur.

Une solution intermédiaire est de se procurer la spécification détaillée de solutions "out of the box" (via Internet si la documentation est disponible, auprès de gens ayant fait l'achat et en analysant leur matériel), d'acheter les pièces, de les assembler et d'installer vous même l'OS et les logiciels :

  • En vous basant sur des solutions commercialisées, vous aurez la quasi certitude d'être sur une solution éprouvée et vous ferez quelques économies. J'ai fait l'exercice sur quelques solutions et ce sera l'objet d'un prochain article (bon, j'ai un peu mauvaise conscience dans le cas de sociétés qui finance le développement de solutions open source et qui essayent de se faire quelques revenus en vendant des solutions clés en main, mais bon c'est le jeu et puis j'aurais pas 50 000 lecteurs non plus).
  • En vous basant sur des témoignages de personnes ayant fait l'expérience et qui décrivent leur choix, vous prenez un peu plus de risques ; il faudra essayer de mesurer la compétence des gars en question (parce que bon, il y a quand même des pinpins qui bombardent des articles avec leur config de la mort qui déchire sa race alors que c'est parfois pas très bon, pour rester gentil). J'ai bookmarké quelques témoignages qui m'ont semble intéressant.
A suivre...

EDIT 11/11/2015 ; la suite des articles sur ce sujet tarde à venir, j'ai pas mal d'autres sujets sur le feu, et je suis toujours en phase d'investigation sur ma propre configuration. Pour autant, le sujet n'est pas abandonné, ça finira par arriver top ou tard