ZFSonLinux 0.8: recursos, estabilização, intrigas. E trim

Recentemente, foi lançada uma nova versão estável do ZFSonLinux, um projeto que agora é central no desenvolvimento do OpenZFS. Adeus, OpenSolaris, olá mundo feroz e incompatível do GPL-CDDL no Linux.

ZFSonLinux 0.8: recursos, estabilização, intrigas. E trim
Abaixo está uma visão geral das funcionalidades mais interessantes (ainda bem, 2200 commits!), e para a sobremesa — um pouco de intriga.

Novas funcionalidades

Claro, a mais aguardada é criptografia nativa. Agora é possível criptografar apenas os conjuntos de dados necessários com a criptografia embutida no ZFS, e (na minha opinião — o mais importante) — você pode enviar dados criptografados e verificar a integridade dos dados embutindo os meios, todas as possibilidades de preservação da integridade dos dados ZFS estarão com você! zfs send Em seguida, é importante mencionar o tão esperado

TRIM . Sim, levou muito tempo para chegar à produção. Em parte porque para sistemas de arquivos CoW, o problema do desgaste de SSD não é tão crítico. Mas agora estamos todos tranquilos —zpool trim salvará nossas delicadas unidades flash. Agora é possível

remover vdevs adicionados acidentalmente do pool (mas apenas se forem sparse ou mirror). Uma pequena funcionalidade útil. Em seguida no nosso top 10 —

pontos de verificação do pool . Resumidamente — instantâneas para todo o estado do pool, MAS permitindo reverter alterações não apenas em dados, mas também nas funcionalidades ativadas no pool e nas alterações na estrutura. Mais uma possibilidade de se proteger.Inicialização do pool

— preenchimento do armazenamento subjacente com zeros. Útil para trabalhar em ambientes com discos thin provisioned para alocação explícita de espaço e evitar quedas inesperadas de desempenho no futuro. Contabilidade de projetos e cota

— no mecanismo de cotas já existente, agora é possível separar por projetos. Programas de canal

— a possibilidade de realizar tarefas administrativas de forma atômica usando scripts Lua. Existem limites para tempo de execução e memória. Se você está na área de automação — isso é para você. IO Direto

— para simplificar, implementamos o trabalho de IO Direto, nada mudou internamente (apenas chamadas vão o máximo possível sem cache), mas agora o software que deseja operar neste modo não terá problemas. Pyzfs

Projeto integrado ao repositório principal e apoiado pelo projeto ZFSonLinux. Agora há mais recursos para gerenciamento em Python (e também será mais tranquilo com o suporte do módulo). Além disso, muitos scripts Python foram adaptados para Python 3. integrado no repositório principal e acolhido pelo projeto ZFSonLinux. Agora há mais recursos para gerenciamento em Python (e será mais tranquilo em relação ao suporte do módulo). Além disso, muitos scripts em Python foram adaptados para Python 3.

E agora o saboroso — desempenho

Agora, nas operações de scrub e resilver, os metadados são lidos primeiro e só depois os dados em sequência. Dessa forma, a recuperação do array e a verificação de integridade ocorrem na máxima velocidade.

Classes de alocação — os arrays vdev agora têm um tipo de dispositivo, permitindo que o armazenamento de metadados/tabelas de deduplicação (DDT)/blocos de dados abaixo de X Kbytes seja transferido para um array vdev separado de discos mais rápidos. Mais velocidade, para o deus da velocidade! (e de fato — essa capacidade será muito útil no futuro DRAID).

Muitos comandos administrativos agora funcionam mais rápido graças ao cache pontual de metadados (por exemplo, zfs list, zfs get).

O processo de alocação de dados é paralelizado, agora para cada seção de espaço livre (metaslab) são criados vários alocadores. Com NVMe, claro, não será possível extrair tudo, mas será melhor.

A recuperação de integridade do array permitirá não sobrecarregar o array com a reconstrução simultânea de vários discos, mas fará isso de forma sequencial. Assim, tanto o impacto no desempenho quanto o tempo de reconstrução serão reduzidos.

Ao importar pools com um grande número de volumes a velocidade de registro no sistema foi aumentada.

Além disso QAT agora permite descarregar o cálculo de criptografia e somas de verificação.

Além de várias pequenas mudanças (são mais de 2000 commits na versão!).

E para a sobremesa — intrigas

Embora o ZFSonLinux adicione rapidamente suporte para novos kernels do Linux (atuais versões 2.6.32 — 5.1*), os mantenedores do kernel mostram clara falta de interesse em ajudar módulos externos (“…não nos importamos nem um pouco com
módulos do kernel externos…
— greg k-h”). Assim, os chamados necessários para um funcionamento eficaz no ramo 5.0 foram alterados para GPL-only . Em kernels com esse patch, o desempenho do ZFS será significativamente pior. O que salva é que essa funcionalidade pode ser implementada do lado do módulo, o que provavelmente será feito. Enquanto isso, você pode se inspirar no NixOS — eles simplesmente reverteram o patch no kernel 🙂

O projeto também adotou um Código de Conduta, o que gerou uma onda de debates. Mas nos mantivemos firmes 🙂

Desejando a todos backups funcionais e versões estáveis!

Links úteis:
— lançamento no Github
— minha introdução ao ZFS

Fonte: habr.com

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster