RAID 10 o RAID 5 per più macchine virtuali: qual è la scelta migliore?


8

Ho appena ordinato un nuovo impianto per la mia attività. Facciamo molto sviluppo software per Microsoft SharePoint e abbiamo bisogno del rig per eseguire diverse macchine virtuali a scopo di sviluppo e test. Utilizzeremo VMware ESXi gratuito per la virtualizzazione. Per cominciare, prevediamo di creare e avviare le seguenti macchine virtuali, tutte con Windows Server 2008 R2 x64:

  • Server Active Directory
  • MS SQL Server 2008 R2
  • Server di build automatizzato
  • SharePoint 2010 Server per l'hosting del nostro sito Web pubblico e della nostra Intranet interna per alcune persone. Il carico su questo server sarà abbastanza insignificante.
  • Server di sviluppo 2xSharePoint 2007
  • Server di sviluppo 2xSharePoint 2010

Oltre a ciò dovremo costruire diverse farm di SharePoint a scopo di test. Queste macchine virtuali verranno avviate solo quando necessario. Le specifiche del nuovo impianto sono:

  • Server rack Dell R610
  • 2xIntel XEON E5620
  • 48 GB di RAM
  • Unità SAS 10k da 6x146 GB
  • Controller RAID Dell H700

Riteniamo che il nuovo server renderà le nostre macchine virtuali molto più performanti della nostra configurazione esistente (2xIntel XEON, 16GB RAM, 2x500 GB SATA in RAID 1). Ma non siamo sicuri del livello RAID per il nuovo rig.

Dovremmo cercare le unità SAS da 6x146 GB in una configurazione RAID 10 o RAID 5? RAID 10 sembra offrire migliori prestazioni di scrittura e ridurre il rischio di un errore RAID. Ma ha un costo di meno spazio su disco. Abbiamo bisogno di RAID 10 o RAID 5 sarebbe anche una buona scelta per noi?


Uso RAID5 quasi ovunque, tranne gli host di macchine virtuali (e alcuni DB molto pesanti). Stanno modo troppo lento sulle scritture casuali. RAID1 o 10 è l'unico modo
Javier il

Grazie a tutti per l'intuizione! Mi hai convinto a scegliere una configurazione RAID10.
Lars Fastrup,

Risposte:


11

Ci sono molte domande / argomenti simili su questo sito riguardo a R10 contro R5 / R6 ma si riducono a "esposizione durante la ricostruzione". L'argomento per R10 su R5 è più forte quando si tratta di dischi più grandi e più lenti che alcuni acquistano perché i loro GB / $ £ € sono migliori (cioè 2 / 3TB 7,2k SATAs) poiché gli array di questi dischi possono richiedere letteralmente giorni per ricostruire seguendo un disco sostituzione o aggiunta - il che significa che l'intero array andrebbe perso se un secondo disco si guasta durante questa finestra di ricostruzione.

Per molti su questo sito questo rischio è troppo elevato, me compreso. R6 cambia leggermente questo, ma di solito porta con sé prestazioni di scrittura molto più lente. Anche fare tutto questo nel software riduce ulteriormente le prestazioni durante la ricostruzione poiché tutti i dati passano sullo stesso bus, incluso il traffico "in vita".

Hai già fatto un buon lavoro nella scelta dei componenti e vedrai sicuramente un enorme miglioramento delle prestazioni. Se fossi in te non "cadrei all'ultimo ostacolo" - userei R10 sapendo che avresti fatto la cosa giusta. Se sei preoccupato per lo spazio, puoi utilizzare i dischi thin-provisioning e / o acquistare i dischi da 10 GB da 600 GB invece dei dischi da 15 GB da 146 GB, il calo delle prestazioni non sarà troppo male ma avrai molto più spazio - potresti sempre comprare 4 x 600 oggi e aggiungerne altri 2 in seguito se ti servissero i mandrini extra?


