Come configurare il RAID SSD e il supporto TRIM?

Sto cercando di creare un nuovo server. Posso usare solo Intel 520 serie 240 gb ssds MLC o dischi standard Seagate 7200rpm.
Queste sono le opzioni non negoziabili.

Naturalmente, poiché eseguirà MySQL con il suo compito principale essendo un server MySQL. Dato che il maggior collo di bottiglia delle prestazioni è l’I / O su disco, preferirei utilizzare gli SSD.

Ho bisogno di avere circa 1 TB di spazio su disco. Ora, RAID5 non offre le migliori prestazioni e si dice che non sia il migliore per gli SSD, quindi sto osservando una configurazione Raid 10 (1 + 0) che mi darebbe 720gb (240gb * 3)

Ho bisogno di sapere come posso configurarlo con Ubuntu 12.04.01 LTS usando il raid del software e per assicurarmi che il supporto TRIM (Discard penso che sia chiamato in Linux) sia abilitato per la configurazione del raid.

Qualcuno non lo fa con successo? Qualsiasi informazione su come e cose a cui prestare attenzione e in pratica quali strumenti usare e così via sarebbe di grande aiuto.

Idealmente, ho anche bisogno di essere in grado di avviare l’array RAID SSD.

Qualcuno può indicarmi la giusta direzione?

Grazie.

La risposta è “dipende” e dovresti davvero capire cosa fa TRIM prima di affermare una posizione così inflessibile.

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

MD RAID ha bisogno di supporto specifico per inoltrare richieste DISCARD e questo non è stato ancora proposto fino al 3.6, quindi il supporto non sarà nel kernel preciso. Ho solo guardato, non è lì.

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

Gli SSD sono belli e tutti, ma sono i più convenienti se combinati con l’archiviazione magnetica ad alto RPM. Ad esempio, utilizzare un array SSD RAID 1 per ospitare il journal del filesystem mentre il filesystem è supportato da un RAID 10 costituito da dischi 15K.

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

Più alto è il sistema RPMS, minore è il tempo di ricerca peggiore, i carichi di I / O random beneficiano maggiormente degli archivi di supporto RPM. SQL può essere intensivo in termini di scrittura, quindi qualsiasi calcolo di parità è una ctriggers idea, ad esempio RAID 4 e 5.

L’organizzazione del RAID e del filesystem è tanto importante quanto il backing store.

È sempre ansible TRIMARE i dischi manualmente, è consigliabile iniziare settimanalmente, è necessario osservare l’impatto sulle prestazioni prima di eseguirlo più frequentemente. Oh, si bruceranno, quindi sarebbe una buona idea stimare quanti cicli di scrittura / cancellazione hanno i vostri SSD e servire il RAID 1 una gamba alla volta.

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

So di essere un Johnny-come-ultimamente a questa domanda, ma mi piacerebbe vedere se posso far luce su questo per chiunque cerchi.

Innanzitutto, la risposta di @ ppetraki è eccellente.

La risposta breve a “Can I RAID SSDs e boot da loro” è “Yes!”. Ecco le istruzioni per 14.04. Le istruzioni per la configurazione RAID su 12.04.x ​​sono identiche, ma questo tutorial che utilizza 9.10 ha immagini. Qui di seguito sono alcuni trucchi e dettagli importanti che ho dovuto scoprire nel modo più difficile, attraverso l’esperienza personale:

Sto usando Ubuntu 12.04.5 con il kernel 3.8 su una configurazione MD RAID0 e il filesystem Btrfs compatibile con SSD. Corro fstrim come cron settimanale.

Le mie opzioni extra di mount Btrfs da fstab:

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

Il kernel 3.8 è necessario se si desidera utilizzare compress=no come opzione di assembly di Btrfs e può anche essere richiesto per l’uso di fstrim , il comando di ritaglio manuale utilizzato per il taglio programmato.

Devi anche allineare manualmente le partizioni (su qualsiasi installazione multi-partizione, raid o meno) sugli SSD PRIMA di avviare il programma di installazione perché, a seconda delle dimensioni della pagina del tuo SSD, solo la prima partizione sarà allineata correttamente (mi ci è voluto un po ‘ per prenderlo) e questo può avere un forte impatto sulla durata della trasmissione. È ansible eseguire questa operazione da un prompt dei comandi all’interno dell’installer o da un disco / disco USB prima di tentare l’installazione. Avvertenza: fai i conti da solo. Fdisk mentirà sull’allineamento.

Ulteriori letture: penso che Btrfs possa persino creare i propri array raid .

Riguardo a TRIM:

È verosimilmente inutile grazie all’overprovisioning

14.04 è la prima versione che abilita il supporto TRIM out-of-the-box ma è banale da abilitare nelle distribuzioni precedenti, a condizione che si stia utilizzando il kernel 2.6.33+.

A seconda del file system scelto, è ansible abilitare il ritaglio / eliminazione modificando il proprio fstab e impostando l’opzione di assembly appropriata. La differenza tra fare questo ed eseguirlo tramite cron è che il primo trarrà / scarterà al volo e il secondo lo farà in un grumo su un programma. Io uso il secondo.

Importa? Presumibilmente, lo scarto online (usando l’opzione mount) non è meravigliosamente implementato ed è lento quindi è “non raccomandato”. Posso dirti che le mie luci “hdd” (hehe) diventano matti per 10-20 minuti quando viene eseguito il cron job settimanale, ma la reattività del sistema operativo è quasi completamente inalterata.

Avvio dall’array

Anche se non vedo questo in una scansione rapida delle istruzioni di Ubuntu 14.04, ho dovuto creare una partizione primaria aggiuntiva che NON fa parte dei miei array raid. Il disco 0 ha una partizione primaria di 500mb di ext3fs. Durante l’installazione ho detto al programma di installazione che doveva essere montato su “/ boot” e ho impostato il flag di avvio. Il bootloader viene quindi installato qui in modo che il sistema operativo possa iniziare e quindi montare il RAID. Lo spazio rimanente sul Disco 0 è diviso tra 2 partizioni che vengono successivamente utilizzate per gli array MD che diventano “/” e “/ swap”. Il disco 1 ha lo stesso, ma nessuna partizione di avvio. Inoltre, ho creato lo swap solo nel caso in cui ne avessi bisogno e btrfs non supporta i file di swap. Questa partizione non viene mai montata; dopo l’installazione, ho commentato nel mio fstab.

Perdona tutte le modifiche, cerca solo di ottenere tutto ciò là fuori.