Performance Tuning for Windows Guest OS IT Pro Camp Presented by: Matthew Mitchell Confidential © 2010 VMware Inc. All rights reserved Agenda Introduction Understanding VMware Performance Best Practices of HA and DRS with Windows Guests Virtual Machine Build out Windows Guest OS Tuning (DEMO) Monitoring with vCenter Operations Manager (DEMO) 2 Confidential Introduction 3 Confidential Understanding VMware Performance 4 Confidential Maximum Scalability and Performance with VMware vSphere® 5 % of Applications Application’s Performance Requirements 5 CPU 95% of Apps Require ESX 1 ESX 2 VMware Infrastructure 3.0/3.5 VMware vSphere 4 VMware vSphere 5.5 1 to 2 CPUs 1 vCPUs 2 vCPUs 4 vCPUs 8 vCPUs 64 vCPUs 2GB per VM 3.6GB per VM 16/64GB per VM 256GB per VM 1,000GB per VM Memory < 4GB at peak Network <2.4Mb/s <.5Gb/s .9Gb/s 9Gb/s 30Gb/s >36Gb/s IOPS < 10,000 <5,000 7,000 100,000 300,000 1,000,000 Confidential Oracle DB Example VM VM VM VM 32 vCPU 1TB 1,000,000 IOPS 36Gb/s Oracle DB 2–4 CPU Oracle DB 4% utilized 4–8GB Oracle DB 50% utilized 1200 IOPS CPU Memory Disk IO Source: VMware Capacity Planner™ analysis of > 700,000 servers in customer production environments 6 Confidential Oracle DB 2 MB/S Network IO Best Practices 7 Confidential Best Practices Use jumbo frames if possible • Using default settings all vMotions succeeded, however some database failover was observed. By enabling jumbo frames on vmkernel ports vMotions completed with no database failover using default cluster settings, if jumbo frames are not possible consider adjusting the cluster heartbeat interval. Increase Cluster Heartbeat Interval • Windows Failover Clustering default heartbeat interval is 1000 ms, consider increasing to 2000 ms to avoid cluster failover due to application stun during vMotion Dedicated vMotion Interface • Avoid traversing multiple networking devices and sharing bandwidth with management traffic by dedicating an interface for use by vMotion traffic, place other interfaces as stand-by to provide redundancy Use DRS Rules • Create VM to Host “should run on” rules to keep virtual machines on preferred hosts, but allow to run on non-preferred hosts if required • Create anti-affinity rules to keep clustered virtual machines on separate hosts 8 Confidential Troubleshooting Steps 9 Confidential Virtual Machine Build 10 Confidential VMware ESX/ESXi Architecture 11 Confidential Virtual Machine Monitoring 12 Confidential Virtual Machine Build vCPU • CPU Sockets vs. CPU Cores • Lower overhead with more vSockets than vCores per Socket • Only use vCores when Windows Licensing does not allow for multi-Socket Memory • Start small base memory needs on the OS and Application • If SSD LUN is available create Virtual Disk for the Windows Swap file there. Video • For VDI or Terminal Services you can use the custom settings or if Hardware version 9 you can enable 3D support • If 3D Support is enabled without Graphic Accelerators Present you will increase ESXi CPU load 13 Confidential Virtual Machine Build SCSI Controllers • There are 4 types of SCSI controllers: • BusLogic Parallel –This is used mostly for Physical to Virtual Migrations.. If you have this controller it is best to install the latest vmware tools then change to the LSI Logic SAS controller. Also this is the default for Windows 2000 Server • LSI Logic Parallel – This is the standard boot controller for Windows 2003, Vista, and Linux VMs • LSI Logic SAS – This is the Default for Windows 2012, Windows 2008, and Windows 7 • VMware Paravirtual – High Performance, High I/O (2000 IOPs and greater) with Lower CPU cost. This is your Tier 1 Controller for Tier 1 Apps running on Win2K3, Win2K8 and 2012 as well as RHEL 5. 14 Confidential Virtual Machine Build Network Adapters • Flexible NIC – This NIC is a P2V Migrated virtual machine configuration. Will cause high CPU overhead. • E1000 NIC – This is the NIC for older Operating Systems and increases the CPU Load on a Host • E1000E NIC – This is the Default NIC for Most Windows Based systems for Win2K8, Windows 7, and Windows 2012. Also increase CPU load on the Host • VMXNET 3 – This is you High Performance NIC there is CPU offload to the Physical NICs as well.. Only issue is the Operating System will not recognize this NIC until Vmware Tools are Loaded. Floppy Drives • These are created by default if you do not have a need for these remove for better performance of the virtual machine USB Controller • Only install or enable if required for 3rd party applications that have a Dongle Key.. Otherwise leave out 15 Confidential Virtual Machine Build Virtual Machine Options • Memory/CPU Hotplug – Windows 2008 and Windows 2012 operating Systems allow for this Feature SwapFile Location • This is normally set to Default which stores the Swap File with the virtual machine.. This makes for a Faster vMotion ability.. If SATA LUNs are presented it is recommended that Swap Files are located there and Monitored closely.. 16 Confidential Non Uniform Memory Access (NUMA) Best Practices 17 Server Node Size 4 Socket / 4 Core with 64 GB RAM 4 vCPUs with 8 GB RAM 4 2 Socket / 6 Core with 64 GB RAM 6 vCPUs with 32 GB RAM 2 4 Socket / 2 Core 2 vCPUs with 64 with 128 GB RAM GB RAM 4 Confidential Number of Nodes