Learn how to create a resource pool within a DRS cluster of ESXi hosts or on a standalone host. Set shares, limits, and reservations. Discover how many shares each pool gets and the end result that actually impacts the VMs.
through the process of creating a set of resource pools in the vSphere web client. Okay, so here we are at the Home screen of the vSphere web client. I'm going to click on host and clusters and as you can see here, I've got and ESXi host cluster with three hosts and so, what I'm going to do Let's try something. I'm going to add a new ESXi host to my vCenter inventory. This is the fourth host that I've created for this particular lesson and we're going to try to create a resource pool on this standalone host and see how that goes. Now the reason I'm going to do this on a standalone host is just to kind of demonstrate resource pools at their very simplest. Okay, so now I have a new ESXi host. This host is not a part of my HA Cluster. So, I'm just going to go ahead and right click this ESXi host and I'm going to create a new resource pool within it. So, here's my resource pool. I'm going to call this one Normal and the reason I'm calling it normal is I'm not going to change the number of shares. The number of shares for a CPU is normal, the number of shares for memory is normal and as of this moment, I'm not going to mess around with anything related to reservations or limits. I am strictly using this as a way to configure shares. So, now I've got this resource pool that I can start to move virtual machines into. But I'm actually going to create two more resource pools here. I'm going to call this resource pool High, I'm going to give it a high number of CPU shares. I'm going to give it a high number of memory shares and then I'm going to create a third resource pool and the third resource pool is going to be called Low. Now again, none of these resource pools have any sorts of limits or reservations. I'm not using reservations or limits at all yet. I'm simply configuring shares. And so, basically what I'm creating with this resource pool structure here is a real simple high, normal and low resource pool structure. The high pool has a high number of CPU and memory shares. It doesn't have any virtual machines in it yet but it's got 8,000 CPU shares, 327,680 memory shares. My low pool has significantly less. 2,000 CPU shares, 81,920 memory shares and normal is kind of right in the middle. 4,000 CPU shares, 163,840 memory shares. So, logically what I start to think now is hey, if I've got a bunch of VMs running on this ESXi host, I'll take all of my most mission-critical VMs, I'll put them in the high resource pool. I'll take my normal VMs, I'm put them in the normal resource pool. And I'll take all the VMs that I really don't care that much about and I'll put them in the low pool and because of my share structure, what will happen is if this ESXi host starts to run low on memory, if it starts to run low on CPU, the resource pools will determine relative priority to those resources. So, let's think about what I've configured for a moment here. I have my high CPU shares in my high resource pool, my low CPU shares of 2,000 in my low CPU resource pool and my normal CPU shares of 4,000 in the normal pool. So, the end result of that is that if there is CPU contention, the high resource pool gets double the amount of CPU versus the normal resource pool and the normal resource pool gets double the amount of the CPU of the low resource pool. And that's great. But now we have to start to think about this scenario in which let's say we've got 10 VMs running in the high resource pool. My 10 really mission critical VMs. We've got 50 kind of normal VMs running in the normal resource pool to work as intended, I'm balancing out those resource pools and keeping a similar number of virtual machines in each. So, resource pools may seem really simple, they may seem really easy to configure and they might seem like a really good idea but you have to be aware of these little details, you have to really think these things through and plan them carefully and make sure that especially if you're using share values that you are keeping these resource pools relatively equally balanced. All right, so resource pools may not be quite as simple as they seem. So, a few terms that you need to be aware of. In this scenario, my ESXi host is my root resource pool. That's the resource pool that all of these other resource pools are drawing from. I can even create resource pools within a resource pool if I wanted to do so. So, within my high resource pool I could create three resource pools, maybe I want to call them one and two and three. That's fine. I can create resource pools that define how virtual machines contend for resources inside of that high resource pool. So, even though the high resource pool has 8,000 shares, I could create multiple resource pools inside that high resource pool that contend for the resources of the high resource pool. And I can kind of keep on going here. I can create resource pools within resource pools. And within more resource pools. And I just have to kind of think about my approach here because this is going to get more and more and more complex the more different tiers of resource pools that I create. The complexity continues to increase as I add more tiers to my resource pools. So, let's go back and revisit my cluster here. Remember I tried to right click on this guy and I tried to create a resource pool but it was grayed out. Why is that? Let's go ahead and click on my cluster, click on Configure and let's notice what I have not enabled yet. DRS, DRS. So, if I just simply go in here and turn DRS on, it's going to allow me to start to create resource pools in this cluster and the reason it's like this is because my cluster is essentially the root resource pool. Just like this ESXi host was the root resource pool for these pools, well, with the DRS cluster, you're sharing the resources of a groups of hosts. You're essentially creating this big pool of resources across all of these hosts. And so, the cluster itself becomes a root resource pool and so, now if I want to, I can go ahead and create resource pools underneath my cluster. Again, all the same considerations that we need to think about with these resource pools that I created on the standalone host. Now one final thing that I want to show you here. I'm going to take this ESXi host that is currently a standalone host and I am going to make it a part of my HA Cluster. This can be a little bit of a problem because I've already got preexisting resource pools inside of that ESXi host. So, here's what's going to happen. It's going to take all the host virtual machines and put them into the cluster's root resource pool. And any resource pools that are currently present on this host will be deleted or I can create a new resource pool to preserve this resource pool hierarchy that I have created. Let me bring this host in and look at what it did. It created a resource pool hierarchy, I called it grafted from that particular ESXi host and all of my resource pool hierarchy that I created is still there. So, just be aware of that 'cause that's something that could potentially pop up on your exam. If you bring a standalone host into a DRS cluster, the resource pools of that standalone host will be grafted into that cluster if you choose that option. The other thing to make sure that you are aware for the exam and the reason why I kind of demonstrated this not working, DRS has to be on on a cluster in order for you to create resource pools. Those are two critical pieces to be aware of when you take the exam.