Skip to content
CBT Nuggets

Hyper-V Memory, Integration Services, Discrete Device Assignment, and Resource Groups

This skill covers essential aspects of managing Hyper-V environments, including configuring virtual machine (VM) memory, integration services, and discrete device assignment. It also delves into the use of VM resource groups for efficient management and automation of tasks across multiple VMs. The skill emphasizes the use of PowerShell cmdlets for configuration and management, providing practical examples and detailed explanations to enhance understanding and application in real-world scenarios.

Full lesson from Hyper-V. Preview the IT training 23,000+ organizations trust.

49m 4 Videos 4 Questions

Skill 2 of 5 in Hyper-V

Overview

Join James Conrad as he demonstrates how to configure VM memory, integration services, discrete device assignment, and VM resource groups.

Recommended Experience

  • An understanding of concepts taught in CompTIA A+
  • Two years of hands-on experience working in a server environment is recommended

Related Certification

  • CompTIA Server+ (SK0-005)

Related Job Functions

  • Systems Administrator
  • Server Administrator
  • Network Administrator
  • Data Center Technician
  • Data Center Engineer

James Conrad has been a CBT Nuggets trainer since 2020 and holds a variety of certifications including Microsoft Certified Professional, Microsoft Certified Solutions Associate, Microsoft Certified Solutions Expert, Microsoft Certified Technician, Certified Ethical Hacker, and CompTIA A+.

Configure VM Memory

In this Nugget, we learn how to configure virtual machine memory.

Knowledge Check

You configure a VM memory setting to RAM: 2048. However, when you check the actual memory in use, it shows 4096. Why?

  1. AYou have configured the setting "Enable Dynamic Memory"
  2. BThe Minimum RAM setting is 4096
  3. CThe Maximum RAM setting is 4096
  4. DThe additional memory in use is because of the paging file

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

Configure Integration Services

In this Nugget, we learn the advantages of integration services and how to configure them.

Knowledge Check

Which of the following does configuring the Integration Services "Guest services" setting do?

  1. AEnables file copy/paste
  2. BEnable the VM to run as a guest OS
  3. CEnables the guest OS to also be a Hyper-V host
  4. DEnables text copy/paste

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

Configure Discrete Device Assignment

In this Nugget, we learn how to assign a device direct access from a VM.

Knowledge Check

Which BIOS setting would you enable to use discrete device assignment?

  1. AEnable SR-IOV
  2. BEnable SMT
  3. CDisable removable storage
  4. DConfigure all USB 3.0 ports to USB 2.0 compatibility

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

Configure VM Resource Groups

The only way to configure a VM resource group is via PowerShell cmdlets.

Knowledge Check

The only way to configure a VM resource group is via PowerShell cmdlets. True or false?

Verify your team's readiness — Request a Demo to verify practice assessments, completion reporting, and CSV / SCORM exports on the Team plan.

Conclusion

I hope this has been informative for you and I would like to thank you for consuming.

View Transcript

Configure VM Memory

0:00[MUSIC PLAYING]

0:06Hey.

0:07Are you forgetting something?

0:09Ha!

0:09I know when you get to be my age,

0:12you always feel like you're forgetting something.

0:14There's something that I forgot to do.

0:16I should have put it on my to-do list and I didn't.

0:18Yesterday, I walked into the garage,

0:20and I stood there in the middle of the garage for probably

0:22a solid minute.

0:23What did I come in here for?

0:25I never could remember.

0:26Anyway, we all need more memory or maybe

0:29better memory from time to time, other than a couple

0:32of friends of mine who have photographic memories.

0:35I think I hate them.

0:36Then we all need some more memory.

0:38Now of course, we're not talking about human memory here.

0:40We're talking about physical memory

0:42and/or in this case, virtual memory.

0:45And of course, I'm really talking about virtual machine

0:47memory, not virtual memory.

0:49That's kind of another topic.

0:50So, how does all this work out?

0:52You know how things go on a physical level.

0:56On this machine I'm recording from right now,

0:58I have 64 gigabytes, and I don't have to use all of that

1:03all the time.

1:03A lot of it will go to virtual machines that I run.

1:06So, I might have Hyper-V running here

1:08with virtual machines running in it.

1:10And I've got this virtual machine, and this one,

1:12and this one.

1:13And maybe this is a server down here,

1:15and maybe it needs, oh, let's say, eight gigabytes.

1:18Maybe this one's just a Windows 10 computer.

1:21It needs two gigabytes.

1:22And this one over here maybe is a Linux machine,

1:25that maybe we decide it needs two gigabytes as well.

1:30What does that add it up to, 12?

1:31So, does that mean that this over here

1:33is actually 52 gigabytes that are left?

1:37And how does that get balanced out?

1:39This machine over here is also going

1:40to have a paging file, which is substituting memory

1:44in hard disk paging instead.

1:47I think you may already be familiar with that.

1:49The virtual machine is here also though.

1:50Even inside of them is, for example, this server

1:52down here that's using eight gigabytes.

1:54What if it has a combination of applications

1:57and different things that it's doing

1:59and data that's processing, where now,

2:01oh no, it needs 10 gigabytes total,

2:03but I only gave it eight?

2:04Now what?

2:05Well, a couple of different things.

2:07Number one, it can use paging on its own within that.

2:11But the virtual machine management here,

2:13actually Hyper-V itself, can also allocate memory

2:17in various ways.

2:18And one of the ways that it can do that is through something

2:20called dynamic memory.

2:22Now, in addition to that, there are other things

2:25that happen when a computer starts up as a virtual machine.

2:28Actually, this is true of physical machines as well as

2:31virtual machines.

2:32And it's mostly true of Windows, but it probably

2:34also applies to most other operating systems.

2:36And that is, it uses more memory during the full startup

2:41process, and then once it's at rest, it usually calms down.

2:45So, these virtual machines here, let's say these two gigabyte

2:47ones, let's say if this is a Windows 10 or 11 machine,

2:50it might use 1 and 1/2 or two gigabytes during the startup.

2:53I don't really know the exact amount that it's going to use.

2:56They're all going to be different

2:57depending upon their load.

2:58But after a while, it might go way up here to two gigabytes,

3:03and then after 10 minutes or so it might come back down

3:07to one gigabyte.

3:09That it's really using at rest, so to speak.

3:11This becomes a factor when you're working

3:13with VDI or virtual desktops.

3:17This would be where, for example, someone's

3:20sitting at home.

3:20Let's say this is their--

3:21I don't know why I'm writing a triangle for someone's home,

3:24and I'm in the way.

3:24But this is their home down here,

3:26and they're working on their-- maybe

3:28it's an old, crusty laptop computer, sitting

