i know that for sure i will have to read a lot of documentation but i wanted to have your opinon on it.
I recently attended a VMware vSphere design workshop and one of the topic was the idea to manage RAM and CPU reservation to using RP instead of to single VM level.
Then i had discussion with VMware TAMs about the fact it is always better to use reservation to VM level and not RP.
I'm a little bit confused as i had some important VMs that needed to have reserved a certain amount of CPU and RAM.
I sized these VMs and i took the quantity that for me needed to be used by these VM and i have assigned the total to the RP i want to put this VMs into.
In this way i let the RP to manage resources and to assign them to VMs accordingly.
I do not feel confortable assigning reservation to single VMs cause i have thousands of VMs and it might not be very manageable.
I agree with VMware guys that in this way i'm not sure that this or that VM will have the memory better than another VM in the same RP.
What do you think ?
Hi i can say that RP knows very well on how to handle reources balancing resources among all of them.
How can i manage reservations (whenever needed of course) to VM levels ? if i delegate this it sounds hard to be kept under control.
I've found resource pools to work very well, as long as you know how they work, and how each setting and number of VM's in a pool can affect them.
If you find that you've reached a stable point with your VM growth, then resource pools, once configured properly, won't require as much care and feeding.
However, if you know that you are going to keep adding VM's to them, then you will have to tweak their settings to make sure the VM's inside them aren't starved for resources.
Resource pools start to come very heavily into play when the host is reaching some sort of contention for CPU or Memory resources, but can also affect things when you set limits on them as well.
Think of your host as a whole pie. Each pool is a piece of that pie. The size of the piece depends on the amount of resources or shares set for that pool/piece. Inside that piece, you only have enough room for a certain number of VM's (or bites of the delicious pumpkin pie ... my favorite.) The more VM's inside, the smaller the bites. The smaller the bites, the less satisfied you (or your VM's) are.
In such case, one solution is to cut a bigger piece of pie (give the pool more resources,) but the size of the whole pie typically remains constant .. unless you add more RAM or CPU to the whole pie (additional hosts in the cluster.)
In other words, as you add more VMs to a resource pool, you have to keep an eye on the whole pie, to see if the pool has a piece that's big enough to serve the number of VM's in it. If it isn't, the pool needs to change, or you need to take some VM's out of it.
Some people forego pools altogether, and just use the resource tab for each VM, like you said. With an environment of hundreds of VMs, this may not be a realistic approach ... especially without the heavy use of CLI or PowerCLI scripts. But, if you starting to use scripts to maintain the resource settings of individual VM's, you may as well use scripts to maintain your resource pools.
It's my belief that the trend towards recommending against the use of resource pools in general is because it's the most commonly misunderstood part of vSphere ... where a lot of customers or users are using them in a manner in which they were not intended (i.e.: as folders to provide logical separation of VMs.) In those cases, it's sometimes "easier" to just not use pools, and set resource shares, limits, and reservation at the VM level instead.