Skill Level Advanced
is going over and discussing virtual machine resources. So we're going to to talk about where to go, what to look for, just things to think about when you're troubleshooting and you're working with this stuff. So what we're going to do is we're going to talk, essentially, kind of go through you'll see that there's a little exclamation point, there's some sort of issue. So if I go over here and I take a look at this, you'll see that it is notifying me right now that virtual machine memory usage is high. So if I know that, you can kind of see there that it's using about two gigs of memory, I can go through and I can go ahead and acknowledge it and reset it to green. Reset to green is basically meaning, yes, I've fixed the problem. Acknowledging basically means I'm working on it, stop bugging me, that kind of stuff. I'm going to go ahead, I'll reset it to green, and that's going to go ahead and clean that alert up. Before we get to too far in here, let's talk about a few different things that we've got to think about when we're dealing with troubleshooting. If we actually go out, and I'm going to pick a virtual machine here, this is just one of my ESXI hosts that I've got nested. If I go out and I look at the settings here, you'll notice that under CPU and Memory we've got a few different things that we've got to talk about here. Alright, so when we start talking about individual virtual machine resources, we have to think about, alright, how many CPUs are we giving this virtual machine? Alright, the reservations. Alright, reservations, what they are, they are a minimum guarantee. So when you set a reservation on a virtual machine you're actually guaranteeing the virtual machine X amount of resources. You have to be cautious with the reservations. Alright, in most cases, I don't like to set reservations unless I have to on VMs, just because ultimately, it goes back to the old physical days. When you had a physical server, and we were in a situation where we had, basically, 2000, in this case, if we had 2000 megahertz, nobody else could use it. So if you had X amount of resources on a physical server, nobody else would get access to it. So one of the big benefits of virtualization is being able to do all the load balancing. So setting reservations on virtual machines, typically, if you have a VM and you want to make sure that that VM has a guaranteed amount of resources, you can set the reservation here. And this is exactly where you'd set the reservation on an individual virtual machine. So inside of virtual machines, you can set reservations. We can also do that on the memory side, so we can also reserve a certain amount of memory. So we can go through, you can see the various hard disks if we expand this as well. We can actually go through, you can see how we have different share values and we have limits, alright? And let's discuss what a limit is. A limit, you can see it, here it is on the screen here. Limit is unlimited, but a limit, if you set a limit here, we can actually, a limit is a hard cap. A virtual machine essentially is not going to use any more than this particular, whatever you set. So if you give a virtual machine a couple of CPUs and you say I want to limit this virtual machine to less than that, you can create a limit there. And again, it can become troublesome when you actually have an issue, So if we're wanting to deep dive, maybe, for instance, we want to look at, y'know, CPU ready time. So let's say, let's talk about ready, it's a metric that kind of occasionally pops in when you're trying to verify the virtual machine resources. If you're going out, ready time is the amount of time that a virtual machine is ready to execute but it's waiting on the ESXI host. So essentially the virtual machine is in queue, and it's sitting there and it's waiting. So ready time ultimately sounds like a good thing, but it's actually a bad thing. You do not want to see CPU ready time. So you can go through, you can chart that. You can look at usage, alright? So we can go out, and we can look for the usage over the last day, over the last month, over the last year, so we can see all that. Various data stores, so if we switch over to Datastores we can look at latency. Alright, we can look at our read rate, our write rate. So latency, and the amount of IO that's happening. Are you heavy on reads, are you heavy on writes, what's happening? If we look at disk. Alright, so we can go through, we can see, again, latency there. If there's been any commands, you can kind of see here basically, write requests or write rates. We have memory, we can look at memory there. A couple of metrics when it comes down to memory that we always want to keep in mind, is if you're seeing any kind of balloon memory. Balloon memory is very useful, and if you're troubleshooting and looking at these virtual machines, the balloon memory is, what this is doing is it's using VMWare Tools. If you don't have VMWare Tools, you don't get the balloon driver. That's important to keep in mind. If you don't have VMWare Tools, you don't get the balloon driver, but in this situation, we have balloon memory. Now what this does is that when a VM is busy, it goes to the ESXI host and it says, hey, I need resources, give me resources, and what it will do is it's going to go out, and it's going to effectively, what it will do, is it's going to borrow resources from other virtual machines and tell them, hey, use your internal page file if you actually need it. So ballooning is something when the host starts to get busy that you can see. If you see a little bit of ballooning and it goes away it's not necessarily the end of the world, you definitely want to go back and you're going to want to troubleshoot and kind of look to see why that's happening. Generally if you see a little bit of ballooning, more than likely it's going to happen again. Something is going to happen down the road, because most of us, we all live in a world where people are always asking for more resources. Give me more VMs, give me more stuff, and ultimately you're going to, this is something that you will have to troubleshoot, so you'll see that. We've got compression, alright, we can look at compression. We can go through and look and see the actual memory that's been swapping. All that stuff is in place. Entitlement, we can go through, if we're doing any swapping, that's huge, so swap in, swap out, alright. Swapping is generally the last resort, alright? We don't want virtual machines to be, (laughs) we really don't want them to actually be any kind of swapping, none whatsoever, so swapping to me is, ultimately it performs poorly. Swapping generally is using the Vswap file, so when you're looking at the virtual machine, that Vswap file, most of the time, it's stored with the virtual machine. So unless that Vswap file is on SSD, you're going to get poor performance. So Vswap is essentially fake physical host memory, which again, you don't want to ever really put to use. So we can go through there. If we look under Networking, we can see packets that are received, the usage. Those are some big ones, we can go through and look at the receive rates, the transmit rates. We have our power. You can look at energy usage, all right? So we can look at that, we've got Systems. So heartbeats, and the OS uptime, that's always a good one. And then our virtual disk. So we can go through, we can look at the various seeks there. Read latency, read rate. So that's all very very important, very popular, so when it comes down to troubleshooting and actually looking at individual virtual machine resources that's something that we want to do, alright? So that's actually virtual machines, actually troubleshooting it, and looking at the actual performance charts, alright? So with that being said, we're going to go ahead, we will wrap up this demo, and we'll see you guys in the next one.