3:30on their couch because everybody works from home these days,

3:33or a lot of people do anyway.

3:34That's not a window.

3:35It's supposed to be a laptop.

3:36There's the keys on it and everything.

3:38Anyway, they're working from here.

3:39And it's really just enough to get started.

3:41It's a bring your own device kind of a situation,

3:44but they need to be able to use this virtual machine right

3:48here.

3:48And that again would be the case if I'm

3:50using VDI, which, by the way, stands for virtual desk

3:53infrastructure.

3:54And if you're using something like that,

3:56you probably have a bunch of other desktop computers here.

4:00These are all, let's say, VDI machines

4:02that other users will be connecting to

4:04throughout the day.

4:05What's the advantage of a VDI?

4:06And we're not really talking about VDI per se here today

4:10on its own, but it does affect how memory gets used.

4:13So, let's discuss it in a virtualization environment.

4:15The advantage of VDI is that these desktops

4:18will be corporate desktops that have

4:22a lot of our wallpaper, configuration, all of our apps,

4:25everything like that.

4:25That means that we don't have to have an administrator,

4:28and this is the worst case, traveling to this person's

4:30house, configuring their personal desktop to have

4:33only exactly what we need.

4:34No, that would be very impractical.

4:36So, instead we configure all these VDI machines here,

4:39and it's the exact image of our corporate desktop that we

4:42want with all the apps that they need and everything.

4:45So, we might have quite an infrastructure

4:47where there's quite a few people connecting to these VDIs.

4:50As you can imagine, that's going to consume a lot of memory

4:53as the day goes by.

4:55And this gets to be more complex as these machines

4:57not only start, but also as they restart, because again, it

5:01might have gone up to two gigabytes at a certain point,

5:04then it went down to one gigabyte.

5:05But then the user restarts the computer,

5:07so it again it has to go into this cycle,

5:09where it goes back up to two gigabytes and down to one

5:12or whatever.

5:12Well, as all of these machines start to consume memory,

5:15our physical memory in our host machine

5:17can start to go down, down, down until we get into kind

5:20of a memory depleted situation.

5:22And maybe we're paging too much now

5:23and performance will already start to suffer.

5:25And there are even situations in which maybe we

5:28have something going on where a lot of these machines

5:30are rebooting at once and all going through this memory spike

5:33where they have to consume all of their memory.

5:35We might even start to get error messages

5:37that there is insufficient memory to restart a computer,

5:40and even that is not really quite how it happens.

5:43What happens, is now in modern versions of Hyper-V operating

5:47systems is that it's going to use

5:49something called smart paging.

5:51And smart paging only happens when virtual machines are being

5:54restarted, and there's no physical memory available

5:58to give us this increase right here that we might need,

6:01and when it cannot be reclaimed from any of these other virtual

6:05machines, and they don't have any memory to give up

6:07or to borrow from.

6:08Also, be aware of the fact this only

6:10applies to actual restarts.

6:12If a machine is doing a cold start,

6:13a virtual machine's a cold start from an off position,

6:16then this is no longer a factor.

6:18It just restarts.

6:19And to illustrate some of this, I've gone to my own Hyper-V

6:22here.

6:22Now, this is running on a Windows 11 computer,

6:25but everything I'm going to show you here

6:26is going to be the same, whether it's on 11, server 2008, R2,

6:292016, 2019, server 2022.

6:32All of those are going to be the same, Windows 10.

6:35So, what we can do here is we can right

6:37click there to go to settings, and if we

6:39go into memory right here, we could

6:42get a little bit more detail.

6:43And some of this is a little bit misleading.

6:44Let me talk to you about what's really going on here in terms

6:47of the memory allocation.

6:48Now, first of all, think about a physical machine.

6:50Let's say a physical machine had only two gigs of RAM.

6:53That's not very much these days, but let's say

6:55it had two gigabytes of RAM.

6:57Well, it's probably got a couple of memory modules in there,

6:59and the entire time that that machine is

7:01turned on and running and the operating system is going,

7:04it's got two gigabytes constantly.

7:06And it will play around with how much of that two gigabytes

7:09it actually needs for its operating

7:11system and applications.

7:12But you don't just rip out a memory module

7:14while the machine is powered and turned on in most cases,

7:17unless you want to have a really bad day.

7:19Well, when it comes to a virtual machine in Hyper-V,

7:23it really actually has those two gigabytes

7:25that we see here during startup.

7:27This probably should be renamed not to just RAM,

7:30but to startup RAM.

7:32That's how much is allocated during startup.

7:34That will give a better performance during the startup

7:36process because most operating systems will require more RAM

7:40during startup, and then after a minute or two or a few minutes,

7:43it will kind of settle down and go back down again.

7:45So, we start up.

7:46We go on the run-up.

7:48As the computer boots up, you run up

7:50and you get up to this 2048 and it

7:52needs that for a few minutes.

7:54And then again in a VDI situation,

7:56where you'll have, gosh, maybe dozens

7:58of machines that are really just idle, nobody's connecting.

8:01Maybe it's not our business hours or whatever.

8:03They're available if somebody does

8:05need to connect to it in the middle of the night,

8:06they forgot to do something.

8:07But it could be that they're just kind of sitting there.

8:10And in that case, they'll relinquish memory up

8:13to as little as 512 megabytes in this case.

8:17Now, that's operating system dependent as well.

8:20If we're running Windows 11 VDIs,

8:22and I don't know what the minimum is, but let's

8:24say it can only go as low as 700 megabytes,

8:28then it won't go quite as low as this.

8:30But let's just for the sake of argument

8:32say that it goes all the way down to 512.

8:34Well, now as the user starts to use more memory,

8:36they come in the morning, they log on,

8:38they start up their VDI.

8:40Then they got some applications running.

8:41Now they need this much memory.

8:43Now they have an issue that's come up

8:44and they need to restart their machine.

8:46On restart again, it can use that smart paging

8:50in order to get memory that it might need.

8:53And it'll create a temporary paging file

8:56that's not the main big paging file that you use

8:59on the host operating system.

9:00This is a smart paging file that is temporarily

9:03created in low memory situations in order

9:05to get it back up to this 2048 if necessary

9:09to perform the full restart.

9:10And then while the operating system

9:12is running, if we have something that's extremely high demanding

9:15or whatever, we could increase up to and that should be--

9:20Is that a terabyte?

9:20Yeah, a terabyte of memory there.

9:23And, of course, I've only got 64 gigs of physical RAM

9:25on this physical machine, so it would never

9:27be able to get quite that high.

9:29But at least in theory, it could go up to a terabyte

9:31if I had a terabyte's worth of RAM installed.

9:34And then we also have this value here, the memory buffer,

