web-dev-qa-db-fra.com

Comment configurer le support SSD RAID et TRIM?

Je cherche à mettre en place un nouveau serveur. Je ne peux utiliser que des disques SSD MLC 240 Go Intel 520 Series ou des disques Seagate 7200rpm standard.
Ce sont les options non négociables.

Naturellement, cela va faire tourner MySQL avec comme tâche principale d’être un serveur MySQL. Le plus gros goulot d'étranglement des performances étant les E/S du disque, je préférerais utiliser les SSD.

J'ai besoin de près de 1 To d'espace disque. Maintenant, RAID5 ne donne pas les meilleures performances et la rumeur dit que ce n’est pas ce qui se fait de mieux pour les SSD. Je cherche donc une configuration Raid 10 (1 + 0) qui me donnerait 720 Go (240 Go * 3).

J'ai besoin de savoir comment je peux configurer cela avec Ubuntu 12.04.01 LTS en utilisant un raid logiciel et m'assurer que le support TRIM (je pense que son appelé sous Linux) est activé pour la configuration de raid.

Quelqu'un n'a-t-il pas réussi? Toutes les infos pratiques et les éléments à surveiller, ainsi que les outils à utiliser, etc., seraient d'une grande aide.

Idéalement, je dois également pouvoir démarrer à partir du tableau RAID SSD.

Est-ce que quelqu'un peut-il me montrer la bonne direction ?

Merci.

9
Steed

La réponse est "ça dépend" et vous devriez vraiment comprendre ce que fait TRIM avant d'affirmer une position aussi inflexible.

http://www.spinics.net/lists/raid/msg39641.html

MD RAID nécessite un support spécifique pour le transfert des requêtes DISCARD. Ce dernier n’a même pas été proposé avant la version 3.6. Par conséquent, le support ne sera pas dans le noyau précis. Je viens de regarder, ce n'est pas là.

https://lkml.org/lkml/2012/3/11/261

Les disques SSD sont beaux et tous, mais ils sont plus rentables lorsqu'ils sont combinés avec un stockage magnétique à haut régime. Par exemple, utilisez une grappe de disques SSD RAID 1 pour héberger le journal du système de fichiers alors que le système de fichiers est sauvegardé par un RAID 10 constitué de 15K disques.

http://insights.oetiker.ch/linux/external-journal-on-ssd/

Plus le RPMS est élevé, plus votre pire temps de recherche est court, les chargements aléatoires IO profitant le plus des magasins de sauvegarde à haut régime. SQL peut nécessiter beaucoup d’écriture, donc tout calcul de parité est une mauvaise idée, par exemple. RAID 4 et 5.

L'organisation du RAID et du système de fichiers est tout aussi importante que le magasin de sauvegarde.

Vous pouvez toujours TRIM manuellement vos disques, une fois par semaine, vous devez observer l’impact sur les performances avant de l’exécuter plus fréquemment. Oh, ils vont s’épuiser. Ce serait donc une bonne idée d’estimer le nombre de cycles d’écriture/suppression de vos disques SSD et de desservir le RAID 1, un segment à la fois.

https://wiki.archlinux.org/index.php/Solid_State_Drives#Apply_TRIM_via_cron

4
ppetraki

Je sais que je suis un Johnny arrivé dernièrement à cette question, mais j'aimerais voir si je peux éclairer un peu cette question pour tous ceux qui cherchent.

Premièrement, la réponse de @ ppetraki est excellente.

La réponse courte à "Puis-je RAID SSD et démarrer à partir d'eux" est "Oui!". Voici les instructions pour 14.04. Les instructions pour la configuration RAID sur 12.04.x ​​sont identiques, mais ce tutoriel utilisant 9.1 contient des images. Vous trouverez ci-dessous quelques pièges importants et des détails que j'ai dû découvrir à la dure, grâce à mon expérience personnelle:

J'utilise Ubuntu 12.04.5 avec le noyau 3.8 sur une configuration MD RAID0 et le système de fichiers Btrfs compatible SSD. Je cours fstrim en tant que cron hebdomadaire.

Mon extra options de montage Btrfs de fstab:

defaults,ssd,ssd_spread,space_cache,compress=no,noatime

Le noyau 3.8 est requis si vous souhaitez utiliser compress=no comme option de montage Btrfs et peut également être requis pour utiliser fstrim, la commande de correction manuelle utilisée pour la correction planifiée.

Vous devez également aligner manuellement les partitions (sur toute configuration multi-partition, raid ou non) sur les SSD AVANT de démarrer sur le programme d'installation car, en fonction de la taille de la page de votre SSD, seule la première partition sera correctement installée. aligné (cela m'a pris un certain temps pour l'attraper) et cela peut avoir un impact important sur la durée de vie du lecteur. Vous pouvez le faire à partir d’une invite de commande dans le programme d’installation ou d’un disque/usb en direct avant de tenter l’installation. Mise en garde: Faites le calcul vous-même. Fdisk va mentir à propos de l'alignement.

Lectures supplémentaires: Je pense que Btrfs peut même créer ses propres tableaux RAID .

En ce qui concerne TRIM:

c'est sans doute inutile grâce à surapprovisionnement

14.04 est la première version à enable support TRIM prêt à l'emploi mais il est trivial d'activer les distributions précédentes, à condition que vous utilisiez le noyau 2.6.33+.

En fonction du système de fichiers choisi, vous pouvez activer le découpage/l'élimination en éditez votre fstab et en définissant l'option de montage appropriée. La différence entre faire ceci et en l'exécutant via cron est que le premier coupe/supprime à la volée et que le second le fait en bloc sur un programme. J'utilise le second.

Est-ce que ça importe? Soi-disant, la suppression en ligne (à l'aide de l'option de montage) n'est pas merveilleusement implémentée et est lente, donc "non recommandée". Je peux vous dire que mon disque dur (héhé) reste éteint pendant 10 à 20 minutes lorsque le travail cron hebdomadaire s'exécute, mais la réactivité du système d'exploitation n'est pratiquement pas affectée.

Démarrer à partir du tableau

Bien que je ne voie pas cela dans une analyse rapide des instructions d'ubuntu 14.04, je devais créer une partition principale supplémentaire qui ne faisait PAS partie de mes baies RAID. Le disque 0 a une partition primaire de 500 Mo d’ext3fs. Au cours de l’installation, j’ai dit au programme d’installation que celui-ci devait être monté sur "/ boot" et j’ai défini le drapeau de démarrage. Le chargeur de démarrage est ensuite installé ici afin que le système d'exploitation puisse démarrer, puis monter le RAID. L'espace disque 0 restant est divisé entre 2 partitions qui seront utilisées par la suite pour les matrices MD qui deviennent "/" et "/ swap". Le disque 1 a le même, mais pas de partition de démarrage. De plus, je n'ai créé le swap que si j'en ai parfois besoin et que btrfs ne prend pas en charge les fichiers d'échange. Cette partition n'est jamais montée. après l'installation, je l'ai commenté dans mon fstab.

Pardonnez toutes les modifications, essayez simplement de tout mettre en oeuvre.

4
Darth Cookie