What is the best file system for RAID1 nvme SSD?

berlin2123

New Member
Jun 29, 2024
5
0
1
I want to using two U.2 pcie Nvme SSD as the fast disk of tens of VMs ( disk Image ) in one PVE host. In order to minimize the risk of “data loss due to disk corruption”, I would like to use raid 1.

Then, what is the best filesystem of raid1?

ZFS with raid1.
or
F2FS on MDRAID with raid1.

I found an article online comparing the performance of zfs vs f2fs. The performance of zfs in that test was pretty poor overall. I wonder if any of the pve users have done the test?

Note: The pve system is installed inside other disks, and those fast Nvme SSD are newly accessed. So, no need to be concerned about the convenience of installing pve's operating system.
 
Last edited:
Hello,

we recommend ZFS for such usecases. While the performance is not the best, it is the best alternative for keeping your data safe if one follows good practices, e.g. using ECC memory, enterprise disks, and not using hardware raid controllers (or at least setting them to HBA mode).
 
I want to using two U.2 pcie Nvme SSD as the fast disk of tens of VMs ( disk Image ) in one PVE host. In order to minimize the risk of “data loss due to disk corruption”, I would like to use raid 1.

Then, what is the best filesystem of raid1?

ZFS with raid1.
or
F2FS on MDRAID with raid1.

I found an article online comparing the performance of zfs vs f2fs. The performance of zfs in that test was pretty poor overall. I wonder if any of the pve users have done the test?

Note: The pve system is installed inside other disks, and those fast Nvme SSD are newly accessed. So, no need to be concerned about the convenience of installing pve's operating system.

You sound like you can set up your own MDRAID, I would do so, especially with U.2 drives and looking for performance, avoid any copy-on-write filesystem. The only thing to be aware of with PVE in this scenario is:
https://bugzilla.proxmox.com/show_bug.cgi?id=5235
 
Do you mean setting the cache mode of mdraid to "write-back" or "write-through"?
I checked the docs of mdraid, it seems only raid4/5/6 has that cache options, but not raid1. So, no need set any special for raid1?
such as:
Bash:
mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/nvme0n1p1 /dev/nvme1n1p1

The issue pointed out there specifically concerns VMs, so the settings is for QEMU.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!