9:37and that works in coordination with the current needs

9:39of the installed operating system

9:41and what its current memory requirements are.

9:44So, it'll take what those needs are

9:46and it uses a factor to add in a 20% buffer

9:49to give it better performance.

9:51Then there's this value down here, the memory weight.

9:54This is a relative value.

9:55So, for example, if all of my machines

9:57were all smack dab in the middle here,

9:59then they would all be equally distributed, especially

10:01in a low memory situation.

10:03But if memory starts to get oversubscribed,

10:06then anything that's up higher-- so, for example,

10:09if this machine is a couple of notches higher and all

10:11the other machines are right in the middle,

10:13then this one will start to have priority

10:14in terms of allocating memory.

10:16And if you want a little bit more detail

10:18about how much memory is available in your normal

10:20runtime environments, you can use Performance Monitor

10:23there just as an FYI.

10:25There's a counter there, the Hyper-V dynamic memory

10:27balancer, and specifically what you would look for here

10:30is this one, available memory for balancing.

10:33Now, of course, I don't have much going on

10:34on mine, so I highlighted it.

10:36It's the black line you can see way up here at the top.

10:39So, it's got pretty much 100% of the available

10:41memory available for my virtual machines if needed.

10:45And then also, it's a little bit beyond our scope here,

10:48but there's also this item right here.

10:49It's an article from Microsoft that you

10:51can refer to if you like.

10:53And this is for virtual machine sizing guidelines.

10:57And because sometimes it's a little bit

10:59relative in terms of determining how big of a server should

11:02you buy that's for your Hyper-V server.

11:05How many hosts can it support?

11:07If you're using VDI, you're going

11:09to have to look for other data there as well.

11:11But this is at least a good starting point

11:12to determine what kind of load you can

11:15put onto your Hyper-V server.

11:18All right, that's it for memory.

11:19I hope this has been informative for you,

11:21and I'd like to thank you for viewing.

Configure Integration Services

0:00[AUDIO LOGO]

0:06In previous Nuggets, for various reasons,

0:08we've kind of talked about the integration services, at least

0:11a little bit.

0:12But now, let's take a look at it at a little bit more detail

0:14and also about some of the specific ones

0:16we haven't covered yet.

0:17And also, we're going to be taking a look here

0:19at how to manage these using PowerShell.

0:21So here we are in the Hyper-V host.

0:23And in order to access these Hyper-V integration services,

0:27all you really have to do is to right-click a machine like I've

0:29got this domain controller down at the bottom here of my list,

0:33and if I go into the Settings-- it's very simple,

0:35it's right down here where it says Integration Services,

0:38obviously.

0:38And then, by default, at least in the installations I normally

0:42do, all of these top ones right up to here

0:45are selected by default. Why they don't do the bottom one,

0:47I don't know.

0:48But let's talk a little bit about what these are.

0:50And by the way, each one of these

0:52has a corresponding guest side to this inside

0:57of the virtual machine.

0:59When you install a virtual machine that's

1:01a Windows virtual machine, it just somehow

1:03knows that it's a Hyper-V guest and it'll

1:06install a corresponding service for each one of these items

1:10and run it.

1:11Well, here we have the first one, Operating system shutdown.

1:14OK, when we do that one, what's that really talking about?

1:17I mean, would we not be able to shut down the virtual machine

1:21if that did not exist?

1:22No, certainly you can.

1:23In the UI, if you're in the UI of the desktop for this machine

1:27for example, like I am right here,

1:29obviously, you can still click the Start menu

1:31and hit the little power button and all that.

1:33Or you could just run shutdown space forward

1:35slash s space forward slash T followed

1:38by a time interval, which is how I do it

1:40usually from the command line.

1:41But what we're talking about here

1:43is the capability of going to the virtual machine

1:47here in the host, right-clicking on it

1:49and then choosing Shut Down.

1:51See, without that item there, I would only

1:54have either Save or Turn Off as my other options.

1:57And Turn Off has an undesirable effect, the same as flipping

2:00the switch, the power switch on a physical computer.

2:03You do that and you could wind up

2:04with corrupt files, things that are kind of half open, so

2:08to speak, corrupt operating system.

2:10Really pretty nasty.

2:12As you know, you don't ever want to shut down

2:13a machine like that if you can.

2:15The other integration service that we have here,

2:17if we go back into these would be this Time synchronization

2:20one.

2:21This one is pretty important because as I've

2:23mentioned a couple of times in this course,

2:25time sync is so critical to Windows machines because

2:28of Kerberos.

2:29You see if Kerberos tickets are any more than five minutes out

2:33of sync or a log on attempt for example,

2:35any more than five minutes out of sync with its authenticator,

2:38then it's going to not work.

2:40It just fails authentication.

2:42So you have to have time synchronization.

2:44Now if I did not have that turned on,

2:46what would happen on my guest?

2:48Well, at least initially, it would still

2:49have the same time as my host operating system.

2:51Now you really want the chain of time

2:54to be consistent all the way through.

2:56So on most Windows operating systems,

2:58by default really, it synchronizes

3:00with a reliable time source, usually

3:02a time.windows.com, I think it is something like that,

3:05time.microsoft.com.

3:06And you can look at it in your settings

3:08and find it if you want.

3:09But that's an atomic clock which is accurate to within,

3:13I don't know, a bazillionth of a second or something like that,

3:16OK.

3:17So very, very accurate time, in other words.

3:19If you're in a domain, then your client

3:21will synchronize up with your domain controller, which then--

3:25especially if it's at the top level of your infrastructure,

3:27would then get its time from another authentic time

3:31source, such as Microsoft or NIST

3:33or some government organization like that or atomic clock,

3:36something like this.

3:37Anyway, the same would be true of a guest here.

3:41So why do I have to have this time sync?

3:43Well, what can we do here that we

3:45don't do in physical computer land really so much?

3:49We can right-click here and choose Save.

3:50That's a little bit different than what

3:52you could do on a desktop.

3:53If I choose Save and I had that time service turned off--

3:57Let's say, I turned it off for 12 hours.

3:59When I resumed it again, then the time would be 12 hours off

4:04and it wouldn't sync up with my host operating system.

4:08I would have to then make sure that I had also enabled

4:11some other synchronization mechanism with that client

4:13in order to make sure that it had current time.

4:15Otherwise, it just causes a whole mess,

4:17so don't mess with that one.

4:18And then what else we got?

4:19We have Data Exchange.

4:21OK, Data Exchange is not something

4:23you use very often, at least consciously, so to speak.

4:26It really refers to a registry value in the guest operating

4:32system where you can use it to exchange

4:34various types of small amounts of data like metadata.

4:37You're not doing this for file transfers

