Good day,
I followed the guide to setup DRBD9 https://pve.proxmox.com/wiki/DRBD9 and I found a major issue with LVM thin provisioning and metadata.
If I for example follows the guide and creates the drbdthinpool with a size of 1600G.
The metadata pool will then be auto-calculated based on chunk size, in my example it was around 108MB.
The BIG issue for me was when I was starting to restore five vzdump backups the metadata pool got filled up to 100% and after that it started to happen weird things with I/O errors.
I then started to read the manual for lvmthin, http://man7.org/linux/man-pages/man7/lvmthin.7.html
I found out the following:
In lvm.conf I changed thin_pool_autoextend_threshold = 100 to 80
So if I would reach 80% of usage in data or metadata pool it would automatically extend with 20%.
Why isn't lvm auto extend enabled by default in Proxmox?
In the lvmthin manual it clearly states "(Disabling automatic extension is not recommended.)"
I followed the guide to setup DRBD9 https://pve.proxmox.com/wiki/DRBD9 and I found a major issue with LVM thin provisioning and metadata.
If I for example follows the guide and creates the drbdthinpool with a size of 1600G.
Code:
root@proxmox:~# vgcreate drbdpool /dev/sdb1
Physical volume "/dev/sdb1" successfully created
Volume group "drbdpool" successfully created
root@proxmox:~# lvcreate -L 1600G -n drbdthinpool -T drbdpool
Logical volume "drbdthinpool" created.
The metadata pool will then be auto-calculated based on chunk size, in my example it was around 108MB.
The BIG issue for me was when I was starting to restore five vzdump backups the metadata pool got filled up to 100% and after that it started to happen weird things with I/O errors.
I then started to read the manual for lvmthin, http://man7.org/linux/man-pages/man7/lvmthin.7.html
I found out the following:
- The recommended metadata pool size for all purposes should be at 1G.
- Automatic extend of thin_pool was not activated by default in /etc/lvm/lvm.conf when installing fresh PVE 4.2.
Code:
root@proxmox:~# lvcreate -L 1600G -n drbdthinpool -T drbdpool --poolmetadatasize 1G
Logical volume "drbdthinpool" created.
In lvm.conf I changed thin_pool_autoextend_threshold = 100 to 80
So if I would reach 80% of usage in data or metadata pool it would automatically extend with 20%.
Why isn't lvm auto extend enabled by default in Proxmox?
In the lvmthin manual it clearly states "(Disabling automatic extension is not recommended.)"