Usar o ZFS para swap deve funcionar, assim como acontece no Solaris e no FreeBSD.
zfs create pool/swap -V 1G -b 4K
mkswap -f /dev/pool/swap
swapon /dev/pool/swap
Estou usando o native-zfs e queria saber se existe uma maneira de usar uma partição do ZFS para o SWAP. Eu estou executando meu servidor fora de um pen drive e pensei que seria uma boa maneira de acelerar um pouco.
Usar o ZFS para swap deve funcionar, assim como acontece no Solaris e no FreeBSD.
zfs create pool/swap -V 1G -b 4K
mkswap -f /dev/pool/swap
swapon /dev/pool/swap
Aqui está um guia mais elaborado, copiado do wiki do zfsonlinux :
zfs create -V 4G -b $(getconf PAGESIZE) -o compression=zle \
-o logbias=throughput -o sync=always \
-o primarycache=metadata -o secondarycache=none \
-o com.sun:auto-snapshot=false rpool/swap
Você pode ajustar o tamanho (a 4G
part) às suas necessidades.
O algoritmo de compactação é definido como zle
porque é o algoritmo mais barato disponível. Com ashift=12
(blocos de 4 kiB no disco), o caso comum de um tamanho de página de 4 kiB significa que nenhum algoritmo de compactação pode reduzir a E / S. A exceção é todas as páginas zero, que são descartadas pelo ZFS; mas alguma forma de compactação deve ser ativada para obter esse comportamento. Se seu pool usa ashift=9
, você pode usar compression=lz4
.
mkswap -f /dev/zvol/rpool/swap
/etc/fstab
echo /dev/zvol/rpool/swap none swap defaults 0 0 >> /etc/fstab
Aviso: sempre use aliases /dev/zvol
longos nos arquivos de configuração. Nunca use um nome de dispositivo curto /dev/zdX
.
swapon -av
As partições de troca precisam estar em um formato específico que seja adequado para troca, portanto, você não pode usar nenhum outro sistema de arquivos para troca. Isso exclui o zfs por esse motivo.