What should take primary responsibility for data integrity? Theoretical discussion.

bfh42

Member
Dec 26, 2021
9
0
6
64
I am new to proxmox and following what online advice that I can. I am using the opportunity to learn more about high end server administration so that I can understand better the problems and advice from my programmers.

Online most people using proxmox install either of, truenas or unraid, or both. I have tried both for the sake of learning. To attach disks to either requires that the raw disk be passed through to the vm. I have been through the process of doing it, and it is simple but time consuming. From my understanding it would not be difficult to include the option in proxmox.

But, it begs the question of why is the nas software necessary. Does the nas software provide better data protection than proxmox? Or do they provide more control and reporting than proxmox? I do understand that proxmox is a hypervisor and not a nas, but from a management point of view, the hypervisor separates the hardware from the software and therefore should look after the hardware in the best possible manner.

Of course, it is a grey area on what is responsible for the data created by software residing on hardware. Also, should the hardware bear load of data integrity?

For me, I obviously don't understand the underlying issues, but I would think that it is reasonable that proxmox takes full control of data integrity, or provide an easier process for other software/os to do it.

What do other forum users think?
 
Online most people using proxmox install either of, truenas or unraid, or both.
This is mostly home users. Enterprise users generally have a separate NAS or SAN or they use something like Ceph.

But, it begs the question of why is the nas software necessary.
It isn't necessary. If you have a standalone PVE server there is no need for a NAS. PVE is a hypervisor. It runs virtual machines and containers. This is orthogonal to what a NAS does but the two concepts work well together.

It is only if you want a shared filesystem like CIFS or NFS that you need NAS functionality. But you don't need anything like TrueNAS unless you prefer it. Anyone can make a file server based on Debian or Red Hat or whatever your favorite Linux is, or one of the BSD's, or even Windows if you're into that sort of thing. All popular operating system distributions have everything you need in their archives, you just have to know how to install and configure it.

Software like TrueNAS does a few things for you:
  • Simplified administration. You ideally don't have to edit files to set it up. Usually there is a nice web GUI.
  • Integrated authentication and authorization that is more approachable than raw Kerboros and LDAP.
  • Extra features like media sharing via DLNA, maybe Docker support, etc.
Basically a pre-done NAS removes the need to manually configure your file server and associated protocols. They are still there of course but you don't need to learn nearly as much up-front and it is easier to maintain for non-experts.

Does the nas software provide better data protection than proxmox? Or do they provide more control and reporting than proxmox?
None of the above. A NAS provides a convenient way to share files among multiple PVE instances or with entirely separate network devices.

Home users for example might want to share media with other devices and provide an easy way to back up said devices. People with PVE clusters need shared storage, which a NAS can provide (but usually this will be a separate high-performance one, not a VM). That is why people set up a NAS. It has nothing to do with data integrity.

A NAS serves files using a file-sharing protocol like CIFS or NFS. Data protection is the responsibility of the underlying file system; ext4, xfs, ZFS, whatever it may be, along with authentication and authorization protocols like Kerberos.

For me, I obviously don't understand the underlying issues, but I would think that it is reasonable that proxmox takes full control of data integrity, or provide an easier process for other software/os to do it.
PVE uses ZFS which provides data integrity but it isn't a shared filesystem. If you want a shared filesystem then you need something to do that.
 
  • Like
Reactions: Dunuin
This is mostly home users. Enterprise users generally have a separate NAS or SAN or they use something like Ceph.


It isn't necessary. If you have a standalone PVE server there is no need for a NAS. PVE is a hypervisor. It runs virtual machines and containers. This is orthogonal to what a NAS does but the two concepts work well together.

It is only if you want a shared filesystem like CIFS or NFS that you need NAS functionality. But you don't need anything like TrueNAS unless you prefer it. Anyone can make a file server based on Debian or Red Hat or whatever your favorite Linux is, or one of the BSD's, or even Windows if you're into that sort of thing. All popular operating system distributions have everything you need in their archives, you just have to know how to install and configure it.

Software like TrueNAS does a few things for you:
  • Simplified administration. You ideally don't have to edit files to set it up. Usually there is a nice web GUI.
  • Integrated authentication and authorization that is more approachable than raw Kerboros and LDAP.
  • Extra features like media sharing via DLNA, maybe Docker support, etc.
Basically a pre-done NAS removes the need to manually configure your file server and associated protocols. They are still there of course but you don't need to learn nearly as much up-front and it is easier to maintain for non-experts.


None of the above. A NAS provides a convenient way to share files among multiple PVE instances or with entirely separate network devices.

Home users for example might want to share media with other devices and provide an easy way to back up said devices. People with PVE clusters need shared storage, which a NAS can provide (but usually this will be a separate high-performance one, not a VM). That is why people set up a NAS. It has nothing to do with data integrity.

A NAS serves files using a file-sharing protocol like CIFS or NFS. Data protection is the responsibility of the underlying file system; ext4, xfs, ZFS, whatever it may be, along with authentication and authorization protocols like Kerberos.


PVE uses ZFS which provides data integrity but it isn't a shared filesystem. If you want a shared filesystem then you need something to do that.
Thank You for your thoughts and time. You have enlightened me to the necessity for the filesharing considerations. And you made the statement that the Nas and PVE work well together. But, if that were totally true then proxmox would provide a simple disk pass through function so that NASes could take direct control of the hdds. I know that there's a work around, but it should not be necessary.

While there was a lot of reasons for necessity of NASes, and clarification of the pve hypervisor, I am also asking is that the optimum for data integrity. I lean towards the hardware being the most responsible item for data integrity. Ie., hardware raid 6 using zfs with hot standby disks. But some online sites are in favour of software raid using Nas or Das. How many users agree with them.

I want users to give reasons why they choose a particular setup when considering data protection and integrity.
 
But, if that were totally true then proxmox would provide a simple disk pass through function so that NASes could take direct control of the hdds.
I disagree :)

Disk pass through is a hack! It undermines and disables the possibility to move a service (a VM) from one node to the other.

If you need a (large) NAS then put it on real hardware; small instances may live with normal virtual disks. Everything else is for playing around, not for a stable business.

Disclaimer: yes, this is a brutal statement and there is a twilight zone in between - so it is purely my personal opinion ;-)
 
  • Like
Reactions: B.Otto
That is why people set up a NAS. It has nothing to do with data integrity.
I store all important stuff on the TrueNAS because otherwise my Windows machines would need to use NTFS and I trust ZFS way more with its data integrity features that all Windows filesystems (except for ReFS that that my Win10/11 Pros don't support) are lacking.

But, if that were totally true then proxmox would provide a simple disk pass through function so that NASes could take direct control of the hdds.
You don't passthrough the real disk when using "qm set ..." for disk passthrough. Your VM isn't directly accessing the physical HDD. The VM is still working with virtual disks that are mapped to the physical disk instead if using a LV/thin-LV/zvol for this.
Only option for a VM to directly access the physical disk, without virtualization in between, is to PCI passthrough a HBA/raid card or NVMe SSD.

Also don't forget the redundant PSUs, Enterprise SSDs with PLP, ECC RAM and UPS for data integrity.
 
Last edited:

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!