La tua stratificazione non è ottimale perché mettere il raid 5 sopra la crittografia significa aumentare il numero di operazioni di crittografia/decrittografia del 25%, poiché 4 * 4 TB sono crittografati.
Quando si aggiunge la crittografia al raid 5, vengono crittografati solo 3 * 4 TB.
Il ragionamento alla base è:non devi crittografare i dati di parità (che occupano 4 TB nel tuo esempio) di dati crittografati perché non aumenta la tua sicurezza.
La tua presunzione su più processi kcrypt è proprio questa. Quando si basano le decisioni su di esso, si tratta di un'ottimizzazione prematura che potrebbe avere l'effetto opposto. Il tuo i7 è piuttosto robusto, probabilmente include anche alcune istruzioni speciali che aiutano ad accelerare AES - e il kernel Linux include diverse varianti ottimizzate di primitive crittografiche che vengono selezionate automaticamente durante l'avvio.
Puoi verificare se le routine ottimizzate per la tua CPU sono utilizzate guardando /proc/cpuinfo
(ad es. flag aes
lì), /proc/crypto
, lsmod
(a meno che i moduli aes non siano compilati nel kernel) e il log del kernel.
Dovresti eseguire il benchmark del throughput di kryptd senza coinvolgere alcun disco lento per vedere qual è realmente il limite superiore (ad esempio su un disco RAM che utilizza iozone).
Per essere in grado di diagnosticare potenziali problemi di prestazioni in un secondo momento, è anche utile confrontare la tua configurazione RAID preferita senza alcuna crittografia per ottenere un limite superiore a tal fine.
Oltre all'argomento crittografico, RAID 5 comporta più operazioni di I/O rispetto a RAID 1 o 10. Poiché l'archiviazione è piuttosto economica, forse è un'opzione acquistare più dischi rigidi e utilizzare un altro livello RAID.
Farei Raid 1+0 [a2,b2]+[c2,d2], quindi LVM su LUKS.
Esempio
$ sudo mdadm --create /dev/md0 -v --raid-devices=4 \
--level=raid10 /dev/sdb1 /dev/sdc1 /dev/sde1 /dev/sde1
NOTA: Strutturandolo in questo modo creerai una striscia di mirror che consentirà il fallimento di un massimo di 2 dischi (uno in ciascun mirror al massimo) e ti darà uno spazio totale/2 rispetto a raid5 che è totale*~0.75.
Inoltre, credo che questo schema sia significativamente più veloce perché è noto che RAID5 danneggia le prestazioni, ma avrai meno spazio disponibile.
Puoi anche controllare la cifratura, anche se penso che aes-cbc-essiv sia l'impostazione predefinita e ragionevolmente veloce, ma potresti usare aes-xts-plain che dovrebbe essere più veloce.