VDO sous le LVM local de Proxmox : moins d'octets atteignent le disque
VDO est la couche de déduplication et de compression du noyau. Sous un groupe de volumes LVM épais, il donne aux disques locaux de Proxmox VE un stockage qui n’écrit qu’une copie de chaque bloc partagé par les VM, si bien que beaucoup moins d’octets atteignent le disque. Ce billet le monte épais sur épais sur un hôte Proxmox VE 9, avec VDO dimensionné à l’espace qu’il a vraiment pour que rien au-dessus ne puisse surallouer, le réglage scan_lvs de lvm.conf et son filtre, et les threads de VDO calés sur le nombre de CPU. Il mesure ce que la déduplication a économisé sur un modèle et six clones complets, deux ISO, des zéros et des données aléatoires, combien d’octets le disque a réellement reçus face à ce que l’invité a écrit, et ce que coûte VDO face à la même Intel Optane sans VDO du tout. Il monte ensuite le pool avec l’index et les journaux de VDO sur NVMe et les données sur un second périphérique, prouve la disposition avec vdolistmetadata, mesure la répartition des I/O, puis place VDO au-dessus de bcache avec un seul NVMe partitionné entre le cache bcache et les métadonnées de VDO, et mesure combien d’octets atteignent le cache avec et sans VDO. Il raisonne sur ce que tout cela veut dire sur du RAID6 matériel à disques durs, et couvre le discard à la suppression.