web-dev-qa-db-pt.com

Configuração Iniciante do ZFS com Unidades de Tamanho Diferentes

Desculpe pelas perguntas do noobie, estive pesquisando todo tipo de passo a passo para criar meu ataque ZFS, mas não consigo encontrar os links corretos para as respostas que estou procurando.

Esta é a minha primeira tentativa de um RAID, e de tudo que eu li, parece que o zfs é o melhor caminho a percorrer.

  1. O que acontece se eu tiver que alterar o hardware subjacente por trás do pool do zfs? Como o mobo/processador, o que acontece se isso morrer em um ano ou dois? posso portar meu pool de zfs de alguma forma?
  2. Eu tenho bastante o conjunto de drives de tamanhos diferentes, e estou tentando tirar o máximo espaço de armazenamento com redundância. Qual é a melhor configuração para essa configuração e quanto espaço eu vou perder usando essas unidades de tamanhos diferentes. Eu não estou criando isso para quaisquer requisitos de velocidade, eu só quero um servidor de arquivos para vários HTPCs. Minhas unidades atualmente disponíveis para isso são:
    • 1 unidade híbrida de 500 GB
    • 1 unidade de 1 TB
    • 1 unidade de 3 TB
    • 1x 4TB Drive (será adicionado ao pool posteriormente, atualmente contendo todos os dados das unidades listadas acima)
  3. A adição da unidade de 4 TB à piscina será mais tarde um problema de qualquer tipo?
  4. Quaisquer recomendações em um sistema operacional Linux para executar tudo isso, e devo usar uma unidade separada para o sistema operacional? Estou familiarizado com o Ubuntu, o RHEL e o OpenSUSE/SLES.

Qualquer ajuda é muito apreciada, continuo a ler sobre isso, apenas muito para receber de uma só vez, qualquer link sobre onde começar seria muito útil também.

24
ivandov

O que acontece se eu tiver que alterar o hardware subjacente por trás do pool do zfs? Como o mobo/processador, o que acontece se isso morrer em um ano ou dois? posso portar meu pool de zfs de alguma forma?

Um pool do ZFS não é dependente de hardware. Apenas certifique-se de que seu HBA (Host Bus Adapter) não está fazendo algo como criptografar seus dados no nível do hardware. O ZFS funciona melhor com um HBA como um LSI 9211-8i ou um IBM m1015 cross-flashed para usar o firmware 9211-8i, não uma placa RAID de "hardware" de golpe total .

Eu tenho bastante o conjunto de drives de tamanhos diferentes, e estou tentando tirar o máximo espaço de armazenamento com redundância. Qual é a melhor configuração para essa configuração e quanto espaço eu vou perder usando essas unidades de tamanhos diferentes. Eu não estou criando isso para quaisquer requisitos de velocidade, eu só quero um servidor de arquivos para vários HTPCs. Minhas unidades atualmente disponíveis para isso são: 1 unidade de 500 GB 'Híbrida' 1 unidade de 1 TB 1 unidade de 3 TB 1 unidade de 4 TB (será adicionada à piscina posteriormente, atualmente armazenando todos os dados das unidades listadas acima)

Se eu fosse você, venderia as unidades menores e colocaria o dinheiro em direção a unidades maiores do mesmo tamanho. Isso tornará sua vida muito mais fácil. Além disso, você não pode simplesmente adicionar unidades a um pool do ZFS. Existem restrições. Leia aqui .

A adição da unidade de 4 TB à piscina será mais tarde um problema de qualquer tipo?

Possivelmente. Eu estou em uma posição similar. Em algum momento no futuro, terei que aumentar minha capacidade de armazenamento. Naquela época, planejo comprar um segundo HBA e uma nova matriz de unidades maiores. Em seguida, transferirei todos os dados das minhas unidades existentes para as novas unidades e venderei as unidades existentes. Pode haver outras maneiras (mais baratas) em torno disso, mas da seguinte maneira:

  1. Mantém todas as minhas unidades do mesmo tamanho
  2. Só tem o custo adicional de um HBA extra, o que não é uma coisa ruim para se ter de qualquer maneira
  3. Não requer que eu substitua minhas unidades uma por vez, praticando novamente após cada substituição.

Quaisquer recomendações em um sistema operacional Linux para executar tudo isso, e devo usar uma unidade separada para o sistema operacional? Estou familiarizado com o Ubuntu, o RHEL e o OpenSUSE/SLES.

Não use o Linux, ele não tem suporte nativo ao ZFS. O suporte do Linux ao ZFS vem de ZFS no Linux e zfs-Fuse . O estado atual do ZFS está em fluxo conforme o Oracle tenta ao máximo arruiná-lo. O ZFS provavelmente se ramificará na versão 28 em um futuro muito próximo, portanto, não crie seu pool do ZFS com nenhuma versão maior que 28, a menos que você esteja 100% certo de que deseja manter uma solução Oracle. Atualmente o FreeBSD e seus spinoffs suportam a versão 28 do ZFS.

Desde que você é um auto proclamado noob ZFS eu recomendaria FreeNAS . Eu tenho usado por um tempo agora e estou muito feliz com isso. Definitivamente permitirá a configuração mais direta para você.