1
In realtà, questo non è vero. Soprattutto scrivere operazioni pesanti sono - male con un Raid 5. Uso Raid 10 per tutti i server ad alte prestazioni, e hyper-v è uno di questi. Soprattutto quando arriva il momento della patch, puoi davvero vedere come vanno le cose. Detto questo, i dischi SAS sono stati sprecati: i Velociraptor sono quasi altrettanto buoni a un prezzo inferiore (in modo da poterli inserire in Raid 110).
TomTom,

TomTom, cosa "in realtà non è vero"? Non chiarisci, sto raccomandando R10 su R5 / R6, dicendo solo che R6 è il peggiore per scrivere perf. E potresti pensare che SAS sia sprecato, ma i velociraptor ucciderebbero alcuni dei miei sistemi, anche se sono di buon valore.
Chopper3,

2

Se si tratta di un sistema mission-critical, devi assicurarti di avere localmente alcune unità di riserva in caso di guasto (a meno che tu non abbia un contratto di supporto sull'hardware che dice che puoi ottenere sostituzioni lo stesso giorno, ma anche allora un vale la pena avere pezzi di ricambio locali).

Ignorando che (o supponendo che le sei unità non contino i ricambi a cui potresti avere un facile accesso), suggerirei RAID10 (tre RAID1 nidificati in un RAID0) su RAID5 per i motivi di prestazioni che menzioni. O se lo spazio non è affatto un problema e la ridondanza e il tempo di errore di ricostruzione sull'unità sono una grande preoccupazione, allora potresti anche considerare due RAID1 a tre unità nidificati in RAID0 (ma questo è eccessivo per la maggior parte degli scopi, anche se sarebbe consentire a due unità su ciascun segmento R1 di fallire contemporaneamente mantenendo in vita l'array).

Esiste tuttavia un'altra opzione: tre array RAID1 separati (o forse due array RAID10 se il controller supporta RAID10 a 3 unità (RAID1E come alcuni controller lo chiamano)). In questo modo è possibile distribuire le macchine virtuali su diversi mandrini in modo che possano competere tra loro molto meno per la larghezza di banda IO. Due macchine virtuali su array RAID1 diversi possono eseguire il thrash allegramente dei loro dischi virtuali senza influire notevolmente sulla reattività reciproca o di una macchina virtuale sul terzo array. Naturalmente questo può finire per essere dispendioso in termini di spazio: potresti finire con molto spazio libero su un array ma non vuoi usarlo perché ci sono già macchine virtuali ad uso intensivo di I / O in uso costante su quell'array, ad esempio (anche se in questo caso se avessi un singolo array la VM che inseriresti in quello spazio sarebbe comunque in competizione per l'accesso IO in quel modo),

Questa tecnica può fare molta differenza con le unità basate su spinning-disk-and-arm se si bilanciano le VM tra le unità giuste. Fa ancora la differenza anche sugli SSD, ma meno perché non si hanno problemi di movimento della testa e di attesa del settore giusto da superare che causano una latenza di uccisione aggiuntiva delle prestazioni. Anche se come ho detto sopra, può essere più lavoro da gestire. Nel caso d'uso che descrivi, potresti mettere quel server sharepoint leggermente caricato e il build-master su un array e le VM di sviluppo su un altro (possibile un array ciascuno, se hai tre array e nessun altro VM attivo). Quando le esigenze cambiano, è sempre possibile spostare le macchine virtuali intorno agli array per riequilibrare il carico con tempi di inattività ridotti (nessun tempo di inattività se la soluzione di virtualizzazione prescelta supporta migrazioni in tempo reale tra archivi di dati locali).


2

Come è stato risposto qui alcune volte, non usare RAID 5! BAARF ha alcune idee forti sull'argomento!

Otterrai prestazioni peggiori rispetto a RAID 10, prestazioni degradate durante una ricostruzione a seguito di un guasto dell'unità e in caso di guasto di un'altra unità durante questo periodo, ripristinerai dai backup!

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.