Join Timothy Pintello for an in-depth discussion in this video What is virtualization?, part of Configuring Windows Server 2012 R2 Hyper-V.
- In this course, we will be talking about Microsoft's Hyper-V . Hyper-V is Microsoft's solution for virtualization. However, before we can talk about Hyper-V, we need to discuss exactly what virtualization is. A good definition of virtualization is this, "virtualization is the act of creating a virtual, "rather than actual version of a device or resource, "such as an operating system, server, storage device, "network, or network resource, "where each virtual construct "is its own execution environment." Basically, what that means is we can take a single piece of hardware, a single hardware server, and put multiple operating systems or servers or storage devices or whatever on that single physical server and each one of the operating systems or other elements we place on that server is then able to act independent of any of the other elements that are part of that virtualized environment.
Virtualization gives us a number of advantages. One thing virtualization does for us is it allows a maximum usage of hardware resources. To put this in perspective in a traditional server setup, the server actually only uses about 10% of the total resources available to that server at any given time. Virtualization allows us to maximize those hardware resources, so we can use significantly more than just 10% of the resources available. One of the ways virtualization allows us or is able to do this is by allowing one hardware server to support multiple operating systems.
Furthermore, each one of those virtual operating systems supported by that hardware device can also have their own applications. In other words, if I place a virtual operating system inside a virtualization server, I can also install the application such as Word or Office that that virtual operating system will need. It will be able to execute those applications from within the virtual operating system. Virtualization also allows for the server, that is managing the resources, to be able to manage the resources of all the virtual operating systems that are running on that server.
It's able to do this with a single tool rather having to go into each individual operating system and manage it from within the operating system's virtual environment. Finally, another advantage of virtualization is that virtualization allows to have remote access to the virtual operating systems that we have running in our virtual environment. Based on what this means is a person can log in across the internet or across a network or however you have it setup and they can actually access the operating system and any application that operating system needs remotely without having to have that operating system or the applications installed on their local computer.
This will allow you to, for example, run Office from a tablet because all of the heavy work of the Office operating system is being done by the virtualization server on the other end. When we're talking about virtualization and we're talking about virtual operating systems. What we're really talking about are virtual machines. These virtual operating systems are treated by the virtualization server as if they're all each independent separate machines. And each one is given its own memory space, so that any applications whatever that machine needs can be running in that memory space and will not be able to interfere with virtual machines running elsewhere on the same virtual server.
Virtual machines can also access shared resources. While virtual machines have their own memory space so they don't interfere of each other. At the same time, you might have a resource such as a printer, that you want multiple machines to be able to access. And so, the virtual machines are able to be set up in such a way that they can all access the separate printer resource independently without interfering with the operation of the other virtual machines. And this is one way in which virtual machines can be used to access shared resources.
When we have multiple virtual machines running in a single virtualization server, we can actually configure those virtual machines in such a way they can form their own network within the virtualization server. So, instead of having a bunch of computers in a bunch of different places connected by wires or radio or whatever, we can have all these virtual machines inside one server and they can connect to each other using something that's called a virtual switch. The virtual switches allow each virtual machine to talk to the other virtual machines in the same way that a physical switch allows physical machines to talk to other physical machines on the network.
The virtualization server is able to do this because it's able to manage multiple virtual machines at once. In fact, even multiple virtualization servers can be managed at the same time if each one of the physical virtualization servers is able to connect to the other virtualization servers. One of the ways that virtualization servers are able to run multiple virtual machines is by controlling how many virtual machines are allowed to run at one time on the server. This is determined more by the resources that each virtual machine is using rather than anything else.
This is a way for the virtualization servers to make sure that it does not turn on or try to run more virtual machines than the hardware resources on that server can handle. When managing these virtual machines, they're managed in the same way as a stand alone machine would. Not only does a virtual machine appear to be a separate stand alone machine like an end user would have in front of them on a desk. But even administrators when they're managing them can manage them the same way as well as if they were separate machines administrators have to manage rather than a bunch of virtual constructs inside one server.
The way virtualization is able to do this is with a program called a hypervisor. This hypervisor is a program that basically controls access to the hardware for each virtual machine. In the case of Microsoft, the hypervisor is called Hyper-V. Each VM within Hyper-V or any hypervisor for that matter, can have its own hardware configuration. In other words, I don't have to make a cookie cutter virtual machine that all the other virtual machines have to be like. I can actually give each virtual machine a separate hardware configuration based on the needs of the virtual machine that I am creating.
For example, a virtual machine that's just running Office is going to need a lot fewer resources than for example a virtual machine that might be used to generate graphics or to edit graphics. So I can change the hardware configuration to match what I'm doing with a specific virtual machine. One final thing to keep in mind about virtual machines in the case of Microsoft, is that each virtual machine needs its own license. Just like you can't take one copy of Windows 8 and put it on 20 different workstations. You can't do that with virtual machines either.
If you have 20 virtual machines that need to run Windows 8, you need to have 20 different licenses for those 20 virtual machines that you want to run Windows 8 on.
- Implementing and installing Hyper-V
- Using Hyper-V Manager
- Creating a new virtual machine
- Configuring dynamic memory, smart paging, resource metering, and more
- Creating virtual hard disks
- Managing checkpoints
- Connecting to a SAN
- Creating virtual switches and network adapters
- Creating virtual network configurations