Pensamentos Adicionais:

Certifique-se de escolher o nível correto de paridade para seu caso de uso específico. Especificamente, certifique-se de planejar em torno de URE . Basicamente, você não quer usar o RAID 5 (RAID Z1) se estiver usando algo maior que as unidades de 2 TB. Existem alguns outros fatores a serem considerados que podem solicitar que você aumente seu nível de dados de paridade também. aqui é um bom artigo sobre o assunto.

Atualização:

Já se passaram 1,5 anos desde que eu postei essa resposta e nesse tempo eu dei ao ZFS no Linux (Ubuntu Server especificamente) outra chance. Já percorreu um longo caminho desde que tentei primeiro e estou muito feliz até agora. Meu motivo para mudar foi as restrições de instalação no FreeNAS e no sistema de prisões. Eu queria usar o meu servidor para mais do que apenas um servidor NAS e o FreeNAS torna isso muito difícil. O sistema de prisões é bom e muito seguro, mas eu realmente não precisava desse nível de segurança em minha casa e não queria lidar com o login em uma prisão toda vez que eu queria descompactar um arquivo. Eu acho que o FreeNAS ainda é uma boa escolha se você está apenas começando com o ZFS (por causa da interface web) ou se você quer apenas um dispositivo NAS (ou seja, nenhuma outra funcionalidade de servidor é necessária).

20
ubiquibacon

1: não há problema em mudar nada. O pool deve ser importável independentemente da CPU, mainboard ou qualquer coisa semelhante.

2: O ZFS funciona melhor com dispositivos do mesmo tamanho. Além disso, como você deseja redundância, dispositivos maiores que o menor teriam seu tamanho extra desperdiçado. Finalmente, você não pode adicionar um dispositivo (por exemplo: o disco 4TB) a um RAIDZ. Se você deseja apenas redundância de metadados (o que duvido), é possível criar uma distribuição com todos os seus discos e adicionar o disco 4 TBposteriormente ao pool.

Como alternativa, você pode primeiro criar um pool de 500 GB contendo um espelho com disco 1 e disco 2 e manter o disco 3 para mais tarde e depois adicionar um segundo espelho quando tiver o disco 4TB disponível com disco 3 e disco 4 fazendo um pool de 3.5 TB.

3: sim, veja o item 2

4: sem recomendação.

4
jlliagre

Se você quiser criar um ataque com zfs usando diferentes tamanhos de disco, você precisa usar "zpool create (nome do seu pool) raidz1 -f sdb sdc sdd" o -f força de arquitectura zfs para usar tamanhos diferentes exemplo 500gb 1tb 250gb hd

1
Juan Sanchez

Acontece que você não pode criar com ashift = 12 no zfs-Fuse:

# zpool create -n -o ashift=12 test /dev/disk/by-id/scsi-SATA_......
property 'ashift' is not a valid pool property

Mas funciona com o do github zfs + spl 0.6.5.x:

# dd if=/dev/zero of=/tmp/testfile bs=1M count=64
# zpool create -o ashift=12 test /tmp/testfile
# dd if=/dev/zero of=/tmp/testfile8 bs=1M count=64
# zpool create -o version=8 test8 /tmp/testfile8
1
additionalinfo

Uma solução ad-hoc para isso é particionar os discos em conjuntos de partições de tamanhos iguais e, em seguida, criar vários pools usando conjuntos de partições de tamanho igual.

Pode haver alguns problemas de desempenho devido a ter vários pools nos mesmos discos físicos, mas você pode usar a maior parte do espaço em seus discos.

0
Gianni Fiumetta

a resposta do ubiquibacon cobre todas as suas perguntas diretas, mas eu pensei em falar em alguma "experiência em primeira mão".

ZFS no FreeBSD é minha principal área de experiência, embora a maioria das implementações do ZFS sejam similares o suficiente para que os recursos possam ser análogos. Eu escolhi o FreeBSD para a minha instalação porque ele me dá um sistema operacional de propósito geral que eu posso usar para qualquer propósito desonesto que eu escolher, em oposição a uma solução mais amigável, mas especial, como o FreeNAS. O ZFS, configurado corretamente, pode ser um ótimo sistema. O ZFS configurado incorretamente pode ser uma dor total. É um sistema de arquivos relativamente novo e não é tão bem entendido como sistemas de arquivos mais antigos e bem estabelecidos (como FS2 no FreeBSD ou ext2/3/4 no Linux. as listas de discussão são bastante ativas e provavelmente vale a pena pelo menos digitalizá-las para entender o que se espera de você, caso você tenha algum problema. As pessoas nelas são geralmente amigáveis ​​e muito úteis contanto que você está disposto a ajudar a descobrir o que está acontecendo.Para essa "novidade" geral, você obtém recursos interessantes como compactação que podem ser ativados em muitas circunstâncias com poucos recursos perdidos e perigosos como: De-duplicação , que pode requer muitos recursos , ser impossível desligar sem copiar todos os seus dados, e pode tornar seu computador não inicializável (como o meu fez, um feliz dia).

É um ótimo sistema de arquivos, se algum dos benefícios superar as compensações. Eu tenho sido feliz com o meu no geral.

0
Steven Schlansker