3.10. Testando o efeito do TRIM e DISCARD no VDO
Este procedimento testa se os comandos TRIM
e DISCARD
liberam corretamente os blocos de arquivos excluídos em um volume de teste VDO. Ele demonstra que os descartes informam à VDO que o espaço não é mais utilizado.
Pré-requisitos
- Um volume de teste VDO recém-criado é montado. Para detalhes, veja Seção 3.4, “Criando um volume de teste VDO”.
Procedimento
Prepare uma tabela onde você possa registrar os resultados do teste:
Etapa Espaço de arquivo utilizado (MB) Blocos de dados utilizados Blocos lógicos utilizados Inicial
Adicionar 1 arquivo GiB
Rodar
fstrim
Excluir 1 arquivo GiB
Rodar
fstrim
Aparar o sistema de arquivo para remover blocos desnecessários:
# fstrim /mnt/vdo-test
O comando pode levar muito tempo.
Registrar o uso inicial de espaço no sistema de arquivo:
$ df -m /mnt/vdo-teste
Veja quantos dados físicos e lógicos bloqueia o volume VDO usa:
# vdostats --verbose "blocos usados
Criar um arquivo 1 GiB com dados não duplicados sobre o volume do VDO:
$ dd if=/dev/urandom of=/mnt/vdo-test/file bs=1M count=1K
Registrar novamente o uso do espaço:
$ df -m /mnt/vdo-test # vdostats --verbose | grep "blocks used"
O sistema de arquivo deve usar um sistema adicional de 1 GiB. Os valores de
data blocks used
elogical blocks used
devem aumentar de forma semelhante.Aparar novamente o sistema de arquivo:
# fstrim /mnt/vdo-test
Inspecione novamente o uso do espaço para confirmar que o revestimento não teve impacto sobre o uso do volume físico:
$ df -m /mnt/vdo-test # vdostats --verbose | grep "blocks used"
Apagar o arquivo 1 GiB:
$ rm /mnt/vdo-test/file
Verificar e registrar novamente o uso do espaço:
$ df -m /mnt/vdo-test # vdostats --verbose | grep "blocks used"
O sistema de arquivo está ciente de que um arquivo foi excluído, mas não há alteração no número de blocos físicos ou lógicos porque a exclusão do arquivo não foi comunicada ao armazenamento subjacente.
Aparar novamente o sistema de arquivo:
# fstrim /mnt/vdo-test
Verificar e registrar novamente o uso do espaço:
$ df -m /mnt/vdo-test # vdostats --verbose | grep "blocks used"
O utilitário
fstrim
procura blocos gratuitos no sistema de arquivos e envia um comandoTRIM
para o volume VDO para endereços não utilizados, o que libera os blocos lógicos associados. A VDO processa o comandoTRIM
para liberar os blocos físicos subjacentes.
Recursos adicionais
-
Para mais informações sobre os comandos
TRIM
eDISCARD
, o utilitáriofstrim
e a opção de montagemdiscard
, veja Capítulo 5, Descartando blocos não utilizados