Primeiro, a ordem de LUKS e LVM depende se você deseja ter diferentes senhas LUKS ou outras configurações para diferentes LVs. Se disser, você precisa configurar senhas diferentes para diferentes LVs, você definitivamente precisa colocar o LUKS em cima do LVM. Por outro lado, se todos os LVs compartilham a mesma senha e configurações como o keylen, você desejaria ter o LUKS abaixo do LVM, para que você não tenha que lidar com a sobrecarga de ter mais de uma partição LUKS (pense no que você teria que fazer quando você precisa mudar a senha).
Segundo, você quase sempre quer que o RAID seja o nível mais baixo, de modo que quando um disco morre, ele pode ser trocado com facilidade e transparência. Se você tivesse que configurar o RAID em cima do LVM, você teria que substituir um PV quando um disco morre, o que seria uma grande dor no pescoço. Também RAID no topo do LVM iria derrotar totalmente a flexibilidade do LVM. Você provavelmente precisará configurar a segunda camada do LVM sobre o RAID novamente!Portanto, como na maioria dos casos as pessoas precisam usar apenas uma senha, isso seria suficiente:
RAID --> LUKS --> LVM --> ext4
Em alguns casos, você pode precisar usar o LVM para combinar vários dispositivos RAID em um grande volume, então você pode fazer:
RAID --> LVM --> LUKS (--> LVM) --> ext4
Teoricamente, a ordem não deve afetar muito o desempenho, se todas as camadas estiverem configuradas corretamente e, na prática, eu não vi essa configuração ter um desempenho particularmente ruim. O mais importante é provavelmente o alinhamento:
- verifique se suas partições estão alinhadas em 1 MB (muito importante para o SSD);
- para a camada RAID, escolha tamanho do bloco com sabedoria;
- para o LVM, certifique-se de definir
--dataalignment
para corresponder ao tamanho do bloco de RAID ( isso pode ser útil ).
Além disso, no caso de SSD, certifique-se de ativar a passagem LUKS TRIM / DISCARD adicionando rd.luks.options=discard
a /etc/default/grub
e discard
a /etc/crypttab
(Isso é o que eu faço no Red Hat / Fedora Linux. ser um pouco diferente no Debian.) O LVM e o RAID devem suportar automaticamente o descarte se você usar um kernel new-ish.
Claro, essas são apenas diretrizes gerais. Se você tiver necessidades especiais, fique à vontade para atualizar sua pergunta ou comentar aqui.