I've never installed/configured a Hyper-V host and VMs before, so pls bear with me:
I have a single Hyper-V host with Windows Server 2019 Datacenter as a host OS.
I’m planning on virtualising the following roles:
- AD / DNS (Windows Server 2019 Datacenter VM)
- Application server (Windows Server 2019 Datacenter VM)
- File server (Windows Server 2019 Datacenter VM)
- E-mail server (Ubuntu Server VM with iRedMail)
I have local storage (Hyper-V host) only, consisting of the following:
- 4 NVMe drives (Intel DC P4510 2.5″ 1TB) connected to an HBA (Supermicro AOC-SLG3-4E4T)
- 6 SAS HDD (4x 6TB, 2x 8TB) connected to an HBA (Broadcom SAS 9305-16i)
With those 10 drives, I would like to create a 2-way mirrored tiered storage (NVMe + HDD) and a 3-way mirrored storage (HDD), using Storage Spaces.
I’m puzzled on how to present that storage as shared storage with a virtualised file server on the Hyper-V host. The possibilities I see are:
- creating the Storage Spaces on the Hyper-V host, on which I would store large VHDX virtual disks which would then be attached to the file server VM and offered by this VM as shared storage to AD users. However, if I would put such a VHDX file on the 2-way mirrored tiered storage, the file would either be on the fast tier (NVMe) or on the slow tier (HDD). So when writing to the shared storage (the VHDX file), I would not have the advantage of writing first to the fast tier and then data (as they get ‘cold’) being moved to the slow tier.
- creating the Storage Spaces on the file server VM, passing through the physical disks to the VM. However, I read everywhere that this approach is not recommended and should be avoided.
Or a third possibility could be to not virtualise the file server role and to install that role on the Hyper-V host, even if it’s not best practice to install other roles than Hyper-V on the host?
Thanks in advance for any pointers in the right direction.