O Mdadm não cria uma matriz maior que 10 TB

3
  • Eu tenho um servidor com seis unidades de 4 TB rodando o Ubuntu 14.04 LTS.
  • Uma das unidades é usada para o sistema / SO
  • Eu queria usar os outros 5 drives para chegar o mais próximo possível de 20 TB de armazenamento
  • É um projeto de análise de dados de curto prazo, então o RAID 0 é bom
  • Eu usei o fdisk para criar uma única partição ~ 4TB em cada uma das 5 unidades

Depois de executar o mdadm para criar uma matriz RAID 0, o resultado foi apenas um dispositivo de 10 TB em / dev / md0. Metade do tamanho que eu esperava!

Aqui está o comando que usei para criar o array:

mdadm --create --verbose /dev/md0 --level=stripe --raid-devices=5 /dev/sd[bcdef]1

Abaixo está uma saída fdisk -l . Alguma idéia de por que não consigo mais espaço nas unidades?

Disk /dev/sda: 4000.8 GB, 4000787030016 bytes
255 heads, 63 sectors/track, 486401 cylinders, total 7814037168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1  4294967295  2147483647+  ee  GPT

Disk /dev/sdb: 4000.8 GB, 4000787030016 bytes
90 heads, 3 sectors/track, 28940878 cylinders, total 7814037168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xda4f04e2

Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048  4294967294  2147482623+  83  Linux

Disk /dev/sdc: 4000.8 GB, 4000787030016 bytes
25 heads, 3 sectors/track, 104187162 cylinders, total 7814037168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xc9e57616

Device Boot      Start         End      Blocks   Id  System
/dev/sdc1            2048  4294967294  2147482623+  83  Linux

Disk /dev/sdd: 4000.8 GB, 4000787030016 bytes
25 heads, 3 sectors/track, 104187162 cylinders, total 7814037168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x53bed1ab

Device Boot      Start         End      Blocks   Id  System
/dev/sdd1            2048  4294967294  2147482623+  83  Linux

Disk /dev/sde: 4000.8 GB, 4000787030016 bytes
25 heads, 3 sectors/track, 104187162 cylinders, total 7814037168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xbc5c1069

Device Boot      Start         End      Blocks   Id  System
/dev/sde1            2048  4294967294  2147482623+  83  Linux

Disk /dev/sdf: 4000.8 GB, 4000787030016 bytes
25 heads, 3 sectors/track, 104187162 cylinders, total 7814037168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x4801480c

Device Boot      Start         End      Blocks   Id  System
/dev/sdf1            2048  4294967294  2147482623+  83  Linux

Disk /dev/md0: 10995.1 GB, 10995108413440 bytes
2 heads, 4 sectors/track, -1610614656 cylinders, total 21474821120 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 524288 bytes / 2621440 bytes
Disk identifier: 0x00000000

Disk /dev/md0 doesn't contain a valid partition table
    
por Rob 28.07.2014 / 21:51

2 respostas

4

Solte o 1 do final do seu comando:

mdadm --create --verbose /dev/md0 --level=stripe --raid-devices=5 /dev/sd[bcdef]

Deve funcionar bem. Eu estou supondo que você quer usar todo o espaço disponível em todos os 5 discos RAID.

    
por 28.07.2014 / 21:58
7

fdisk não criará uma partição maior que 2TB (2 ^ 41 bytes). Isso parece estar bem documentado; Um exemplo de muitos pode ser lido aqui . 5 * 2 TB = 10 TB, que é o que você está recebendo.

Você precisará usar o GNU parted para colocar uma tabela de partição GPT em cada unidade; então você poderá fazer uma partição /dev/sdX1 que se estende até o topo da unidade.

Ou, como sugere o jski, você pode usar os dispositivos brutos em vez das partições. Eu escolheria a abordagem de partição, não menos importante, porque você sempre pode cortar a partição para um pouco abaixo do topo do disco, caso precise substituir um disco por um menor ( sim, eu sei que é uma consideração inútil no RAID-0, mas eu sinto que é um bom hábito entrar).

    
por 28.07.2014 / 22:06