In this article I will explain the hidden dangers when adding a resource pool with default settings to a DRS cluster, but first off all kudos to my famous virtualization friends Duncan Epping, Frank Denneman and Bouke Groenescheij. They already have written several great articles about resource pools, shares and reservations. You could ask yourself is there anymore to say about using resource pools? Well there is. I often see production environments where people have added two or three resource pools just for fun saying; there’s no reservation or limit on it so it doesn’t matter. Well they’re just plain wrong! On top of that, they even use resource pools as folders to group their virtual machines. Let’s look at an example.
In my home environment I’ve created two resource pools and one vApp. I didn’t adjust the settings and left everything default. I’ve added 8 virtual machines to recourse pool “test 1”. The two resource pools and the vApp are sibling with three virtual machines in the root resource pool. Take a close look at the ”% Shares” column in the “Resource allocation tab”. The sibling virtual machines will get 18% of the resources when there’s contention. The vApp will get 26%, so that’s 13% for vCenter and 13% for SQL2008. The virtual machines within resource pool “test 1” will have to divide 26% among 8 virtual machines so that’s 3,25% per virtual machine. The sibling root resource pool virtual machines will get 6% each. So don’t use resource pools for cosmetic reasons, you better use virtual machine folders instead. As long as there’s no contention, there’s no problem. But as soon as you reach the max the resources might be divided in a way you didn’t expect.