Pular para o conteúdo

ZFS em ação

Aqui mostro como se calcula a taxa de deduplicação do sistema de arquivos e também quanto espaço em disco estou economizando com o ZFS. (Em torno de 51GB)
Publicado em 17/03/2022 Enviado por Cézar Augusto Categoria: Tiling window manager Hits: 1.257 Estado: Aprovado
  • Ver em tamanho real
  • Indicar
  • Denunciar
Tiling window manager ZFS em ação
#1 Comentário enviado por cizordj em 16/03/2022 - 12:26h
Pra quem quer saber que tipos de arquivos eu tenho que possuem tantas duplicatas, são só projetos na pasta /home vendorizadas e alguns contêiners do docker na pasta /var. Os contêiners do docker são basicamente um espelho dos arquivos do projeto na /home e por isso a taxa de duplicação passou de 200%.
Até agora não tive nenhum gargalo de memória RAM.
#2 Comentário enviado por removido em 17/03/2022 - 11:24h
E o docker funciona bem em ZFS?

Estou usando docker com BTRFS, e parece q perdeu um pouco de desempenho em relação ao ext4. Mas bem pouca coisa...
#3 Comentário enviado por cizordj em 17/03/2022 - 11:34h

[2] Comentário enviado por ru4n em 17/03/2022 - 11:24h

E o docker funciona bem em ZFS?

Estou usando docker com BTRFS, e parece q perdeu um pouco de desempenho em relação ao ext4. Mas bem pouca coisa...



Funciona, você só tem que adicionar essa opção no arquivo /etc/default/docker:
DOCKER_OPTS="--storage-driver=zfs"
Porém no Debian não é recomendável usar este arquivo e sim o /etc/docker/daemon.json, mas pra mim está funcionando igual.

No json a configuração ficaria assim:
{
"storage-driver": "zfs"
}

#4 Comentário enviado por removido em 17/03/2022 - 11:56h

[3] Comentário enviado por cizordj em 17/03/2022 - 11:34h

Funciona, você só tem que adicionar essa opção no arquivo /etc/default/docker:
DOCKER_OPTS="--storage-driver=zfs"
Porém no Debian não é recomendável usar este arquivo e sim o /etc/docker/daemon.json, mas pra mim está funcionando igual.

No json a configuração ficaria assim:
{
"storage-driver": "zfs"
}




E sobre o desempenho, no geral (execução de build, consumo de memória)? Costumo usar bastante o docker-compose para subir diversos containers de projeto, por projeto geralmente tenho um container para subir um SGBD (geralmente postgres), e um outro para subir um serverless.
Só que é comum eu trabalhar com 2 ou 3 projetos ao mesmo tempo, nesse sentido as vezes fico com até 4 containers rodando simultaneamente.
No BTRFS, para buildar um container usando um projeto nodejs, teve um pequena redução de tempo entre o ext4 e btrfs, porém é um tempo bem insignificante, como comentei.

Pergunto isso pois utilizo docker no dia dia, e pelo que eu entendi da documentação do Docker, em BTRFS o docker pode perder até 50% de performance em relação ao ext4 :\
Penso no ZFS como alternativa tmb
#5 Comentário enviado por cizordj em 17/03/2022 - 13:09h
Por enquanto aqui pra mim tá normal, desde um ano atrás pra cá eu tava usando o Docker no sistema de arquivos XFS e lá o docker usava o driver padrão que suporta tanto XFS quanto EXT4 e de um mês pra cá é que eu comecei a usar o ZFS.
Durante o build com o docker-compose eu não notei nenhuma diferença no desempenho e nenhum gargalo de CPU, só menos escrita no disco e mais consumo de RAM devido a natureza do ZFS.
#6 Comentário enviado por niquelnausea em 17/03/2022 - 13:51h

tá usando qual método para compressão?
#7 Comentário enviado por cizordj em 18/03/2022 - 07:37h

[6] Comentário enviado por niquelnausea em 17/03/2022 - 13:51h


tá usando qual método para compressão?

Em ambas as partições (home e var) lz4.
#8 Comentário enviado por maurixnovatrento em 29/03/2022 - 20:26h

Interessante essa partição ZFS.

___________________________________________________________
Conhecimento não se Leva para o Túmulo.
https://github.com/mxnt10

Contribuir com comentário

Entre na sua conta para comentar.