4:39or something like that, Word documents or something.

4:41You're doing just small bits of data.

4:44It might be of value that evaluates to yes or no,

4:46true or false, something like that.

4:48And it's just going to be string values.

4:50And in fact, I thought I'd just go ahead and take you

4:51to the registry location where that actually is.

4:54If you look at the top here, you can see that I'm in-- well,

4:57I guess I cut it off, let me try it again.

4:58If you look at the top here, you can

5:00see that I'm in Computer HKEY_LOCAL_MACHINE_SOFTWARE

5:03Microsoft Virtual Machine.

5:04And then from there, we go down here into these values, Auto

5:09and then this is just any data that's

5:11going to be exchanged between the host and the guest.

5:13So this might be useful in identifying

5:15certain aspects of it, such as the operating system version,

5:19build number, stuff like that.

5:21But the other part of this would be external,

5:23which would be any kind of metadata

5:25that I would exchange between the host and the guest.

5:28This would be coming from the host operating

5:30system into the guest.

5:32And this would be any data that I have from the guest

5:35that I'm going to send out to the host.

5:38And you may also see this referred to as a KVP, which

5:41is key-value pair.

5:42And then returning back here, the next thing we have

5:44would be the Heartbeat.

5:46This is what tells the host machine whether or not

5:49the operating system is actually booted

5:51and running in the guest.

5:54But it's also a little bit misleading

5:55when I describe that, so let me clarify.

5:57You see where it says Running right here,

5:59you can see I've got a couple of different machines

6:00that are running right now.

6:01Running doesn't really mean much.

6:03There might not even be an operating system

6:04installed there.

6:05It might just be a Bare Metal kind of thing or something

6:07like this.

6:08So that does not necessarily mean that the operating system

6:11is booted and healthy.

6:12Although we don't see it in any of the UI things right

6:15through here, this is that value that I showed you there,

6:18the Heartbeat, is what communicates to the host

6:21that the operating system has booted and is healthy.

6:24And then there's a Backup.

6:25This one's interesting, the volume shadow copy service.

6:28OK, so in order to understand that,

6:30you kind of have to understand how backup works in its older

6:34and most fundamental sense.

6:35If I have-- let's just think about a file backup.

6:37If I want to backup my documents or whatever,

6:40then if I have a Word document open right now

6:42and I try to back it up with older methods,

6:45it would skip that file, because it would say the file

6:48was open at the time the backup tried to run.

6:50Well, with modern Windows--

6:53this has been going on for a few years now,

6:54it uses the volume shadow copy service

6:57and it kind of creates a sly copy

6:59of that file even though it's open,

7:01and then it backs up that copy.

7:02I'm oversimplifying a little bit.

7:04But by doing so, it's able to actually back up a file

7:07even if it's alive and open.

7:09And this overcame a significant problem with backup solutions

7:13in years past.

7:14Because some files are open almost all the time,

7:16and therefore, would never get backed up.

7:18And by the way, if they're open almost all the time,

7:21probably means they're pretty important.

7:22So here, the volume shadow copy service

7:25can also interoperate with virtual machines

7:28so that you can even back up your virtual machines when

7:31they're running.

7:31And then finally, I think I demonstrated

7:33this in a previous Nugget, there's this Guest services.

7:36That's what gives us the ability to copy files back and forth.

7:39Now as an FYI, inside of your guest,

7:41each one of those services that I just talked about,

7:43those integration services, is also visible here.

7:46If you go into Services such as in Computer Management

7:49where I am now, or you can just go to the Services node,

7:52and there should be a Hyper-V set of services.

7:56Each one that starts with Hyper-V

7:58corresponds to an appropriately named guest integration

8:02service that we just looked at.

8:03And I don't think any of those are a mystery.

8:05So if you just look at those, that

8:07happens to be the very services that control all those things.

8:10They should all be running.

8:11If you've selected every box, they

8:13should all be running except for this one, because this one is

8:15the PowerShell direct service.

8:17That's what we talked about in a previous Nugget here as well.

8:20Might have been in the previous skill in fact.

8:22But the PowerShell direct service,

8:24that's only going to be running when we're actually using it,

8:27when we're actually sending commandlets.

8:29Now I can't really think of a reason

8:31to stop any of these services particularly

8:33unless it has to do with some kind of a troubleshooting

8:36thing.

8:36But Microsoft has also document it,

8:39so I wanted to go ahead and share with you how

8:41you would stop those services.

8:42By the way, what I'm about to show you

8:44there would be true of really any service, this service

8:46or that service or any other service

8:48you wanted it to work with.

8:50And again, for this I have this PS1

8:52file integrationservices.PS1 available for you as a student

8:55download as well.

8:57Anyway, what we will do here is, first of all,

8:59you got to know the name of the service,

9:00because sometimes they're a little obscurely named

9:03or you just kind of have to guess.

9:04So I'm going to go ahead and list the services first by get

9:06service, and anything that starts with VM, I do

9:09know that much.

9:10And so any of those that start with VM will now appear,

9:13and we see them down here at the bottom.

9:15Now, as you could see, in this case,

9:18I ran those from my host operating system.

9:21So all of those services that we just discussed are stopped.

9:24So therefore, that's not really what we're looking for.

9:26What I would want to do is to run that inside of the guest

9:29itself.

9:30So let me copy that, hit the little Copy button,

9:32then I'll head over to the guest where I am right now,

9:34I'll right-click on a Windows PowerShell

9:36as I start to type that in the search bar,

9:38and then I'll run that as administrator, because that

9:40obviously would have to be run as an administrator.

9:42Then I'll paste that in Get-Service -Name vm,

9:45and there we go.

9:46You see that those services are now here running

9:48except for the PowerShell direct, which we already

9:50discussed.

9:51And then of course, if we wanted to stop one of those--

9:54Let's take this vmicshutdown, OK, this is the shutdown one.

9:58Then I can enter that here as well

10:00like this, Stop-Service -Name, and then vmicshutdown.

10:05And then that would then, of course, shut down that service.

10:08We should be able to confirm that if we

10:09go into the background here.

10:11There's the shutdown service.

10:12It says it's running.

10:13But if I refresh it, I'm pretty sure-- yeah, there it goes,

10:15it is now stopped.

10:16And then of course correspondingly,

10:17if I wanted to start it, I would go back here and just type

10:20Start-Service and press Enter.

10:22And we should see that also in the background

10:25here as I refresh the screen then

10:26come back up and running again.

10:28Now I mentioned earlier that Heartbeat service,

10:30that's what tells us whether the operating system has

10:33booted and is running properly, which

10:35is not to be confused with that running status thing

10:38that you'll see in the host operating system.

10:40But if you do want to see from a command line

