Antes de responder à sua pergunta, um aviso: obviamente, é mais simples usar apenas o hardware duplicado. Vale a pena notar que, embora seus dispositivos sejam do mesmo fabricante e tenham o mesmo número de RPMs, o throughput será diferente entre eles para um determinado tamanho IO (porque os drives de 2TB provavelmente têm maior densidade de bytes por toque) e o número de IOPS será o mesmo entre eles, mesmo que as unidades de 2 TB serão atingidas duas vezes mais freqüentemente em uma situação de leitura aleatória. Basicamente, você terá desempenho assimétrico, de qualquer forma, onde os discos de 2 TB são ~ 2x melhores em grandes pedidos de veiculação, e os discos de 1 TB são ~ 2x melhores em IOs aleatórios curtos.
Vou responder assumindo que você não quer vender suas unidades de 1 TB para comprar outra unidade de 2 TB. De sua pergunta eu não posso realmente dizer - qual é o nível de replicação desejado? Não importa o que, há duas diretrizes que você deve tentar seguir:
- É melhor deixar o ZFS configurar discos cheios no
zpool
, porque a semântica de falha quando uma unidade falha é muito mais simples do que se duas partições podem falhar juntas (quando o disco em que ambas estão em falha). - É mais fácil adicionar novos discos ao conjunto posteriormente se o seu nó de nível superior no conjunto for um
vdev
distribuído. Dessa forma, você sempre pode adicionar grupos de novos dispositivos duplicados ao mesmo tempo e não importa se os tamanhos deles correspondem aos dos dispositivos existentes no pool.
Se você quiser um espelho de 2 discos, sua opção 1 parece ser a melhor para mim. Se você comprar outro disco, compre um segundo do mesmo tipo e adicione-os como um novo espelho no nó distribuído nesta árvore:
striped
mirror
2TB
2TB
mirror
1TB
1TB
Se você quiser um espelho de 3 discos, você poderia fazer um espelho como este, mas adicionar dispositivos a ele mais tarde é mais difícil (adicioná-los como outro espelho? adicioná-los como outra faixa na área de 1TB?):
mirror
2TB
2TB
striped
1TB
1TB
Se você quiser fazer o RAID-Z, eu recomendaria apenas não usar dispositivos de tamanhos diferentes, ou você poderia comprar mais dispositivos de 2 TB e 1 TB e distribuir vários grupos de RAID-Z.
Um método alternativo para replicar dados no ZFS é a configuração copies=N
que você pode definir nos sistemas de arquivos do pool. Isso pode ser tentador para o seu caso de uso, mas note que não ajuda em todos os problemas de perda de dados - uma falha no nível do dispositivo ainda resultará em falha no uso de todo o pool. (O principal caso de uso para isso é corrupções dentro de um disco.)