If you are asking yourself the question “What is VMware?”, you have come to the right place. VMware is a company which was founded in 1998. Today, the company has evolved and has many many products and services to offer customers in the Information Technology (IT) industry. When someone is referring to simply “VMware” they are most likely talking about the VMware product VMware vSphere. VMware pioneered the world of data center virtualization, paving the way for the birth of cloud.
Now, let’s break down the answer to the question “What is VMware?”.
What is VMware?
VMware is a software company, and you can find their website here. When we are answering this question, we should be thinking of the type of software VMware pioneered which is hypervisor software. Before we explain how what hypervisor software is, and how a hypervisor works, let’s get back to basics.
The Basics of Computers and Servers
If you think of any computer or server, it can be broken down into three major components:
Compute is the CPU and Memory. I like to put these together in the compute category, since the CPU and Memory work hand and hand in any computer. The compute component of a does work.
Next comes the Network. The network component lets the computer talk to other computers, to receive or send work instructions or the result of work. It is what makes an application an application, it allows multiple computers to work together.
Finally comes storage. We need a place to put the product of the work we are doing. Storage stores the work, for later processing or distribution, or simply because regulations say we must store our work for a certain amount of time.
Any server or computer (or even tablet or phone) breaks down into these components, and it looks like this:
This is a simplistic overview of how a computer works, but it can be be applied to all computers and devices in your data center.
What is VMware? A Hypervisor.
The question “What is VMware?” can be answered with the response “a hypervisor”.
Hypervisor software is special software that allows multiple servers to run on a single piece of hardware. We can take our same computer above, and run multiple “virtual machines” on top of it. The hypervisor software is responsible for things like deciding when each virtual machine can use CPU and Memory resources, and access to the network and storage of the physical server. We often call these physical server “hypervisor hosts” or simply “hosts”.
This is what our physical server looks like after we install the VMware hypervisor on it:
We still have the components we just talked about, the compute, network, and storage, but now we are running many virtual machines on our physical machine.
More About VMware Virtual Machines
Guess what components make up a virtual machine? I am sure you just guessed correctly!
The virtual machine has the same compute, network, and storage components we are used to in our physical machines and other devices. This means it looks, acts, and feels like a physical server. If you logged into the operating system of a virtual machine, you would not be able to tell the difference between the virtual machine and a physical machine. The great thing about a virtual machine is its resources are dynamic. This means we can add or subtract more compute, network, or storage resources whenever we need to. Some operating systems let us do this while the virtual machines are powered on, but some require us to shut the virtual machine down. This process takes only minutes, versus having to order physical hardware components, wait for them to arrive, then install them in a physical machine.
Now back to the hypervisor.
VMware ESXi, VMware’s Hypervisor Software
VMware’s hypervisor is called VMware ESXi. This hypervisor is classified as “bare metal” since it is installed directly on the physical server.
This is great, because it saves space, power, and cooling in the data center. We used to deploy physical servers that were underutilized because we had no choice. This wasted these precious data center resources. It also took a long time when we ordered a new server, since it had to be racked, stacked, and cabled before we could even install an operating system and an application. After we install a hypervisor on these physical servers, we can deploy a virtual machine (also sometimes called a virtual server or guest) in minutes, reducing the time it takes to deploy an application.
This all sound fantastic, but if we are running a bunch of virtual machines on a physical server, what happens if that server fails? What happens if the resources are utilized too heavily on that single physical server – which brings me to my next point.
What is VMware? A Hypervisor and a Management Layer
To protect against these things, we install another piece of software beyond the hypervisor. This special software can be deployed as a virtual appliance, which is a special type of pre-packaged virtual machine that is very easy to deploy. This special software allows for clustering of the compute, network, and storage resources. It is important to note that this does not mean a virtual machine can use resources from two hypervisor hosts at the same time. It means that a virtual machine may run on any hypervisor host in the cluster. Often, we are not even concerned with what hypervisor host a virtual machine runs on, just the cluster.
Here is what a hypervisor cluster looks like.
As you can see, we have many virtual machines running on a group of physical hypervisor hosts.
The special software I keep talking about is VMware vCenter Server. When it comes to VMware, vCenter Server is the brains of the operation. It determines the best hypervisor host for a virtual machine to run on in the cluster, and will move it there to make sure the cluster is performing well. It also protects these virtual machines in case the hypervisor host they are running on fails. In the case of a failure, the virtual machines will restart on a hypervisor host in the cluster that is still running.
If a reboot is not acceptable in the event of a host hardware failure, VMware has the ability to run another copy of the virtual machine in lock step. This way if a hypervisor host fails, the partner virtual machine will simply keep running without any disruption to the virtual machine or application running on it.
Now, let’s put some names to these great VMware features.
The brains that decide which host a virtual machine will run best on is called VMware Distributed Resource Scheduler or VMware DRS. DRS will non-disruptively move these virtual machines around in your hypervisor cluster. VMware vMotion is the method which is used to move virtual machines around.
If a hypervisor host has a hardware failure, VMware High Availability or VMware HA is what restarts the host on a surviving host in the cluster. If this is not enough protection for you, VMware Fault Tolerance or VMware FT will run a copy of your virtual machine in lock step, so there is no disruption during a host failure.
Believe it or not, there are even more advanced versions of the VMware HA and VMware DRS features. VMware has truly evolved over the years into a software suite that almost every IT organization is using in some way shape, or form to deliver services to their customers in a more efficient manner.
What is VMware? A Recap.
VMware is a software company that has a variety of products and services. When we ask the question “What is VMware?”, we are usually referring to their flagship product, VMware vSphere, which consists of two main components.
- VMware ESXi – the hypervisor software that allows for many virtual machines to be run on a single physical machine
- VMware vCenter Server – a piece of management software that allows these physical servers to be placed in a cluster to better utilize resources, protect against hardware failure, and many other features that make life easier for IT organizations.
Some of the hallmark features of VMware that VMware vCenter Server enables are:
- VMware High Availability (VMware HA) – restarts virtual machines in the event a hypervisor host fails
- VMware Fault Tolerance (VMware FT) – runs virtual machines in lock step to ensure a reboot does not happen during a hypervisor host failure, and the application continues to run without disruption
- VMware Distributed Resource Scheduler (VMware DRS) – determines the optimal placement of virtual machines in the hypervisor cluster, then moves virtual machines between hypervisor hosts to optimize performance
- VMware vMotion – the technology that actually moves the virtual machines, which can also be manually invoked.
There you have it! VMware’s software allows organizations to take advantage of their resources in a much better way. They can make the most of their data center power, cooling, and space, and quickly provision virtual servers to enable application teams to do what they need to do to drive business outcomes for their organization as a whole.
VMware really changed the game, and paved the way for cloud as we know it today. Years ago, when I was a VMware administrator, we used to joke that we had been using the cloud for years, and it was true. Without the principles of virtualization, we would not have cloud services today.
Virtualization and cloud are not intimidating technologies when you remember they are all built on the same three components, compute, network and storage. If you want to learn more about how these components relate to the cloud, be sure to read this article.
If you are new to the world of VMware, be sure to check out the article Getting Started with VMware vSphere. VMware provides free 60 day evaluation licenses for VMware ESXi and VMware vCenter server, so it is very easy to install and get started with gaining some hands on experience on how it works.