10:42if it's running properly, you can run this here as well.

10:45This actually might be useful, because you could,

10:47if you have a cluster of virtual machine servers

10:50or if you have some VDI machines that you

10:53want to see if they're running properly,

10:55then you could script that and then what we would do here

10:58is just run that line.

11:00Let me use the little squeegee here to clear off

11:02the previous screen.

11:03But I can just run that line there

11:04and it gives you information about whether the operating

11:07system is up and running normally.

11:09And also here, I went to my Windows 11 computer,

11:11and I saved that machine.

11:13Let's see what happens if I run that same command again here.

11:16I think that machine's Win11-01.

11:18Hopefully, I remember the name right, and press Enter there.

11:21And it says Saved but Operating normally.

11:23Oh also, as you can probably imagine, all of these,

11:26computer names and everything, just

11:27change those to whatever your computer names

11:29are in your lab environment.

11:31If I wanted to look at the status of the integration

11:33services from the host side of things,

11:36then I would run this line right here.

11:37Let me squeegee all of this away.

11:39And then run that little item, and then we

11:42can see again here whether they are enabled.

11:45And it looks like they're all OK.

11:46And then these are pretty simple down here at the bottom.

11:48I think you could probably make sense of those.

11:50I'll just run those real quickly.

11:51I could disable one of those services,

11:53like the Time Synchronization service.

11:55With those, you don't actually type the name of a service,

11:57you type in the way it appears in the plain English version

12:01over here.

12:02So you see that it says Time Synchronization--

12:04for some reason, my highlight's not working-- there it goes.

12:07Time Synchronization right here.

12:08So I just type in the actual name of it.

12:10And that's how I'll run that one, so let's run that

12:13and we can see that it would then disable it.

12:15If I want to run that previous line again, we'll confirm that.

12:18Yeah, sure enough, it is not enabled

12:20because I just disabled it.

12:22And then if I wanted to re-enable it,

12:23I would just do pretty much the same thing only

12:25to choose Enabled instead now.

12:27And then we should now see that it has now

12:29become, once again, enabled.

12:31And it looks like it is.

12:32OK, and then just as a final note

12:35here, I'm going to point you to a document here.

12:37And you can see the URL up here at the top.

12:39It's kind of long.

12:40But if you also just search for Manage Hyper-V integration

12:44services, I think that'll get you here.

12:46But the reason why I'm here is because I've

12:48shown you some of the things that are already in this,

12:50but we did not really talk about Linux guests.

12:52And I don't know that you're going to really

12:54be tested on Linux products in a Microsoft exam,

12:56so if you're a test taker, might not be as relevant.

12:58But if you do run Linux machines,

13:00and you need to know some of this stuff for the real world,

13:02there you go.

13:03And it's about halfway down, you can see the kind of contents

13:06over on the right.

13:07It'll take you right here and good information.

13:10So there's your integration services

13:12in Hyper-V. I hope this has been informative for you

13:14and I'd like to thank you for viewing.

Configure Discrete Device Assignment

0:06Discrete Device Assignment, while this

0:08is an interesting concept, typically

0:11what happens when you install an operating system on hardware,

0:14for example, is that in-between the operating system

0:17and the hardware, you have to have the drivers,

0:19because the drivers are what allows the operating system

0:22to control that hardware.

0:24However, when you're taking a look

0:26at something called a Discrete Device

0:27Assignment in virtualization, you

0:29have a different situation going on.

0:31So here at the bottom level, we have the hardware,

0:34and then we have drivers right here in-between

0:37the actual hardware and the host operating system.

0:42Now when we bring virtualization into the picture, which

0:45in a certain way is really an application on top

0:47of the operating system, then what happens here

0:49is we have another layer of drivers.

0:52And of course, I'm probably oversimplifying

0:54somewhere in here.

0:54And then on top of that, in your virtualization here,

0:57you would have the various operating systems--

0:59Windows, Linux, what have you.

1:02So what happens here is maybe I've

1:05got a very high end video card down here that I really

1:09want to take advantage of.

1:10And I want to be able to take a look at, oh, all

1:13the fancy stuff that video cards can

1:14do now, the shading, the processing, all

1:17that sort of thing.

1:18But because I'm just using these middle drivers right here that

1:21are part of, in this case, Hyper-V application,

1:25they're probably not going to be able to deliver

1:27all of those whiz bang features that the actual manufacturers

1:30drivers could.

1:31In addition, if you think about something

1:33like video cards, well, of course,

1:34they're frequently used now for mining,

1:36Bitcoin mining, Ethereum, other kinds of mining that

1:40can take place.

1:41And so if I had some virtual machines up here

1:44that were mining, maybe I would really rather

1:46have these drivers directly connected

1:49to those virtual machines.

1:51And really it wouldn't even be that way,

1:52it would really be the drivers, the original manufacturers

1:55drivers themselves would be installed

1:58on the virtual machine and would give me direct access

2:01to this video card, then I could get the full benefit of it,

2:04and there's really nothing in between and very little,

2:07if any performance hit by doing it this way.

2:09Whereas here we kind of dilute the whole thing.

2:12Looking at another example here, what if I had something

2:14called NVMe, that's supposed to be a little e, but I can't

2:18seem to make it that way, NVMe.

2:20I'm going to show you something about that here coming up.

2:22But that's really storage related,

2:24and it's designed for SSDs.

2:26But it's a way of magnifying the performance

2:29and throughput of these types of storage devices.

2:32Now if they're just directly connected through the drivers

2:35to the operating system, and I have virtualization

2:37in the picture at all, then I've got all the performance

2:39I need there just locally.

2:40But once again, if I have a virtual machine up here that

2:43needs to take place of that super high speed performance,

2:46then I need to figure out a way to get drivers here

2:49that directly connect to that hardware

2:52and bypassing in a certain way the middle drivers

2:55that we see here.

2:56Well, that's what Discrete Device Assignment is all about.

2:59Let's take a look at what goes on with this.

3:01This is actually what's going to give us

3:02direct access from the virtual machine

3:04to that physical hardware through

3:06to that fantastic artwork that I showed you just a moment ago.

3:09I should put an NFT up on all of that drawing

3:13that I did just there.

3:14I'll probably make a million dollars.

3:16What we can do here is we can bypass those middle host

3:19drivers from virtualization as I just described.

3:21And the two things that I described

3:23there, which are really relevant here

3:25is that so far, Microsoft and Hyper-V

3:28are supporting initially, at least, graphics adapters

3:31and NVMe storage.

3:33Now there are other devices that will work.

3:35In fact, I have on my own computer

3:37other devices that could work, but they're not

3:40supported so to speak, and you have to check through each one

