Foram necessários cerca de dois anos e 5 lançamentos RC para que os desenvolvedores do ZFS on Linux (abreviado ZoL) lançassem uma versão extremamente significativa — ZFS-0.8.0.
Novas funcionalidades:
- Criptografia "nativa" tanto para sistemas de arquivos quanto para partições. O algoritmo aes-256-ccm é utilizado por padrão. As chaves para o conjunto de dados são gerenciadas com o comando "zfs load-key" e comandos relacionados.
- Criptografia ao usar zfs send/receive. Permite armazenar backups em serviços não confiáveis sem risco de comprometimento.
- Remoção de dispositivo do pool usando o comando "zpool remove". Todos os dados são copiados em segundo plano para os dispositivos restantes de nível superior, e a capacidade do pool é diminuída respectivamente.
- O subcomando "zpool checkpoint" permite salvar todo o estado do pool e, se desejado, retornar a esse estado exato. Isso pode ser visto como um snapshot avançado do pool. É útil durante ações administrativas complexas que, caso contrário, seriam irreversíveis (por exemplo, habilitar um novo recurso, destruir um conjunto de dados, etc.)
- . 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 — para dispositivos do pool. Permite utilizar mais eficientemente os SSDs e evita a redução de seu desempenho e/ou tempo de vida. O trim pode ser feito como um comando separado "zpool trim" ou ativar a opção discard — uma nova propriedade do pool "autotrim".
- Inicialização do pool. O subcomando "zpool initialize" grava seu padrão em todo o espaço não alocado. Isso elimina a primeira queda de desempenho de acesso que pode existir em alguns armazenamentos virtualizados (por exemplo, VMware VMDK).
- Suporte à contabilidade de projetos e quotas. Essa funcionalidade adiciona monitoramento de uso de projetos e quotas às funcionalidades existentes de monitoramento de espaço e quotas. As quotas de projeto adicionam uma dimensão extra às tradicionais quotas de usuários/grupos. Os subcomandos "zfs project" e "zfs projectspace" foram adicionados para gerenciar projetos, definir limites de quotas e relatórios de uso.
- Programas de canais. O subcomando "zpool program" permite o uso de scripts em LUA para realizar ações administrativas. Os scripts são executados em uma "caixa de areia" com limites de tempo e memória.
- 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.. Nova biblioteca Python para fornecer uma interface estável para a administração programática do ZFS. Esta camada oferece um mapeamento um-para-um para as funções da API libzfs_core, mas as assinaturas e tipos são mais naturais para o dialeto Python.
- Compatibilidade com Python3. As ferramentas 'arcstat', 'arcsummary' e 'dbufstat' foram atualizadas para compatibilidade com Python3
- — 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.. Adicionada a suporte para uso de saída direta (O_DIRECT).
As subcomandos scrub/resilver/list/get também foram acelerados, foi adicionada a possibilidade de listar metadados em um dispositivo separado (por exemplo, um SSD pequeno de alto desempenho), a performance do ZIL foi aumentada através de caching e otimizações, e adicionada a suporte para aceleração de hardware de somas de verificação SHA256 e criptografia AES usando Intel QAT (Quick Assist Technology).
Núcleos do Linux suportados: 2.6.32 — 5.1 (aceleração SIMD ainda não é suportada em núcleos 5.0 e superiores)
Completo lista de alterações
Os valores padrão dos parâmetros dos módulos foram escolhidos para garantir a carga ideal para a maioria das cargas de trabalho e configurações. Para uma lista completa de opções — man 5 zfs-module-parameters
Fonte: linux.org.ru
