Maniatux's Blog

Welcome to the internet

Archives 2010

Debian + RAID Software

Rédigé par Xavier - - 3 commentaires

Suite à mon article expliquant ma défaite vis à vis de ZFS, j'ai appris à configurer et gérer un RAID1 logiciel sous debian. Voici mon retour d'expérience et un petit tutoriel.

La documentation relative à la construction d'un RAID logiciel avec dmraid sur Linux est assez indigeste, surtout vis à vis des soucis avec GRUB. Heureusement, beaucoup de distributions offrent des assistants pour créer ce RAID, comme debian, ubuntu, RedHat, Fedora, CentOS... En prime, GRUB2 peut booter sans soucis sur du RAID. Pour ma part j'ai retenu debian (pour des raisons probablement trollesques, surtout vis à vis de SELinux, que je détaillerai pas ici).

Lire la suite de Debian + RAID Software

Classé dans : Sysadmin - Mots clés : aucun

Mon échec avec ZFS et découverte du RAID logiciel sur Debian

Rédigé par Xavier - - Aucun commentaire

ZFS ne pourra jamais fonctionner sur mon serveur de fichiers, c'est la conclusion triste que j'en tire après divers essais. La faiblesse du processeur et le manque de RAM sont en cause. Si je comprends l'intérêt de ZFS dans les Datacenter, je crois que pour une utilisation personnelle les inconvénients surpassent les avantages. En effet, un PC puissant demande un investissement considérable (surtout pour les Go de ram) et aussi une consommation accrue. Tout ça... pour un serveurs de fichiers?

C'est donc avec le goût de la défaite que je me suis rabattu sur le RAID logiciel de Debian. Il y a plusieurs distributions qui proposent la configuration facilité du RAID lors de l'installation, en voici quelques unes:

  • Debian/Ubuntu
  • CentOS/RedHat
  • Fedora

Pour des raisons personnelles et trollesques (notamment par rapport à SELinux) j'ai choisi Debian. L'installation détaillée fera l'objet d'un article très prochainement. Alors oui, c'est moins pratique que ZFS puisqu'on rajoute une couche logicielle entre les disques et le partitionnement. Néanmoins cela fonctionne plutôt bien. Il est bien sûr possible de visualiser l'état des grappes, la durée de reconstruction lorsque l'on change un disque, et recevoir des alertes par email. Debian propose les modes RAID0, 1, 5, 6 et 10.

Anecdote

Pour tester si mon RAID1 logiciel fonctionnait, j'ai débranché un disque dur et ait démarré l'ordinateur. Cela fonctionnait bien donc j'ai éteint la machine et rebranché le disque. Par la suite, j'ai chargé énormément de fichiers sur ce serveur (environ 600Go). Après avoir appris à utiliser les outils de monitoring, je me suis rendu compte que le disque débranché puis rebranché au début avait provoqué une erreur non résolue dans la grappe! En fait, il a été exclu de la grappe, probablement pour éviter les problèmes dus à la désynchronisation. J'ai donc du le réinsérer et lancer le processus de reconstruction qui dura environ 2 heures.

Donc moralité, si vous vous amusez à débrancher un disque pour tester le fonctionnement de votre RAID, il ne faut pas oublie de le remettre dans la grappe après l'avoir rebranché.

Classé dans : Sysadmin - Mots clés : aucun

Prédictions pour 2011

Rédigé par Xavier - - 2 commentaires

Android sera infesté de virus

Pourquoi? Tout simplement pour deux raisons:

  • Son appropriation par un public néophyte, des cibles faciles et nombreuses.
  • Le nombre de logiciels croissants à télécharger à droite à gauche sur le web.

Si les plateformes Linux ont la réputation d'être épargnées par les virus, c'est parce que les distributions utilisent un système de dépôts sécurisés dans lequel nous venons puiser nos logiciels. Ces logiciels sont compilés par l'éditeur ou la communauté, et leur code peut être passé au crible. Ce n'est pas le cas sur Android (sauf avec le Market, mais les logiciels gratuits, non libres et bourrés de pub présentent autant de risques). D'où ma prédiction que l'explosion de la popularité d'Android entraînera des risques.

Les français vont revenir au P2P

Depuis que l'Hadopi surveille le P2P, les français ont migré massivement vers des services tels que Megaupload. Cependant c'est une mauvaise solution, déjà en raison de l'engorgement des réseaux surtout chez certains FAI (le débit tombe parfois à 10ko/s selon les périodes) mais ensuite car cette entité unique tombera rapidement sous le joug de la censure et de la surveillance (on peut s'attendre à un mélange Hadopi/Loppsi). Et si Hadopi3 imposait à Megaupload de fournir les logs de connexion relatifs aux fichiers piratés?

Mon avis est que la masse reviendra vers le P2P, impossible à censurer. Tout cela au travers de services VPN.

Classé dans : Thoughts - Mots clés : aucun

Aperçu de ZFS sous FreeBSD 8.1

Rédigé par Xavier - - 2 commentaires

ZFS est un système de fichiers développé à l'origine par Sun pour Solaris, et spécialisé dans le stockage de données en Datacenter.

ZFS offre de très nombreux avantages qui le font surpasser presque tous ses concurrents:

  • N'utilise pas les partitions mais un système logique de pool
  • Un pool peut regrouper plusieurs disques et fonctionner en RAID, sans couche logicielle supplémentaire
  • Détection et correction des erreurs
  • Hotspare, remplacement de disque à chaud
  • Monitoring
  • Possibilité de créer des "tranches" dans un pool, par exemple une pour / et une pour /usr
  • Il n'y a pas de taille à spécifier pour ces tranches
  • Possibilité de compression des tranches
  • Attributs sur les tranches, par exemple interdiction d’exécuter des programmes
  • Snapshots hautement paramétrables

Donc ZFS est le système idéal pour les redimensionnements/déplacements de données (même entre machines), la sécurisation (par redondance ou algorithmes de contrôles) et la continuité de service. Une fois son administration prise en main, on est littéralement libéré des contraintes des vieux systèmes de partitions utilisés par exemple avec NTFS ou EXT4.

Note: Bien que ZFS soit développé pour OpenSolaris/Solaris à la base, il est disponible sur FreeBSD, NetBSD, et partiellement sur Linux. Sa licence (CDDL) incompatible avec la GPLv2 fait qu'il ne sera jamais intégré dans le noyau Linux. Néanmoins il existe des portages tiers et une implémentation dans FUSE. Oracle développe btrfs spécialement pour Linux, et qui devrait offrir des fonctionnalités similaires à ZFS.

Matériel pour essai

Actuellement je dispose d'un serveur de fichiers équipé d'un unique disque dur de 1To. Pour assurer la sécurité de mes données, je me suis procuré un second disque identique et ait entrepris de monter un système de mirroir (RAID1). Ma carte mère ne gère pas le RAID et je n'ai pas vraiment envie d'acheter une carte pour ça. Donc je me suis tourné vers le RAID logiciel.

Une solution consiste à installer Debian puisque l'installeur de cette dernière permet de paramétrer un RAID logiciel. Mais étant dans une période "FreeBSD" et ayant beaucoup entendu parler de ZFS, je voulais essayer. Configuration du serveur:

  • Carte mère Intel D945GSEJT équipée d'un Atom simple coeur + hyperthreading à 1,6 GHz
  • Une barrette de 512MB de mémoire PC5300 (DDR2)
  • Deux disques Samsung Spinpoint F3 de 1To, 7200 tr/min
  • Une alim ATX branchée en fils volants

La chambre de Geek fait toujours rêver

La version de FreeBSD est la dernière stable, c'est à dire la 8.1-RELEASE en version i386, puisque l'atom ne supporte pas le 64 bits.

L'installation

La procédure pour installer FreeBSD sur un système de fichiers ZFS est disponible ici. Ce qui est pénible c'est de devoir télécharger la version DVD qui pèse 2Gio, alors que le système installé au final fera moins de 200Mio. Mais il faut le DVD pour pouvoir profiter à la fois des paquetages d'installation et du mode "Livefs" qui permet d'avoir une console et tous les outils Unix pour travailler. Le wiki décrit une procédure nous faisant construire un système divisé en tranches: /var/log /var/mail etc... certaines étant compressées. Si on suit la procédure minutieusement sans se précipiter et en lisant calmement, cela doit fonctionner. Si comme moi vous survolez les instructions vous vous retrouverez avec un système qui ne boote pas.

Découverte et essais

Une fois que l'on a réussi à booter en dur, on peut s'amuser à faire quelques essais. La commande:

# zpool status

Retourne l'état de vos pool. Vous pouvez ainsi contrôler qu'il n'y a pas d'erreur et que les disques sont bien fonctionnels. Voici par exemple un status issu de la doc de Sun:

 zpool status tank
  pool: tank
 state: DEGRADED
status: One or more devices could not be opened.  Sufficient replicas exist for
        the pool to continue functioning in a degraded state.
action: Attach the missing device and online it using 'zpool online'.
   see: http://www.sun.com/msg/ZFS-8000-2Q
 scrub: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        tank        DEGRADED     0     0     0
          mirror-0  DEGRADED     0     0     0
            c1t0d0  ONLINE       0     0     0
            c1t1d0  UNAVAIL      0     0     0  cannot open