3:44and test it to make sure it'll work.

3:45Obviously, the benefit here is going

3:47to be dramatically higher in performance,

3:49and it's really intended for server class hardware.

3:53So I'm really recording, for example,

3:54I'm more of a workstation level, although it's

3:56a pretty powerful workstation.

3:57It's a machine that CBT Nuggets sent me a while back.

4:01It's got great graphics cards, and lots of memory,

4:04and storage, and SSDs, and all that,

4:05but it's not really a server.

4:07But it would make a great gaming server

4:09if I were to play games on a work computer.

4:11Of course, I would do that.

4:12OK, now what are the requirements

4:13to make all of this work?

4:14First of all, the virtual machines

4:16could be either Gen 1 or Gen 2.

4:18You don't have to go, oh, I need to have Gen 2.

4:20No, either one works.

4:21And it works with the modern operating systems of Windows 10

4:25or greater for the desktops and Windows Server 2012 R2

4:29or greater for a server operating system.

4:32And you have to have hardware that

4:34can grant the operating system control over the PCIe fabric.

4:39So really what that's doing is it's

4:40getting directly down into.

4:42It's a direct connection into that hardware,

4:44and you have to enable that in your BIOS.

4:47You'll look for a setting there.

4:48Sometimes it's buried two or three levels deep.

4:50You'll probably have to get into the advanced settings.

4:53I did that on my own computer that I'm recording from here.

4:55A little further into the menu system there,

4:59but you would enable SR-IOV, is the setting

5:03that you want to enable.

5:04And then I'm going to show this to you.

5:06There is a Microsoft script that one

5:07of the developers at Microsoft wrote

5:10that will test your compatibility

5:11to see if it works at all.

5:13And if it does work, which devices

5:16will work with this Discrete Device Assignment?

5:19All right, and so what is this NVMe?

5:22First of all, that's the storage that I was talking about.

5:24Here I've gone to Kingston's website here.

5:27And you can see where I'm in right here.

5:30You can go there as well if you like to.

5:32And I recommend that because of all the places I've gone,

5:35they have an excellent run through on what

5:38NVMe is, which is really--

5:39I don't think I've explained the acronym.

5:41It's Non-Volatile Memory Express.

5:43I think it is.

5:44I think it's down in here.

5:45Yeah, there it is.

5:46Non-Volatile Memory Express, is what the acronym is.

5:50So I definitely recommend that you read through this.

5:52It's an excellent article, and I would definitely

5:55give it a read through.

5:56Oh, it looks like she's looking right down

5:58to the top of my head, it's probably

6:00what the glare is on top of her glasses there.

6:02The shiny head of baldness.

6:04OK, so when you take a look at this,

6:06though, this is a key statement right here

6:08compared to SATA equivalents.

6:11It will transfer 25 times more data.

6:15And that's just the start.

6:16There's other things that can make this even faster.

6:18It just gives it a higher level of throughput.

6:20You can see all other things that they have down here.

6:22I'll get into more detail on that.

6:24But if you want to know more about NVMe,

6:26this is a great read.

6:27And then switching over here, this

6:28is Microsoft's article on deploying

6:31these types of devices, if I can stop this here.

6:33They can read it, it's docs.microsoft.com,

6:35and you see all the rest or you can just google for the title,

6:38probably be a better idea.

6:39Anyway, this gives you the specific details

6:42on how to make these connections from your host.

6:45I don't have any devices that are compatible with this.

6:48And then for video graphics devices,

6:51then this is shown right here also from Microsoft right here.

6:55And again, you can also google for the title.

6:57But this gives you also the specific directions

7:00in PowerShell commandlets and things

7:01that you'll need to enter in.

7:03And then finally, I'm going to this article right here.

7:05I'm referencing this elsewhere as well.

7:07It's long, but it's in a script that I'm

7:08going to provide for you.

7:10So I'll show you how that works here in just a moment.

7:12This is the one that a Microsoft engineer developed presumably.

7:16It's this Ryan Morash guy who did this.

7:19And thank you, Ryan, if you're out there.

7:21Thank you for writing this because this

7:23is a really good script.

7:24Let me show you how this works out.

7:26So I just put this in PowerShell ISC

7:28and I referenced-- and this is available for you on Nugget lab

7:31in our student download files.

7:33I reference the URL there if you want

7:36to go there directly yourself, and that's probably a good idea

7:39as well because this might get updated.

7:40But anyway, if you want to see what devices locally

7:43are going to work for you in discrete device assignment,

7:46this script will identify them for you.

7:48Now, this will not work initially.

7:50So for example, if I hit the big green Play button right up

7:53here, it says, oops, it won't run.

7:55It didn't really say it in a word,

7:57but it says right down here, cannot be loaded

8:00because running scripts is disabled.

8:03So it's restricted.

8:04That's the setting that I have.

8:06So if I want to find out why that didn't

8:07run in terms of scripts anyway, I

8:08could go to good execution policy

8:10and hit the little green button over here

8:12to the right or hit F8, and that says, yep, sure enough.

8:14That's why because it's restricted as you

8:16can see right down here at the bottom.

8:19Now, what's that about?

8:20Well, normally, you don't want your operating system

8:23to run scripts just unrestricted,

8:26because malware could infect your computer,

8:28and a script is completely powerful.

8:30It can completely overwhelm and take full control

8:33over your machine, or to do something discrete and slide,

8:38and maybe plant some kind of malware that you're not aware

8:41exists.

8:41Lots of different kinds of things.

8:43So what you could do is you could run this unrestricted.

8:46And if you do that like I'm going to do right here,

8:48I would only do that temporarily.

8:50Don't just do that and then forget about it.

8:52Just make an unrestricted, run the script you want,

8:54and then turn it back on to restricted, which

8:58is what I've got down here.

8:59The other option there, there's another one that's all signed.

9:02You can also do all sign, and that would only

9:06allow scripts to run that are signed with a respected

9:09signature.

9:09OK, so I'm going to make this unrestricted,

9:11and I can just do this to all.

9:13But it's really only one thing anyway.

9:14So I'm going to do that one and then

9:16I'll do another get execution policy.

9:18Now I can see that it is indeed unrestricted.

9:20And then I'm going to run this script from the Microsoft

9:24person that wrote this, and we'll see what kinds of things

9:27will work on my computer if I wanted to use them.

9:30Now, I've run this in advance so I can tell you in advance.

9:33I can't actually use anything that's here,

9:34but it does show some things that at least have

9:37the capability of running.

9:38This USB Type C port policy controller, that one

9:42would work.

9:43And by the way, you do have to know the location of that.

9:46This will also be mirrored in Device Manager

9:49if you look at that.

9:50But what you have to have there is MMIO gap space,

9:53not all devices require it, but some do.

9:55And by the way, MMIO is Memory-Mapped I/O.

9:59OK, so anyway, yeah, so I could do that.

10:01But if I use this USB controller to demonstrate that,

10:05then it will disconnect my camera, and my mouse,

10:08and keyboard.

10:09So that can't be done.

10:10Likewise, if I scroll down here, this one

10:13disables the tablet that I use to draw on

10:15and everything like that.

10:16So I can't use the ones that we see down here.

10:19But you'll see what it looks like, at least if you have

10:22devices that are compatible.

10:23And again, it's designed mostly for server-level hardware.

10:26And then before we conclude here,

10:28I should point out some limitations here

10:29with virtual machines using Discrete Device Assignment.

10:33First of all, you cannot use Save or Restore.

10:35So you know how you can right click on a virtual machine

10:37and save it?

10:38That same kind of an idea there.

10:40You don't have that capability.

10:42Of course, since you can't save it, you also can't restore it.

10:45Also, there are no live migrations in order

10:47to move a virtual machine to a different host, for example.

10:51You do not have the capability of using dynamic memory.

10:53So you're going to have to be sure you carve out

10:55enough memory in advance.

10:57And you cannot put one of these virtual machines in a high

11:00availability cluster.

11:01But there you have it.

11:02That's using Discrete Device Assignment in a virtual machine

11:05allows direct access to those hardware

11:08devices for very high performance.

11:10I hope this has been informative for you,

11:12and I'd like to thank you for viewing.

Configure VM Resource Groups

0:00[MUSIC PLAYING]

0:09Hey.

0:09Let's take a quick poll here.

0:11How many of prefer more work?

0:14Raise your hand.

0:15Yeah, not too many of you, a couple of you over there.

0:18I'm not sure what's the matter with you guys.

0:20Anyway, how many of you prefer less work?

0:23Yeah, just about everybody raised their hand

0:26when I asked how many of you preferred less work.

0:28Well, if you preferred less work,

0:30then VM Resource Groups is for you.

0:33You see, when it comes to virtualization--

0:35and we've been playing around with a couple of machines here

0:38and there, maybe a dozen or so.

0:40How many have I got?

0:41Not too many, but I've got some that Microsoft configured here

0:45from various labs and things, and I've

0:46got a couple I created on my own.

0:48This is manageable in human terms.

0:50It's not that big a deal, but when

0:52you're in a production environment where you've

0:54got a lot going on, bunch of web servers,

0:56you've got a bunch of remote desktop computers

0:59that you're running in here, all that sort of thing,

1:01it could get to be hundreds of machines,

1:03difficult to manage after a certain point.

1:06Even if you use good management techniques and good naming

1:09conventions to find the machines that you want to work with,

1:12it still gets to be a little bit of a hassle.

1:14So, Virtual Machine Resource Groups

1:16will allow you to take repetitive actions,

1:19repeatable tasks, and you can perform them

1:23against a group of virtual machines all at once.

1:26Some servering suggestions for this,

1:28some types of servers that you might want to work with

1:30or machines would be a remote desktop farm.

1:33That's what I'm going to illustrate

1:35when we look at demos in a moment, domain controllers, web

1:39servers.

1:39And, again, that's a really good candidate

1:41for maybe dozens of servers, or hundreds even sometimes,

1:45that all have supposedly the same content,

1:48the same configuration, all that sort of stuff.

1:50So, I want to create repeatable tasks against all of my web

1:55servers, for example, so that I don't have a maverick out there

1:58that's got some kind of a configuration on it that

2:01the rest of them don't have, and then we get a consistency

2:04problem-- it's a hassle--

2:05or a Hyper-V replica.

2:07We don't really talk about that here, I don't think,

2:09in this particular course.

2:10But that's where I have a virtual machine

2:13on a specific host and we can replicate it to another host.

2:17Now, the key to the management here

2:19though, is that there's no UI for it.

2:22You only use PowerShell with this thing.

2:24So here I'm going to embark on using PowerShell

2:27to show you some serving samples of how this might work out.

2:30Of course, PowerShell is very flexible,

2:32a lot of different ways you can work with it.

2:34So you don't have to do everything the way

2:35I'm doing it.

2:36These are just serving suggestions.

2:38So one of the ways you might do it is,

2:39if I've got a bunch of machines that I'm going to be working

2:42with and if they're difficult to type or the names are long

2:46or convoluted or something like that--

2:48and that does get to be the case when you have lots of machines

2:51and you have to make them all unique--

2:52I might want to shorten some of that

2:54up and make variables there.

2:56The other advantage of making the variables

2:58is if I have a repeatable action or a script that

3:01has to reference the same computer over and over

3:03and over again, then I don't have

3:05to keep typing it in there.

3:06I can just use the variables instead.

3:08And in this case, all those variables

3:10are going to be put into a group anyway.

3:13This script, by the way, is available for you

3:15up on nuggetlab.com.

3:15I'm really hesitant to call it a script.

3:17It's just a bunch of separate commandlets

3:19that we've got typed in here.

3:21And then what I'm going to do here

3:22is, I've created a VM group.

3:24But what we're going to do here is

3:26we can use these variables to add

3:27virtual machines to a group.

3:30We're going to then-- and there's the variables

3:32that we got right there.

3:33Actually, let me just run all those

3:34at once right now real quick.

3:36And for what we're doing, it's small enough

3:38that it really won't make much difference if I use variables

3:41or not.

3:41But you can see down at the bottom, it did the commandlets.

3:44Then I could create a virtual machine group or VM group.

3:48So, what I do with that is, this is the beginning of this.

3:51I create a new VM group, and then I name it.

3:54This is an arbitrary name.

3:55Call it whatever you want.

3:56I'm going to pretend as if this is a remote desktop farm,

3:59so I called it RD farm.

4:01And then the group type that I'm creating

4:03is a VM collection type.

4:05Now, there's also another kind, and I've

4:07described it down here.

4:08But there's another type of a group

4:10that you can create here called a management collection group

4:13type.

4:13And all that is, is it's a collection of groups.

4:17So, I might create several different VM groups

4:20of the VM collection types.

4:22And once I've got a few of those,

4:23I might want to manage them under a higher

4:26overarching management group, and that

4:28would be the management collection group type.

4:31So then let's see here.

4:32Let's go down and scroll down a little bit.

4:34Then I need to add the members to the group.

4:36Right now, the group is just empty.

4:37I haven't created it yet.

4:38Let's create it.

4:39So let me put my little cursor up here,

4:41and I'll create that group.

4:43And you can see here the members just have empty braces there.

4:47So in other words, there's no membership there right now.

