The definition and history of server virtualization

2023-11-15

What is server virtualization?

Jonathan - Engineering


The modern cloud computing era

In the earlier years, if you needed to get a server running Linux or Windows, you'd order a dedicated server from a company like ServerPoint.com.

This dedicated server was an actual PC computer, running your preferred operating system, which you could access remotely.

Because the entire computer is just for you, you'd have full Administrator access to it, in the case of Windows. Or, "root" access in the case of Linux.

The problem though was that this dedicated server could only run one operating system at a time.

Enter virtualization

Virtualization is a small piece of software, that runs on that dedicated server, and allows you to create "virtual machines" inside the dedicated server. Each virtual machine can have its own operating system, with a specified amount of RAM, disk space, network access and a number of CPU cores it has access to.

Each of those operating systems is isolated from the other; from the perspective of the operating system, it "believes" it is running on a PC of its own.

For example, with Windows running in a virtual machine, it will have a C: drive just like any other Windows, but that C: drive is just a small portion of the dedicated server running the virtualization software.

These operating systems could be a combination of Windows or Linux: it would be Windows 2012 to run your Microsoft Exchange, the latest Windows 2022 for development, and perhaps a Linux Ubuntu 22.04 server to run DNS, or a Linux AlmaLinux based virtual server to run cPanel.

And all of these are running hosted in a single "hypervisor".

The hypervisor

That dedicated server, once it is running virtualization software, is usually referred to as a hypervisor. This is a term that you won't read much about from your web hosting provider, but we use it often internally.

ServerPoint's powerful hypervisors

Our hypervisors are built with dual Intel CPUs, providing at least 40 total CPU cores. With hyper-threading enabled, it doubles the number of cores perceived by the virtualization software, allowing for more virtual servers to be hosted in one single hypervisor.

We usually equip these hypervisors from 512GBs of RAM to over 1 terabyte of RAM.

And as for network access, they all connect to our network via dual 10g or 40g network ports in link aggregation mode for network redundancy.

And we only buy servers from Supermicro Computers.

What are the benefits of virtualization?

  • It reduces power consumption: because most customers use very little resources, if we were to give 50 clients their own dedicated servers, that would easily consume several kilowatts of electricity, but most of those server's CPUs would be idle most of the time, or barely being used. Thus, if we instead gave those clients virtual machines and hosted them in one large and powerful hypervisor, it would reduce power consumption while each client would still get the CPU resources they would need.
  • Easier management: it makes it a lot easier for us to manage less physical servers.
  • Diagnostics: when a client's virtual server malfunctions, we can easily access the virtual server's operating system from within the hypervisor, even if the hypervisor has somehow loss Internet access.
  • Easier for the customer: it is quite easy to perform functions such as reinstalling the operating system, expanding RAM, increasing the number of CPU cores or even increasing disk space with just a click. With a dedicated server, that would require shutting down the physical server, taking it out of the server rack and having a technician change its hardware.
  • Lower price: because the virtual server is only utilizing a small share of the hypervisor, we can sell virtual servers to a customer for as little as $5/mo.
  • Failover: we can easily transfer all clients of a hypervisor to another one, in case of hypervisor failure.

The history

Virtualization goes back all the way to the 1970s, when IBM was looking for better ways to fully utilize the resources of a large mainframe. Ever since then, it has evolved into more advanced, and faster, ways of creating virtual machines.

But today, virtualization is not just software. Built into every CPU from Intel, AMD, Apple, and many others, are physical enhancements to facilitate faster virtualization. Every part of a server nowadays is built with virtualization in mind.

Virtualization today

Today, the most popular hypervisor software programs are KVM for Linux and Microsoft's Hyper-V. Here at ServerPoint, we prefer KVM for its manageability and performance on Linux systems.

What is the performance of a virtual machine?

Virtual machines can be quite fast: an operating systems running within a virtual machine can access RAM, disk, network and CPU as fast as if they were running in a dedicated server on their own.

What is VPS hosting? Virtual machines? Virtual servers? Virtual dedicated server? Cloud servers?

All of those terms are different names for the same thing: operating systems running inside virtual machines. Different companies just like to use different names for it, for marketing purposes. However, again, all are the same. Don't let a company's marketing fool you into thinking that one is superior to the other, as if they were different technologies. They aren't.

What is cloud computing? What is "the cloud"?

There is a running meme on the Internet that goes: the cloud is just someone else's computer. When you put things "in the cloud", they are just being stored in the servers of the company that runs such service. For example, web email services like Gmail is a good example of one of the oldest cloud services: your emails are not stored in your computer; they are stored at Google's servers at one of their many data centers.

If you need servers, whether it is to run an email server, a database for your app, a gaming server, to run Quickbooks, or any of the thousands of purposes a server can have, you have several options:

  • Buy and install those servers at your office: not a very secure place.
  • Buy and install those servers at your own custom data center: you'd have to worry about a reliable power source, humidity control, reliable high capacity Internet connectivity, etc.
  • Lease data center space, buy servers and install them there: you'd still have to worry about server maintenance, repairing servers, reliable high capacity Internet, and many other things to worry about.
  • Or, with a few clicks, pay a monthly fee to access a server at a remote data center; your computing needs are now serviced from a remote data center, something we all call "cloud computing".

How to start

If you have never experienced the convenience and performance of a virtual server, sign up today via ServerPoint's client portal at https://portal.serverpoint.com. You can start with just $5/mo and you are protected by our money back guarantee.