Hello, I'm Gene Campiglio. Welcome to the virtual ization class. Were now in module 10. Lesson to this lesson will be talking about resource controls for our virtual machines. So first of all, we'll talk about what kinds of resource is could be optimized for the virtual machines, depending on what you're using it for
and what kind of other PM's air on that host.
You can adjust certain values of certain resources to you, provide for better operation of all of your VMS and on that same environment.
Also look at what share values mean as it relates to seep. You ran and disc
and then we'll look at what reservations and limits mean
and a little bit of the discussion about how the EMS compete for resource is
so. First of all, we have the idea of resource contention,
and this is because the virtual machines are sharing the physical ram on the host of sharing the physical cp Resource is
and sharing the network resources and disc.
So, in order to provide for various bm stall operate simultaneously,
we need to be able to tailor the amount of resource is that each PM can get
if we don't do any tailoring or any optimizing that each virtual machine will get roughly the same amount of resource is in a balanced fashion.
Obviously, you can allocate more memory to one V M versus another, but the resource is air more or less evenly split as faras. The PM's access to them,
so we can do is enable more or less or even an equal amount of resource is for one V M versus another.
The main reason we can we can do this. Or maybe that we would want to do this. If we want to make sure that we don't have any one of'em
get into a situation where it's using more resource is than any other VM and those other V EMS are now suffering as a result. For instance, if you had a database server or our Web server and all of a sudden you have, ah, large amount of
demand for the resource is that those servers provide
the memory usage. For that, VM might go up considerably. The network usage might go up considerably, so we want to be able to specify a range where we can allow the VM two to get the resources it needs without exceeding what we've defined for a two to utilize.
We also need to be able to create a guarantee for a virtual machine so that it has a minimum amount of resource is to be able to start up
so shares limits of reservations.
What we could do with a limit is provide a upper bound on the amount of memory or CPU utilization that we'd like for the viento half.
you could say that for a window. Seven v. M.
We need 500 megahertz of processor power 500 megahertz of CP Resource is,
and we could also say that we need one megabyte of not one, not two, but one gigabyte of ram.
more in line with a reservation, right?
If I define the reservation here, I can say that I need
off CPU and one gigabyte of ramp.
If I can't get 500 megahertz of CP. What if I can't get a gigabyte of ram than the V? M won't be able to start?
That's the That's the minimum reservation that I need in order to be able to load the operating system and started my applications.
I can also set a limit.
So that same V m. I could say I'll set a limit off 1000 megahertz of CPU
and two gigabytes of RAM. That gives a nice range of resource availability for what that VM might typically need. When the VM gets busier, it needs more memory and processor. It stands to reason that that's the way that would work.
I also have another option to assign shares. Shares is a relative waiting of resource utilization among different viens on the host.
So between the limit and the reservation is where the shares would operate.
If I have multiple V EMS and I give Ah hi medium or low shares values
to the VM than that, the amount of memory and processor would would move between this upper bound and lower bound.
That's a great way to
control what Of'em does without having to give it a hard number to say. I know I'm never gonna need more than 1000 megahertz. Aiken set a limit of that and then signed some shares that let it move around and as V EMS become busier or less busy than those share values will adjust themselves in real time.
So if you look at an example of shares,
I've got to be EMS here. One has 1000 shares of resource is
assigned. The other one needs 3000.
So this is a way of saying that the overall resource utilization for those to be EMS is set at those values. This gives me a total of 4000 shares.
Now, if I power on 1/3 bm I still have 1000 shares here. Still have 3000 here this one I designated needing 2000 shares. So now my total number of shares a 6000.
So this gets sub divided between the V EMS that are using the shares.
Then if I power that GM off, I still have my original designations of 1000 shares for VM one and 3000 of'em too.
And my total number of shares that are available goes back to 4000. So this number grows and shrinks depending on what you allocate and how many of'em zehr running at any given moment. So lastly we can think about how we optimize the resource is that are available to us as an administrator.
If we're thinking about processor between the VM colonel, the configuration of the V M, or parameters that are adjustable by the administrator
within the VM Colonel contacts, I can use hyper threading and load balancing. We talked about that in the previous last thing, where we showed how processor cores and number of sockets
per for the host are utilized to even out the load. Among the different Vienna's that require resource is
for the configuration of the VM itself. I have virtual symmetric multi processing, so I can assign multiple virtual CP use and those will be load bounds within that V M. The same way they would be in a physical host
and then, lastly with the administrator can adjust the limits, reservations and shares that we talked about over here
as it relates to memory. I have transparent paid sharing. If you recall that that allows the EMS to share pages which are identical within the hosts memory,
and that gives you a big boost and the efficiency of using that memory.
I also have the VM meme control, which is the balloon driver,
and as a reminder there
the balloon driver will borrow memory from other V EMS when one other viene needs it.
this V M that powered up and it required 2000 shares, maybe I need a little bit more memory to meet this minimum so I could have borrowed it. Or these fair would borrow it from the other two v EMs that are running.
And then as the memory need goes away, then the balloon driver deflates and the memory gets redistributed the way itwas
so from the virtual machine configuration,
I can adjust the available memory that that machine gets when it boots.
That, of course, comes out of the physical memory that the host provides for all the PM's to share.
And then for the administrator, I can still use limits, reservations and shares as it relates to memory.
Regarding my disk resource is
mostly I'm concerned with where the files are located
in on a data stores and Annie. And if estate A store isn't a nice cosy isn't an SSD,
he's different. Data store
technologies provide different levels of performance, so you would have to pick the one that best suits your needs at the time
as far as the things that are adjustable by the administrator, I can set up multi path thing
so I can have multiple physical paths to get to my data files.
And you can also use storage io control,
which lets you set of different ranges of resource utilization related to your storage. You can even do storage clusters if you wish, so you can cluster data stores together and make one big aggregate storage.
There's lots of options for how you deal with a disc resource allocation,
and then, lastly, we have our network. Resource is
so one of the things you could d'oh! When you're configuring, the virtual machine is used, Nick teeming.
So this means that I'm teaming the physical nix on the host, not the virtual necks. I can use more than one virtual nick for of'em, but teaming the virtual next doesn't provide any benefit.
Only when I'm teaming the physical nix on the host, I get benefit.
We also have the ability to do traffic shaping
within the network utilization, and this lets you prioritize certain aspects of how the network bandwidth is used by that virtual machine and much like storage io control I have never Chiyo control.
This allows the administrator to adjust the relative resource utilization of the network hearts.
we describe what kind of contention off resource is might be experienced by your typical B M.
We also looked at what limits reservations and shares mean and how those are defined between memory and CPU cycles.
And then we saw an example of how the shares air subdivided and how the total changes as new V EMS are powered on or powered off,
that concludes lesson to thank you.