meta data for this page
  •  

Linux Guests

Filesystem

If ZFS is used on host (CoW filesystem) using CoW filesystem on guest generates overhead. Better is to use simple XFS or Ext4 if BTRFS snapshot and subvolumes functionality is not needed in guest.

Linux Guest on BTRFS:

  • BTRFS with single copy of meta, system and data
  • I/O is better on modern guest Kernel 6.1 (vs 5.10)
  • I/O is better whem VM storage is “no cache”
    • sync writes goes to ZFS ZIL
    • With “Writeback” cache - ZFS ZIL was not utilized so high like with “no cache”

Block sizes:

  • Default zvolvolblocksize was 8k
  • Latest Proxmox creates zvols with 16k volblocksize

So it is best to fit guest block sizes into ZFS block (16k) sizes:

  • mkfs.btfs options: –nodesize 16k
  • btrfs mount options: -o noatime
  • mkfs.ext4 options: -b 4096 -E stride=4,stripe-width=8
  • ext4 mount options: -o noatime,user_xattr