4:50So what I need to do is to add members to that group.

4:52And I'll go add VM group member, and we'll hit that one.

4:56And then now we will see down here,

4:58as long as I don't see the red letters, I'm pretty encouraged.

5:02So, what I want to do here now is

5:03to confirm the membership also.

5:05Remember earlier when we saw the membership,

5:06it was just the braces, meaning there's nothing in there.

5:09Here we'll confirm the membership

5:10by doing a get VM group.

5:13So I'll run that one.

5:14And we can see that sure enough, in between the braces

5:16are all of the members of this group.

5:19Now, there's a lot of different kinds

5:20of things you can do with this.

5:22You could send a registry value to all of them

5:24simultaneously as a group.

5:26What else could you do?

5:27Send a file or send some files to them.

5:30You can also start up the computers all at once.

5:33Maybe I've got all these in a group for a new website we're

5:36ready to spin up, and once I'm ready to pull the trigger,

5:40I just start up that group and set up

5:43dozens or hundreds of web servers

5:44all at one time using a group.

5:47In this particular case, these are the four virtual machines

5:50that I've referenced there in the script so far,

5:53HYD client one, two, and three, and four.

5:56And as you look at the checkpoints now at the bottom,

5:58there's either none or there's, I think, a default one,

6:00an automatic one.

6:01Yeah.

6:02So there's really not much going on there

6:03in terms of checkpoints.

6:04I'm just going through all of them,

6:05and we see that it's really just mostly empty there.

6:08So now what I want to do is, I could in the UI

6:11here, because it's not too hard, I

6:13could just select all of those and hit checkpoint.

6:16But, again, in a larger environment

6:18where you've got a bunch of scattered machines,

6:21it's much more efficient to put them in a group

6:23and then manage just that group at once.

6:25So what I'm going to do is, to use PowerShell

6:28to hopefully make all of that a little bit more streamlined.

6:31All right.

6:31So we're going to, first of all, create a checkpoint.

6:33It's going to be checkpoint hyphen RM.

6:35That's the commandlet.

6:36VM, we're going to specify which VMs.

6:38If I didn't have this group, then I

6:40would just name the virtual machine.

6:43But instead, since I have the group,

6:45I'm going to put it in the parentheses here.

6:46Oops.

6:47I'm clicking and dragging.

6:48You don't want to do that.

6:49I'm going to get the group of RD farm and its members,

6:53and I'm going to name the snapshot.

6:55Let's say before new app.

6:56Maybe I was ready to deploy an app.

6:57We already tested, of course, because that's

6:59what we do as administrators.

7:01We're not reckless.

7:02But anyway, just in case it causes

7:05some unexpected bad behavior, we're

7:08going to create a snapshot called before new app.

7:11So now I'm going to go ahead and run that.

7:13I think there's going to be a progress bar-- yeah,

7:15there it is-- that you can see here

7:17it's creating these checkpoints for me.

7:18And wow!

7:20Lickety split, it just creates all those checkpoints.

7:23Geez, who says lickety split anymore?

7:25How old am I?

7:25Anyway, so let's go back to these virtual machines now,

7:28and now you can see, sure enough, if I go back up here,

7:31there's the before new app checkpoint.

7:33There's this one, before new app, before new app,

7:35before new app.

7:36You can see they all have this before new app checkpoint that

7:40has now been created.

7:42And then now let's imagine that, sure enough,

7:45that app, it crashed and burned on us,

7:47caused a big catastrophe.

7:49We're all up at 3:00 in the morning

7:51trying to figure this thing out, and we said, oh heck with it.

7:53Let's just go back to before the new app.

7:55So, we're going to now restore the virtual machine checkpoint,

7:58and we hit the run selection there.

8:01It's going to then restore them.

8:02I could force it, but I'm just going to say yes to all

8:04now, since the UI popped up there anyway.

8:07And then now they should all reappear.

8:09And then if I had actually made a change,

8:12then it would go back to that previous snapshot.

8:15Now, what else I could do, is maybe

8:17I'm trying to save some space, and we've

8:19got a really old crusty checkpoint that's

8:21taking up a lot of space.

8:22We're 100% confident, I hope, that we're never

8:26going to need it anymore.

8:27And maybe it's this before new app item.

8:29It's no longer relevant.

8:30So, now what I'll do is, I'll run that particular line.

8:33And we see that it is now deleting it all,

8:35and it's mostly the same lingo.

8:37It's restoring.

8:38It's removing.

8:39And then as I go back over to my virtual machines, HYD client

8:43one, two, three, don't see the checkpoint there anymore.

8:46Yep, sure enough, that's gone from all of those.

8:48By the way, while I'm here, let me remind you again

8:51that there's no UI management for the VM resource groups,

8:54so there's no way to tell just by looking, oh yeah,

8:56these four, they're in a specific group that I created.

8:59Not going to be able to tell it by looking at that.

9:01You're going to have to, again, depend upon PowerShell in order

9:03to also know what the memberships are.

9:06But anyway, now let's say that I don't need that group anymore,

9:09and we're decommissioning everything or something.

9:11Then I can delete that group, but you have

9:13to remove the membership first.

9:15You can't delete the group and it automatically

9:17remove all the memberships.

9:18By the way, it doesn't delete the virtual machines.

9:21It just deletes the membership, thankfully,

9:23because that could be catastrophic

9:26if you didn't understand that.

9:27So, anyway, I'm going to remove the group members.

9:29And you can see, again, the language right through here.

9:32I think that will explain itself.

9:33And then I'll hit the button right there,

9:35and it's now removed those members.

9:37If you want to confirm though, let's

9:39go back up to the get membership, get the VM group.

9:42And we can see that it now goes back to just the braces there.

9:46So, there's no membership at all there.

9:48And then if I want to remove the group, pretty simple.

9:50I can just remove the group like this.

9:52And I'm using force here, just so it doesn't prompt me

9:54with the yes/no.

9:55But it doesn't really matter too much for our purposes.

9:57I'm just showing you how you could use it.

9:59So, now I've run that, and now that

10:01deletes that resource group.

10:03So, there you go.

10:04That's how you can create less work for yourself by using

10:08these VM resource groups.

10:09Don't tell your boss about it.

10:11Tell them you're working 80 hours a week still.

10:13But hopefully you'll save some time there and get it

10:15down to 75 hours a week.

10:16All right, I hope this has been informative for you,

10:18and I'd like to thank you for viewing.

What's next?

Ready to keep going?

For your team

Bring this training to your team

See how CBT Nuggets helps IT teams close skills gaps, hit compliance targets, and prove training ROI.

Request a Demo

Just need Hyper-V? Enroll from $300/yr (5 skills)

Request a Demo