ZFS or LVM: the decision made at install time that is hard to undo

ZFS gives data integrity and snapshots and asks for memory in return. LVM is light and familiar but does not notice corruption on its own. The choice usually comes down to memory and expectations.

AtlasPVE ·

This entry answers

  • proxmox zfs vs lvm
  • difference between lvm-thin and zfs
  • proxmox local vs local-lvm
  • how much ram does zfs need
  • which storage to choose in proxmox

This decision is made during installation, and changing it later means moving the machines. So it pays to know up front what each side brings.

What ZFS brings

ZFS keeps a checksum for every piece of data. If the checksum does not match on a read it notices the error, and on a redundant layout it takes the correct copy from the other side and repairs it quietly. That is real protection against silent corruption, and no other layer offers an equivalent. Snapshots, compression and pool level redundancy come along with it.

What ZFS asks for

Memory. ZFS uses memory for its read cache, and on a machine with little memory it both runs slower itself and leaves less for the virtual machines. Some decisions taken while creating the pool also cannot be changed afterwards, sector alignment among them. In short, ZFS wants to be set up well.

What LVM brings

LVM is light, familiar and asks for almost no memory. With a thin pool it can take snapshots too. On small machines, and where memory is precious, it is a reasonable choice. In return it does not notice silent corruption: if data comes back wrong, nothing tells you it came back wrong.

How to choose

If memory is tight and the machine is small, LVM runs with fewer surprises. If data integrity is the point for you, or if you want redundancy as the number of disks grows, ZFS is the right investment. When deciding, ask this: will data live on this server whose loss would be unacceptable? If the answer is yes, the memory ZFS asks for is worth giving.

Sources

Proxmox's own documentation. In English, and it has the final word on this subject.

Related entries

How does this look inside Atlas?

Go to the product page