I need to prepare to implement resource pools on my ESXi 5.1 DRS clusters. We need to decide which virtual machines have priority over others. This is a senstive issue because it ties back to which business units applications are more important than other business units. In one sense, I know that a production SQL Server is more important than a Windows 7 Test VM. But when I have a cluster full of only SQL Servers, deciding which VMs get priority in contention means that I need:
techincal information:
and I also need
business information:
Once I know BOTH the technical and the business information, I have to take both into account when assigning VMs to resource pools and setting share values, reservations, limits, etc.
Then I need to justify the solution as well as possible and show my technical solution matches what managers have defined as goals.
Can someone advise as to the process of doing this-
Thanks for input
I can offer some guidance for some of your points. So, let's break down what you need:
Technical
Business:
Now I'll offer some general guidance. Just because an application is "Critical" does not necessarily mean it needs more performance. That is where your baseline gathering comes in. If an application is "Critical" there are generally two things that can impact the application.
I hope this helps. Good luck on your project.
-----------------------------------------
Don't forget to mark this answer "correct" or "helpful" if you found it useful (you'll get points too).
Regards,
Harley Stagner
VCP3/4, VCAP-DCD4/5, VCDX3/4/5
Website: http://www.harleystagner.com
Twitter: hstagner
I can offer some guidance for some of your points. So, let's break down what you need:
Technical
Business:
Now I'll offer some general guidance. Just because an application is "Critical" does not necessarily mean it needs more performance. That is where your baseline gathering comes in. If an application is "Critical" there are generally two things that can impact the application.
I hope this helps. Good luck on your project.
-----------------------------------------
Don't forget to mark this answer "correct" or "helpful" if you found it useful (you'll get points too).
Regards,
Harley Stagner
VCP3/4, VCAP-DCD4/5, VCDX3/4/5
Website: http://www.harleystagner.com
Twitter: hstagner
This is great info - thanks. I was wondering if you also had any suggestions about how I should go about tracking the results of my research?
So I really need to know a lot of information about each individual VM:
-Application that runs on it
-How important that application is to the business
-What other VMs are dependent on this application (i.e. a model-view-controller application design with 3 vms that are interdependent)
-How important that application is relative to other applications in the business if one has to have priority in contention
-It may be a critical application from a business standpoint, but is it latency senstive enough from a technical standpoint to demand a lot of shares or a guaranteed reservation?
-If I determine that it is critical to the business AND is latency sensitive and demands actual shares in vSphere to enforce its priority - do I need CPU shares, CPU reservations, Memory shares, Memory reservations, Disk/SIOC shares, etc. Is it memory, CPU and disk that I need to enforce or just one or two of those?
So after I find out all of this information, I've got to record it so 6 months later I can refer back to it or someone else can reference it. What is the best way to track this kind of information - for example: What software application should I use?
Should I create a "point system"? For example, I have a really important, semi-important, and not-so important set of VMs to the business. Using a scale of 1 to 10, 10 being most important, let management rank each software application to the business. Then taking that information, go and map all VMs that are dependent on these VMs. Then every VM in the environment has an initial "business rank" number.
Then I go and look at the technical side. I see how latency sensitive the applications are that were ranked "critical" from the business perspective. I create a technical importance score for each vm from 1 to 10.
Once I have the business criticality score and the latency sensitivity score, I combine them somehow to come up with a share value for each VM. I record each VMs score. Then I create resource pools that group VMs with scores that are similar.
Then I go back and account for VMs that need guaranteed performance and a reservation as opposed to just high shares.
I'm brainstorming - but I'm trying to come up with a systematic way to get to hard numbers such as resource pool share values out of raw business requirements and application benchmarks. Any other thoughts or enhancements to my plan or has anyone already systemitized this process?