I wrote an informative essay for my dual-credit English 101 class senior year of high school. It’s aimed to be fairly comprehensible description of what virtualization is when it comes to computers, how it works, and why we use it. I wrote it in the hopes that non-tech-savvy people could understand it, and my professor said that I didn’t do a bad job. It may be worth a read:
Zachary Kline
Mr. Lister
English 101
October 2018
Virtualizing the IT Infrastructure
Almost all of society uses computers everyday in some way or another. The vast majority of our time on these miraculous machines is spent interfacing with other computers throughout the world, whether that be by watching Youtube, talking with your grandma through Facebook, or simply updating your Twitter status. Each of these actions is carried out not only by your computer, but also by another computer — often referred to as a server — at Youtube, Facebook, Twitter, or some other company with an online presence. With the billions, even trillions of requests for data each day by users around the world, how do these companies’ servers keep up with the immense demand? One word: virtualization. Virtualization has been a buzzword for the past two decades when it comes to building IT infrastructures. Virtualization provides several benefits to organizations looking to build a reliable online presence, including incredible speed upgrades, reliability, and ease of administration.
Before we look into all of the awesome possibilities that come with virtualization, let’s talk about what it actually is. Virtualization is a concept that is meant to abstract hardware. In other words, it means that you don’t need to run a completely separate hardware platform if you want to run a completely separate set of software. Hardware refers to the physical components of a computer, like the motherboard. Software refers simply to the programs and operating system run on the hardware. So to put this all together, virtualization allows you to make several emulated, or virtual, computers on a single physical machine, where different sets of software can run independently from each other (“What is virtualization?”). You can’t touch these computers like real ones, but you can access them over the network. That’s not so different from how you normally use the Internet: you don’t go and press the power button on Youtube, you merely access it over the network.
Virtualization has several speed benefits. In a traditional network, where you have separate computers running on separate pieces of hardware — this would be places like your house, where you’ve got phones, laptops, and desktops — they require a physical connection between them to communicate, typically through ethernet. But in a virtualized network, you don’t need to worry about buying the fastest ethernet router or latest cables. In a virtualized network, the “computers” are all run off the same motherboard, processor, hard drive, etc. This means that, instead of information needing to travel through several meters of thin wire and ethernet ports, it just moves inside the computer to where the other virtual machine can access it. This can be seen in Digital Ocean, a company that allows you to rent virtual servers for the use of running websites, databases, and video game servers. They have a feature called Private Networking (“Introducing Private Networking”). Say for example you’ve rented two virtual machines running inside their New York datacenter. By enabling Private Networking, you add the ability for these two virtual machines to communicate with each other, reaching much greater speeds than what you’d be able to achieve through the normal internet. This is because, instead of needing to travel through physical wires, the data needs to merely be moved inside the same physical computer, a much shorter distance.
Speedy communication is extremely important in today’s society. People are impatient; they always wants to load their latest Youtube feed, quickly pull up a Google search, or check their Snapchat in just a few seconds. But what people don’t always consider is that they’re not only looking for speed, they’re looking for reliability. On October 16th, 2018, Youtube went down for a whole hour (Choi). Not only were people not able to load the latest Youtube feed quickly, they weren’t able to do it at all. This is significantly more annoying that having to wait an extra few seconds for it to load. Reliability expectations like that can only be achieved through the idea of redundancy, where you have backup equipment in place so that if your main systems fail, your business can keep running. This is a process called failover (“What is Failover?”).
Although Youtube did have a failover system in place, there was an unfortunate incident where both their main systems and failover equipment failed at the same time. Virtualization makes failover easy to implement. Normally, failover is expensive to achieve; you have to buy completely separate servers, pay for extra electricity costs, and train professionals to properly configure the backup equipment to take over when the main systems fail. But with virtualization, failover becomes a lot simpler. Proxmox, a software that manages virtual infrastructures like this, has a feature called High Availability (“Proxmox VE Administration Guide” 197). In a High Availability cluster, you set up two or more servers that act as one. If one of the servers goes down due to some hardware failure, like an old power supply or an overused hard drive, the other one completely takes over without a hitch; there are no reboots, and no downtime. The two servers shared the load of running the virtual machines, but they were both capable of running the whole thing by themselves at any given time.
But this is all very complicated. The sheer number of computer theory classes one would have to take to build a system like this is insane… right? Well, no, not anymore. Proxmox deals with all the heavy lifting of setting up a High Availability failover cluster, and Digital Ocean does all the work in building a high-speed private network; virtualization is made to be extremely easy to use. Since virtualized infrastructures are run by a single central piece of software, called a hypervisor, system administrators are able to use this software to quickly and efficiently deploy new computers and networks with just a click of a button. Digital Ocean in particular actually brags that you can set up a virtual computer in less than 60 seconds, and being a customer of Digital Ocean myself, I can attest that I’ve done it in merely 15 seconds. This simplicity allows administrators to be able to quickly resolve any problems with the network, allowing them to spend more time developing systems to increase reliability and speed.
It’s easier to understand why people are so enthralled with virtualization. The concept is complicated, but its possibilities are endless. Virtualization allows businesses to set up complex infrastructures to serve their needs faster, more reliably, and easier without needing to buy loads of new computers.
Works Cited
Choi, David. “YouTube went down for over an hour during an abrupt worldwide outage.” Business Insider, 16 Oct. 2018, https://www.businessinsider.com/is-youtube-down-on-tuesday-night-2018-10. Accessed 25 Oct. 2018.
“Introducing Private Networking.” Digital Ocean, 9 Sept. 2013, https://blog.digitalocean.com/introducing-private-networking/. Accessed 23 Oct. 2018.
“Proxmox VE Administration Guide.” Proxmox, 8 Aug. 2018, https://pve.proxmox.com/pve-docs/pve-admin-guide.pdf. Accessed 11 Oct. 2018.
Rodríguez-Haro, Fernando. “A summary of virtualization techniques.” Procedia Technology, vol. 3, 2012, pp. 267-272.
“What is Failover?” Techopedia, https://www.techopedia.com/definition/1202/failover. Accessed 25 Oct. 2018.
“What is virtualization?” Red Hat, June 2018, https://www.redhat.com/en/topics/virtualization/what-is-virtualization. Accessed 11 Oct. 2018.