Deployment for Hyper-V
Overview
This article outlines the requirements for deploying the Delphix Engine on Hyper-V (including supported versions and instance configurations), as well as recommended configuration parameters for optimal performance.
Contact a Delphix representative to request this capability. Delphix will assist in assuring that all Hyper-V requirements are met to successfully run a Delphix Engine with the most appropriate configuration for the use case.
The Delphix Engine is intensive both from a network and a storage perspective. If the Delphix Engine competes with other virtual machines on the same host for resources it will result in increased latency for all operations. As such, it is crucial that your Hyper-V host is not over-subscribed, as this eliminates the possibility of a lack of resources for the Delphix Engine. This includes allowing a percentage of CPU resources for the hypervisor itself as it can de-schedule an entire VM if the hypervisor is needed for managing I/O or compute resources.
Delphix disk storage capabilities are based on the backend storage provided. Performance, redundancy, and stability characteristics are determined by the hypervisor or Cloud provisioned storage.
Supported versions
Hyper-V Version: 10.0 and later
Virtual Machine: Gen 1 only is supported
Virtual CPUs
Requirements | Notes |
---|---|
8 vCPUs |
|
Never allocate all available physical CPUs to virtual machines. |
|
Memory
Requirements | Notes |
---|---|
128 GB vRAM (recommended) 64GB vRAM (minimum) |
|
Memory for the Hyper-V Server to perform hypervisor activities must be set aside before assigning memory to Delphix and other VMs. | Failure to ensure sufficient memory for the host can result in a hard memory state for all VMs on the host which will result in a block for memory allocations. |
Network
Requirements | Notes |
---|---|
Virtual ethernet adapter requirements. |
|
If the network load in the Hyper-V Server hosting the Delphix engine VM is high, dedicate one or more physical NICs to the Delphix Engine. |
|
SCSI controller
Requirements | Notes |
---|---|
lDE Controller for the boot drive SCSI Controller for database storage | Per Hyper-V Storage I/O Performance Tuning Guidelines; For optimal performance, it is recommended that you attach multiple disks to a single virtual SCSI controller and create additional controllers only as they are required to scale the number of disks connected to the virtual machine. For example, a VM with 3 virtual disks should distribute the disks across the single SCSI controller as follows:
For load purposes, we generally focus on the Delphix storage (data disks) and ignore the controller placement of the system disk. |
General storage
Delphix recommends using a minimum of four disks to run your Delphix Engine. One disk is used for the Delphix File System (DxFS) to ensure that its file systems are always consistent on disk without additional serialization. The other three or more equally sized disks will be used for data storage. This also enables the Delphix Engine to achieve higher I/O rates by queueing more I/O operations to its storage.
Requirements | Notes |
---|---|
Storage used for Delphix must be provisioned from storage that provides data protection. | For example, using RAID levels with data protection features, or equivalent technology. The Delphix Engine does not protect against data loss originating at the hypervisor or SAN layers. When adding additional disks to the block storage pool, storage device initialization will not occur since it is not required on this hypervisor. For more information refer to, Optimal storage configuration parameters for the Delphix engine. |
Delphix storage options
There are two types of data that Delphix stores on disk which must be stored on NTFS volumes:
Delphix Engine System Disk Storage: This is the system boot drive.
Database Storage: stores data used by Delphix objects such as dSources and virtual databases (VDBs).
Delphix engine system disk storage
Requirements | Notes |
---|---|
The Delphix Engine disks must be stored on NTFS volume(s). | The volume for the Delphix Engine System Disk Storage is often created on the same volume as the Delphix VM definition. In that case, the volume must have sufficient space to hold the Delphix VM Configuration, the virtual disk for the system disk, and a paging area if a memory reservation was not enabled for the Delphix Engine. |
The Delphix .vhdx file is configured for a 128GB system drive. | The volume where the .vhdx is deployed should, therefore, have at least 127GB of free space prior to deploying the .vhdx. |
Database storage
In addition to making sure the latest Hyper-V patches have been applied, check with your hardware vendor for updates specific to your hardware configuration. VHDXs (virtual machine disks).
Requirements | Notes |
---|---|
A minimum of 3 VHDXs should be allocated for database storage. | Allocating a minimum of 3 VHDXs for database storage enables the Delphix File System (DxFS) to make sure that its file systems are always consistent on disk without additional serialization. This also enables the Delphix Engine to achieve higher I/O rates by queueing more I/O operations to its storage. |
If using VHDXs:
| Provisioning VHDXs from isolated volumes on dedicated physical LUNs:
|
If the underlying storage array allocates physical LUNs by carving them from RAID groups, the LUNs should be allocated from different RAID groups. This eliminates contention for the underlying disks in the RAID groups as the Delphix engine distributes IO across its storage devices. | |
The physical LUNs used for NTFS volumes should be of the same type in terms of performance characteristics such as latency, RPMs, and RAID levels. | The total number of disk drives that comprise the set of physical LUNs should be capable of providing the desired aggregate I/O throughput (MB/sec) and IOPs (Input/Output Operations per Second) for all virtual databases that will be hosted by the Delphix Engine |
Disk types supported by the physical LUNs used for NTFS volumes are: Fixed-size and Dynamically expanding. | If the storage array allocates physical LUNs from storage pools comprising dozens of disk drives, the LUNs should be distributed evenly across the available pools. |