Comment configurer le support SSD raid et TRIM?


9

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

Naturellement, car cela va exécuter MySQL avec sa tâche principale étant un serveur MySQL. Le plus gros goulot d'étranglement des performances étant les E / S disque, je préférerais utiliser les SSD.

J'ai besoin d'avoir près de 1 To d'espace disque. Maintenant, RAID5 ne donne pas les meilleures performances et il est dit que ce n'est pas le meilleur pour les SSD, donc je regarde 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 le raid logiciel et pour m'assurer que le support TRIM (Discard je pense que cela s'appelle sous Linux) est activé pour la configuration du raid.

Quelqu'un n'a-t-il pas réussi cela? Toutes les informations pratiques et les choses à surveiller et, fondamentalement, les outils à utiliser, etc., seraient d'une grande aide.

Idéalement, je dois également pouvoir démarrer à partir de la baie de disques SSD.

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

Merci.


1
Il y a eu récemment un gros problème lors de l'utilisation de TRIM sur SSD en RAID. Un bug a fait TRIM pour mettre à zéro les fichiers actifs au hasard. Seuls les SSD Samsung seraient touchés, mais AFAIK, car seuls les SSD Samsung ont été testés. Pour cela, je vous suggère fortement de penser à utiliser BTRFS RAID10 au lieu de mdadmou LVM.
Barafu Albino

Réponses:


4

La réponse est "cela dépend" et vous devez vraiment comprendre ce que fait TRIM avant d'affirmer une position aussi rigide.

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

MD RAID a besoin d'un support spécifique pour transmettre les requêtes DISCARD et cela n'a même pas été proposé avant la 3.6, donc le support ne sera pas dans le noyau précis. J'ai juste regardé, ce n'est pas là.

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

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

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

Plus le RPMS est élevé, plus votre pire temps de recherche est faible, les charges d'E / S aléatoires bénéficient le plus des magasins de sauvegarde à haut régime. SQL peut être intensif en é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 vos disques manuellement, chaque semaine est bien pour démarrer, vous devez observer quel est l'impact sur les performances avant de l'exécuter plus fréquemment. Oh, ils brûleront donc ce serait une bonne idée d'estimer le nombre de cycles d'écriture / suppression de vos SSD et de réparer le RAID 1 une jambe à la fois.

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


4

Je sais que je suis un Johnny récemment à cette question, mais j'aimerais voir si je peux éclairer ce sujet pour quiconque cherche.

Tout d'abord, 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.10 contient des images. Voici quelques trucs et détails importants que j'ai dû découvrir à la dure, à travers une 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 lance fstrim en tant que cron hebdomadaire.

Mes options de montage Btrfs supplémentaires de fstab:

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

Le noyau 3.8 est requis si vous souhaitez l'utiliser compress=nocomme option de montage Btrfs et peut également être requis pour l'utilisation de fstrimla commande de trim manuelle utilisée pour le trim programmé.

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

Pour en savoir plus: je pense que Btrfs peut même créer ses propres tableaux de raid .

Concernant TRIM:

C'est sans doute inutile grâce au surprovisionnement

14.04 est la première version à activer la prise en charge TRIM prête à l'emploi, mais il est trivial de l'activer sur les distributions précédentes, à condition que vous utilisiez le noyau 2.6.33+.

Selon le système de fichiers que vous avez choisi, vous pouvez activer la suppression / suppression en modifiant votre fstab et en définissant l'option de montage appropriée. La différence entre le faire et l' exécuter via cron est que le premier coupera / jettera à la volée et le second le fera en une seule fois selon un calendrier. J'utilise le second.

Est-ce que ça importe? Soi-disant, la suppression en ligne (en utilisant l'option de montage) n'est pas merveilleusement implémentée et est lente, donc c'est "non recommandé". Je peux vous dire que mes voyants "hdd" (hehe) deviennent fous pendant 10-20 minutes lorsque le travail hebdomadaire de cron s'exécute, mais la réactivité du système d'exploitation n'est presque pas affectée.

Démarrage à partir de la baie

Bien que je ne vois pas cela dans une analyse rapide des instructions ubuntu 14.04, j'ai dû créer une partition primaire supplémentaire qui ne fait PAS partie de mes tableaux de raid. Le disque 0 possède une partition principale de 500 Mo d'ext3fs. Lors de l'installation, j'ai dit à l'installateur que cela devait être monté sur "/ boot" et j'ai défini l'indicateur 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 restant sur le disque 0 est divisé en 2 partitions qui sont ensuite utilisées 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 besoin un jour et que btrfs ne prend pas en charge les swapfiles. 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 diffuser.


Merci pour ces informations perspicaces. Je vais essayer cela lors de mon prochain déploiement de système
Steed
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.