errors: No known data errors

Là on voit que le fonctionnement n'est pas optimal, et en lisant on s'aperçoit que le disque "c1t1d0" est absent. J'ai moi même débranché un de mes disques (à froid) et ait pu constater que le système boote toujours, et que l'erreur est signalée.

Vitesse de transfert

Mon serveur étant utilisé pour stocker des fichiers, il devait être capable de transférer à haut débit avec mon ordinateur de bureau, sur un réseau 1000Mbps (Gigabit). Un protocole de transfert réseau léger et simple est le FTP que j'utilise pour sa rapidité. Sur FreeBSD on peut utiliser le serveur FTP de référénce (FTPd) ou installer VSFTPd via les ports ou packages.

Seulement voilà, la grosse surprise est que les débits de transfert sont vraiment très faibles, et régulièrement interrompus par des micro-coupures. Je ne dépassais pas les 12 Mo/s alors que le débit attendu pour un réseau Gigabit est de 60 Mo/s environ (limité par la vitesse d'écriture des disques). La vitesse de 12Mo/s correspond à la vitesse d'un réseau 100Mbps, je me suis donc demandé si ce n'était pas un problème de carte réseau. Malheureusement un ifconfig me confirme qu'elle est bien réglée en 1000, tout comme mon switch et sa LED verte qui indique la même chose. Ce n'est donc pas un problème de carte réseau.

Après divers essais de paramétrage du ZFS, aidé par la doc, je n'ai obtenu aucun résultat probant et ait même fini par casser mon OS... impossible de booter. J'ai réinstallé FreeBSD mais cette fois avec un seul disque et avec les options par défaut (système UFS, pas ZFS). Et là aucun problème, débit de transfert maximum. Donc mes problèmes venaient bien de ZFS.

Explication: Il semblerait que ZFS nécessite une machine relativement puissante, notamment en raison de son utilisation de la mémoire RAM comme cache. Ainsi, sur la documentation de Solaris, il est conseillé de tourner sur un système 64 bits avec au moins 1 Go de RAM. Les différentes personnes ayant rapporté faire fonctionner un NAS sous ZFS avaient au moins un processeur double cœur épaulé par plusieurs Go de mémoire.

Les problèmes de performances sont-ils dus à mon matériel trop "primitif" pour le supporter de manière correcte? Possible, mais pas 100% certain. Car il semblerait que l'implémentation de ZFS sur FreeBSD souffre d'un retrait important de performances par rapports à OpenSolaris. Des benchmark publiés sur cette page ont confronté FreeNAS (=FreeBSD), OpenSolaris et Nexenta. Je vous laisse regarder les graphiques mais la différence de rapidité au niveau des opérations par seconde peut varier d'un facteur de 10.

Conclusion

Le but de mes essais était de savoir si FreeBSD+ZFS offrait un réel avantage par rapport à UFS ou EXT sous Linux. La réponse est oui, sans conteste, une plus grande souplesse dans l'administration. Néanmoins, à la question "vais-je le garder?" la réponse est non puisqu'il y a un sérieux problème de performances.

La suite?

Essais avec OpenSolaris (même si plus supporté) et Nexenta. Si aucun ne donne satisfaction, ce sera retour sur Debian GNU/Linux avec RAID avec dmraid.

Classé dans : BSD, Storage - Mots clés : aucun

Les réseaux sociaux: J'en ai marre!

Rédigé par Xavier - - 5 commentaires

Les gens qui me connaissent savent déjà ce que je pense de Facebook et compagnie. Qu'est-ce qui rapporte le plus sur internet? Le sexe? Non, c'est la solitude! Le besoin d'existence (même artificielle) des gens est le moteur qui alimente Facebook. Mais le plus pénible c'est que ce "réseau" (qui n'en est pas vraiment un puisque tout est centralisé) s'étend partout comme de la mauvaise herbe. En effet on trouve sur beaucoup de sites des boutons "j'aime", "partager" ou même "se loguer avec facebook". Et je ne parle même pas spams que l'on reçoit dans notre boite mail lorsqu'un ami s'inscrit.

Mais ce qui me pourri vraiment l'existence, c'est ça:

Ce petit menu qui se déplie au passage de la souris (qu'on ne fait jamais volontairement bien sûr), qui masque le texte que l'on était en train de lire et qui refuse de se refermer sauf si on veut bien cliquer sur la croix!

Alors suis-je le seul que ça énerve? y a-t-il des extensions firefox pour bloquer ces éléments intrusifs?