Podem existir dois zpools separados nos mesmos dispositivos físicos?

4

Curto: Posso compartilhar um disco entre dois zpools separados?

Longo: quero um array raidz2, mas não posso pagar tudo de uma vez. Minha possível solução é começar com duas unidades. Eu criaria um espelho usando apenas metade da capacidade de cada disco. Quando eu puder pagar mais drives, eu criaria um novo zpool com um único raidz2 vdev usando as novas unidades e o espaço não utilizado de 50% nos discos iniciais. Eu então planejo copiar os dados de um zpool para o outro, deletar o zpool contendo o mirror e expandir o zpool com o raidz2 vdev.

Isso funcionaria?

Links e referências seriam apreciados.

    
por Alex 16.10.2012 / 22:47

1 resposta

5

  1. Sim, você pode criar um pool que consiste em um vdev espelhado entre duas partições.
  2. Sim, você pode ter dois pools, cada um com um único disco, usando sua própria partição.
  3. Sim, ao aumentar todos os tamanhos dos discos em um raid-z2 vdev, isso aumentará a capacidade disponível.

Mas você não deveria fazer isso. O ZFS é melhor quando você dá a ele todo o disco e, embora as partições "trabalhem", seu mundo é muito mais fácil / melhor com discos inteiros. Se você realmente quer fazer o espelho - > raid-z2 pool transição na estrada e estão preparados para viver dentro dos limites de 50% de uso do seu espelho Eu tenho uma idéia alternativa:

  1. Compre 2 discos (por exemplo, 2x2TB)
  2. Crie um zpool espelhado: zpool create yourPool mirror cXt1d0 cXt2d0
  3. Compre mais de 3 discos de tamanho idêntico. (por exemplo, 4x2TB)
  4. Crie um novo sistema de arquivos: zfs create yourPool/fake
  5. Crie dois arquivos esparsos: mkfile -n 1TB /yourpool/fake/fakehda
  6. Criar um zpool de dupla paridade: zpool create yourNewPool raidz2 cXt3d0 cXt4d0 cXt5d0 cXt6d0 /yourpool/fake/fakehda /yourpool/fake/fakehdb
  7. O zfs envia / registra seus sistemas de arquivos de um pool para o outro.
  8. Desanexe um disco do seu espelho zpool detach yourPool cXt1d0
  9. Substitua seu disco falso pelo disco real zpool replace yourNewPool /yourpool/fake/fakehda cXt1d0
  10. Aguarde até que o resilvering seja concluído. Monitore o progresso com zpool status yourNewPool .
  11. Quando estiver concluído o resilvering, mate o espelho zpool destroy yourPool
  12. Reutilize o segundo disco antigo zpool replace yourNewPool /yourpool/fake/fakehda cXt2d0

Durante todo este processo, você poderá sobreviver a qualquer falha de um único disco sem perda de dados.

    
por 17.10.2012 / 08:36

Tags