SQL Server 2019 on PowerEdge R640 vSAN Ready Nodes: Using VMware vSAN 7 and Red Hat Enterprise Linux 8
Best practices include:
- 100 percent allocation for volumes—Use this setting while deploying volumes to enable thick provisioning, which eliminates the need to extend the space that is consumed by the volumes while additional data is written. It also prevents the performance impact of using thin provisioning.
- Multiple disk groups for the setup—Use additional disk groups for vSAN for gains in storage performance. There are multiple considerations when deciding the storage layout. For more information, see Understanding vSAN Architecture: Disk Groups.
- Number of stripes/objects—The maximum number of stripes per object is 12. We used this value for our most performant volumes storing active database data. We also used a lower value of 1 for the lower impact volumes such as the operating system and backup.
- Tuned-adm Profile for Red Hat Enterprise Linux—Enable setting in the mssql tuned-adm profile for high-performance gains for SQL Server deployments on Red Hat Enterprise Linux 8.0. For information about how to enable and use this setting are available Performance best practices and configuration guidelines for SQL Server on Linux.
- High-performance settings—Enable high-performance settings across the stack, including the server, hypervisor, and operating system layer.
- Network segregation—Create multiple fault domains and isolate traffic with dedicated resources to prevent saturation of traffic in lanes that cannot keep up with demand. It is especially important for HCI deployments as networks can create bottlenecks for the storage traffic.
- Resource reservation for SQL Server—Reserve memory and CPU for the SQL Server VMs to prevent ballooning issues.
- Distributed Resource Scheduler (DRS)—Use DRS to set VM-VM affinity rules to keep low resource VMs (like those used for testing and development) and resource- intensive VMs (like VMs hosting OLTP production databases) on the same host. Similarly, use VM-VM anti-affinity rules to segregate multiple resource-intensive VMs across different hosts. See Introduction to VMWare DRS and VMware HA clusters for more information.