Avoiding Performance Bottlenecks in Hyper V
-
Upload
luis-jesus-malaver-gonzalez -
Category
Documents
-
view
224 -
download
0
Transcript of Avoiding Performance Bottlenecks in Hyper V
8/12/2019 Avoiding Performance Bottlenecks in Hyper V
http://slidepdf.com/reader/full/avoiding-performance-bottlenecks-in-hyper-v 1/8
Avoiding Performance Bottlenecks in Hyper-VVirtualization Management White Paper
1
© 2012 VKernel Corporation http://www.vkernel.com
Avoiding PerformanceBottlenecks in Hyper-VIdentify and eliminate capacity related performance
bottlenecks in Hyper-V while placing new VMs for
optimal density and performance
WHITEPAPERBY CHRIS CHESLEY
8/12/2019 Avoiding Performance Bottlenecks in Hyper V
http://slidepdf.com/reader/full/avoiding-performance-bottlenecks-in-hyper-v 2/8
Avoiding Performance Bottlenecks in Hyper-VVirtualization Management White Paper
2
© 2012 VKernel Corporation http://www.vkernel.com
Overview
Managing how you share CPU, memory and storage resources is the key to avoidingperformance problems in any virtual environment. Hyper-V environments are nodifferent. This paper will cover some lessons learned in years of experience managingcapacity resources in a VMware environment and how those same techniques can beapplied to a Hyper-V environment.
Since many of you are already familiar with VMware, we will be comparing Hyper-V toVMware. We will cover how to manage resources (CPU, memory storage and disk I/O)to obtain the maximum safe VM density, how to avoid performance bottlenecks, andhow to compute how much capacity there is to add virtual machines for each host andcluster.
Hyper-V Management Tools
There are a few different applications available to the administrator to assist inmanaging Hyper-V.
Hyper-V Manager
The Hyper-V Manager (HVM) is installed when you install the Hyper-V role in Windowsserver 2008 or it can also be installed separately on any desktop or server. The Hyper-Vmanager provides administrators with the ability to build, configure and destroy virtualmachines, but does not allow clustering and other features that are available in theVirtual Machine Manager (VMM). You can manage multiple Hyper-V hosts from a singleHyper-V Manager.
Virtual Machine Manager
The Virtual Machine Manager (VMM) is a separate application sold by Microsoft and iscomparable to VMware’s VCenter. It provides the ability to build, destroy and configurevirtual machines as well as offering the ability to move virtual machines between Hyper-V hosts. VMM also has the ability to receive ProTips from Systems Center that will alertadministrators to events or issues in their virtual environment.
System Center Operations Manager
System Center Operations Manager (SCOM) allows you to add management packs tomonitor virtual machines and hosts. There are management packs for Hyper-V that will
collect and report on resources used by the Hyper-V guests and hosts. VKernel alsohas a management pack that is loaded into SCOM. This will give you consolidatedinformation from all your hosts and guests that are running in both VMware and Hyper-Vas well as the ability to send Pro Tips to SCOM or VMM.
http://www.vkernel.com/products/CapacityAnalyzerwithHyper-V/
8/12/2019 Avoiding Performance Bottlenecks in Hyper V
http://slidepdf.com/reader/full/avoiding-performance-bottlenecks-in-hyper-v 3/8
Avoiding Performance Bottlenecks in Hyper-VVirtualization Management White Paper
3
© 2012 VKernel Corporation http://www.vkernel.com
Fig. 1 Hyper–V’s Virtual Machine Manager
Differences between VMware and Hyper-V
There are also some significant differences between Hyper-V and VMware that theadmin should be aware of.
Over-committed resources
One of the big differences between VMware and Hyper-V is the ability to over commit
memory.
In VMware you can assign more memory to virtual machines than physically exists onthe host or resource pool. The idea is that the virtual machines will not use all theirassigned resources at the same time. Assigning more memory than is available canincrease your guest density (more guests running on the same hardware. More VMs onthe same physical hardware means a better return on what you paid for the hardware
8/12/2019 Avoiding Performance Bottlenecks in Hyper V
http://slidepdf.com/reader/full/avoiding-performance-bottlenecks-in-hyper-v 4/8
Avoiding Performance Bottlenecks in Hyper-VVirtualization Management White Paper
4
© 2012 VKernel Corporation http://www.vkernel.com
and virtualization software.
Hyper-V will not allow the administrator to over allocate memory. While this may limityour ability to achieve higher density, it also means you can always count on theprovisioned memory to be available. There is still a lively debate going regarding
memory over committing and if this is beneficial or problematic in a virtual environment.
You can over commit CPU in both VMware and in Hyper-V.
Over-committed resources
VMware has memory and CPU metrics that are not available in Hyper-V. Specificallythese are CPU ready, memory ballooning and swapping. CPU ready is a measurementof how much time a virtual processor has to wait for a physical processor to run on.Memory ballooning and swapping are both needed by VMware since they allow memoryover committing and need a way of taking memory from one guest and giving it toanother. It is also needed to give more memory to guests than is available on
the host.
DRS and TPS
Distributed Resource Scheduler (DRS) and TPS (Transparent Page Sharing) are onlyavailable in VMware. DRS will either move virtual machines from one host to another orwill make recommendations that you move them based on resources that are used andavailable on the hosts. TPS is a method where VMware will recognize memory pagesthat are used by multiple systems and not load duplicate pages. Instead it will load thememory pages once and then provide pointers to all the guests using those pages. Itcan offer up to a 30% savings in memory utilization if an administrator pays attention towhat OS and applications are running on particular hosts and groups them together.
HA
High Availability (HA) is a feature of VMware where they will restart guests on a differenthost if the system they are on goes down or loses contact with VCenter (VMware’smanagement interface). Microsoft Hyper-V servers can be configured to be part of aMicrosoft failover cluster which offers the same functions as HA from VMware.
Capacity Management in a Virtual Environment
Managing the balance between performance and capacity utilization is only made moredifficult by virtualization. In a traditional server infrastructure each server or application
has its own memory, processors and sometimes storage so it could use whatever ofthose resources was needed. Even though virtualization allows you to share theseresources, there is still a physical limit to the amount of CPU, memory, storage and diskI/O that is available.
In a virtual environment, there are more levels where capacity bottlenecks can occur:
• You can have a memory bottleneck on a host or storage issue for a cluster;
8/12/2019 Avoiding Performance Bottlenecks in Hyper V
http://slidepdf.com/reader/full/avoiding-performance-bottlenecks-in-hyper-v 5/8
Avoiding Performance Bottlenecks in Hyper-VVirtualization Management White Paper
5
© 2012 VKernel Corporation http://www.vkernel.com
• Bottlenecks can occur when a server takes up more resources than planned;
• Performance can be affected if a host or cluster is overloaded and there is notenough memory
• or CPU to go around;
• One guest can affect the performance of other virtual machines on that host or
cluster.
Since most virtual server infrastructures are highly dynamic, the secret to success isactive capacity management. Specifically, you have to compare the amount of CPU,memory and storage allocated to what it is actually consumed.
The difficulty with actively managing capacity in Hyper-V is that the available tools onlyshow CPU utilization for a specific host or VM. Obviously, the more VMs you have, theless able you are to continuously check whether you’ve outgrown the assumptions youmade when you provisioned a server.
Fig. 2: VKernel’s Capacity Analyzer automates capacity utilization analysis
A much better way of seeing this information is to use a solution that sees the entirevirtualized environment and automatically does that comparison for you. A solution thatwill allow you to look at all the statistics in one screen and then show you anything that
is not healthy is much easier to use then looking at the information one statistic and onelevel at a time.
This is what VKernel’s products do http://www.vkernel.com
Memory, CPU, storage and disk I/O are the important statistics to keep track of in avirtual environment.
8/12/2019 Avoiding Performance Bottlenecks in Hyper V
http://slidepdf.com/reader/full/avoiding-performance-bottlenecks-in-hyper-v 6/8
Avoiding Performance Bottlenecks in Hyper-VVirtualization Management White Paper
6
© 2012 VKernel Corporation http://www.vkernel.com
Keeping on top of capacity utilization pays back when it comes to these commonmanagement issues:
• Avoiding performance bottlenecks: Memory is usually the first bottleneck that isreached followed by CPU or disk I/O issues. Your infrastructure needs to bemonitored to make sure each element is getting all of the resources allocated to
it. Each resource needs to be monitored to make sure they are not at anextremely high level of utilization. For example a guest that is using 100% of thememory allocated to it is probably having performance issues.
• Getting higher numbers of VMs on servers/storage: On the other hand, a virtualmachine that is only using 40% of the resources allocated to it and is running wellis an opportunity to ‘right size’. If you can track historical utilization levels andknow peak usage is 40% of what you allocated, you can reduce the amount ofresources allocated to existing VMs and fit more VMs on the same machine.
• Figuring out where to place new VMs: Looking at resource utilization at the hostor cluster level is also an excellent way to determine where to place new virtualmachines. Without visibility into capacity utilization, you can only guess at what
capacity is available and which resource is the constraining factor in adding moreVMs. Since our biggest fear is causing a performance impact on the other guestson that host, we tend to under estimate how many VMs we can fit. This initialplacement is more important in Hyper-V than in VMware since there is noDistributed Resource Scheduling in Hyper-V that will move virtual machines toanother host if there are performance issue or if another host is has moreavailable resources.
Managing Memory
Memory tends to get used and then store information for fast retrieval later so theutilization for memory tends to be higher than CPU and is typically the first bottleneck
that virtual environments run into. It is important to track memory consumed todetermine if a virtual machine is getting enough resources or if the guest if having aperformance issue. A consistent utilization of at or near 100% may indicate that thevirtual system may benefit from more memory.
Managing CPU
CPU’s are the main workhorses of both virtual and physical servers. It is important thatadministrators keep a close eye on CPU to make sure that there is enough to go aroundand that the virtual processors get access to a physical processor when they need it.Important metrics to look at are CPU consumed as well as percent utilized by the guest.
Managing Disk I/O This is a very important measurement for administrators to keep track of in a virtualinfrastructure. There are many types and speeds of storage so there are no overallthresholds that fit every environment. Important metrics to look at are disk latency,queue latency and throughput. Latency is a measurement of how long a disk commandtakes to return once it has been given and is measured in milliseconds. Queue latency
8/12/2019 Avoiding Performance Bottlenecks in Hyper V
http://slidepdf.com/reader/full/avoiding-performance-bottlenecks-in-hyper-v 7/8
Avoiding Performance Bottlenecks in Hyper-VVirtualization Management White Paper
7
© 2012 VKernel Corporation http://www.vkernel.com
tracks how long a command has to wait before it is executed with the lower the valuethe better. Throughput is how many read and write commands have been executed.
An over loaded LUN or disk can be identified using these metrics and looking at thedata store as a whole and is measured on a per host basis.
Managing Storage
This is important item to keep an eye on but tends to be more static than the othersunless new virtual machines are being created or deleted.
Computing Capacity Availability
Capacity availability is a measure of how many virtual machines can be safely added toa host or cluster without overloading any of the shared resources. It is usually stated asthe number of virtual machines of a particular size that can safely be run.The calculation requires the following steps:
• Look at each host and cluster, determine what resources are used for CPU,storage, disk I/O and memory then determine how much is unused at that level(host or cluster).
• Next you need to look at all the virtual machines running on the host or cluster,and then compute an average or desired size of the virtual machines that you aregoing to be adding.
• The next step is to determine what a safe level of utilization for each resource isin your environment. For example, 85% memory utilization may be a reasonablethreshold for this cluster or host.
• The final step is to compute how many more of the calculated sized virtualmachines you can fit before you hit the target utilizations.
Maximum Size Method
Some administrators prefer a more conservative calculation when computing capacity.One easy way of doing this is to use maximum values when coming up with acalculated VM size. To do this you look at all the virtual machines running on the host orcluster and determine which has the highest value, then use the highest values forCPU, memory, storage and disk I/O when making your capacity availabilitycalculations.
Some administrators exclude storage from these calculations because they add LUNswhen needed.
The Importance of VM Placement in Hyper-VThe initial placement of virtual machines is very important in Hyper-V since there is noDRS functionality that will move virtual machines around based on resource availability.The best way of doing this is to look at the average and peak utilization for all theresources for each host and cluster, then determine what resources the new virtualmachine will need. After this you can then decide on the best host to deploy the virtualmachine onto. The capacity availability of the host should also be calculated and
8/12/2019 Avoiding Performance Bottlenecks in Hyper V
http://slidepdf.com/reader/full/avoiding-performance-bottlenecks-in-hyper-v 8/8
Avoiding Performance Bottlenecks in Hyper-VVirtualization Management White Paper
8
© 2012 VKernel Corporation http://www.vkernel.com
taken into account as well as the administrator’s knowledge of what applications arerunning on the host or cluster.
Fig. 3: VKernel’s Capacity Analyzer automates Capacity Availability calculations
VKernel automates the above these availability calculations and automatically providesa Capacity Availability Map. http://www.vkernel.com/products/CapacityAnalyzer/ Conclusion
An effective approach to capacity management can help you easily determine capacityavailability and where to place new VMS while avoiding capacity related performancebottlenecks. VKernel’s products automate the capacity management process. See moreat http://www.vkernel.com/products /