Software RAID 10 + LVM em unidades mistas, alinhamento de setor?

3

Eu tenho 4 unidades de 2,5 "e 7,2k mentindo e eu gostaria de construir algumas matrizes RAID para um pouco de armazenamento de VMs na minha caixa de laboratório KVM.

Existem 2 unidades de 320 GB e 2 unidades de 500 GB. Eu estou olhando para criar uma matriz RAID 10 usando partições de 4x 320GB. Em seguida, os 180 GB restantes nas unidades de 500 GB serão construídos em uma partição RAID 5 com outra unidade sobressalente. Eu percebo que o desempenho terá um impacto porque haverá contenção em duas das unidades na matriz RAID 10 e o uso de unidades não correspondentes também não é o ideal, mas isso é somente para um ambiente de laboratório / teste.

Inicialmente, pensei em criar apenas 4 partições correspondentes, criar a matriz RAID 10, LVM e terminar. Mas uma vez que eu comecei a olhar para o LVM em cima de raid e 4k disks, o assunto do alinhamento do setor / bloco surgiu e agora eu não sei por onde começar.

O relatório de unidades de 320 GB Tamanho do setor (lógico / físico): 512 bytes / 512 bytes O relatório dos drives de 500 GB Tamanho do setor (lógico / físico): 512 bytes / 4096 bytes

Assim, a partir de algumas leituras, há as seguintes variáveis que preciso levar em conta para isso:

  • Início / alinhamento da partição
  • Tamanho da faixa RAID
  • posição do superbloco RAID (?)
  • LVM PV --data-alinhamento
  • alinhamento de qualquer sistema de arquivos nos LVs

Aqui estão os recursos que eu estou baseando isso: link e link

Em algumas breves trocas no IRC eu também recebi conselhos de conflicing, que o mdadm, as ferramentas do LVM e até mesmo o fdisk são inteligentes o suficiente atualmente para levar isso em conta e que eu não deveria me preocupar. É esse o caso?

Alguém é capaz de executar o que eu preciso fazer neste caso específico para obter o melhor alinhamento / setor / tamanho da distribuição?

Por favor, tente ignorar o fato de que as unidades mistas significam que a coisa toda não é ideal para começar, como eu disse, esse é um ambiente de teste / laboratório.

    
por batfastad 15.02.2014 / 11:44

1 resposta

5
  • Partition start/alignment

Faça com que eles comecem em 1 limite MiB, por exemplo, usando parted e unit mib . Dessa forma, você não terá problemas com os discos do setor 4k de hoje, e não com os discos 8k ou 16k de amanhã ... e você perderá apenas 1MiB por disco.

Você pode verificar o alinhamento da partição de qualquer disco usando parted /dev/disk unit b print free . Ele imprime unidades em bytes para que você possa ver se um start de 1250249670656 é realmente um múltiplo de 4096 (4k) ou 1048576 (1MiB).

Observe que, em um esquema de particionamento msdos, apenas as partições primárias e lógicas precisam ser alinhadas. A partição estendida (contêiner para os lógicos) não importa.

  • RAID stripe size

Normalmente, 64k ou 512k, então é um múltiplo de 4k já e não é um problema.

  • RAID superblock position

Não importa. Se o superbloco estiver no final, o alinhamento é a própria partição. Se o superbloco estiver no início, mdadm usará um deslocamento de dados que será múltiplo de MiB (até 128 MiB). Verifique o deslocamento de dados com mdadm --examine /dev/sda1 .

  • LVM PV --dataalignment

O deslocamento do LVM também é geralmente de 1 MiB, verifique com pvs -o +pe_start .

  • then alignment of any file systems in the LVs

Quando o próprio PV estiver alinhado, todos os LV também serão alinhados automaticamente, porque o tamanho do PE é (geralmente) também um múltiplo de 1 MiB. (4 MiB ou maior)

E os sistemas de arquivos usam um tamanho 4k por muito tempo. Pelo menos com os sistemas de arquivos padrão do Linux, você não pode fazer nada de errado neste momento.

even fdisk

Embora haja algum desenvolvimento com fdisk ultimamente, prefiro parted ou gdisk .

Eu também não me preocuparia com unidades mistas. Esse é o tipo de flexibilidade que você obtém com o Linux Software RAID, é uma coisa boa. Eu mesclei tamanhos de disco e nunca notei nenhum problema por causa disso.

    
por 15.02.2014 / 12:08