Updated: Nov 13, 2019
I receive a lot of questions regarding how complex virtualization is & if it is truly necessary. For those that don't know, virtual machines are multiple computers/servers known as "guests" that run on one set of physical hardware. The process of virtualization consists of converting a physical machine into a virtual one. There are different types of virtualization technology which includes, full, para & OS-level.
As far as main differences in each virtualization technology:
Full: Guests are completely independent & unaware of one another so careful configuration is needed as there is a need to be aware of the host machine's resources to avoid unstable performance or disrupting other systems
Para: A newer technology where guests are aware of one another & how much resources each one uses. Less configuration awareness needed
OS-Level: No hypervisor application as the OS has built in virtualization features. Things similar to this includes Windows 7's "XP Mode" which created a virtual Windows XP OS sandbox to run applications within except normal OS-level virtualization only allows the running of the same OS as the host. Extremely limited in terms of capabilities.
The types of environments include fully virtual or hybrid. Hybrid consists of having physical servers along side a virtual host. Hybrids are usually the result of not being able to fully virtualize an environment for various reasons whether it be legal, financial, or staff limits. A fully virtual environment consists of one of more physical hosts such as vBlock & all servers running from inside of it.
Each has their pros/cons, but my main focus here will be to answer more general questions. In modern infrastructure yes, virtualization is better, but it depends on the situation. If you're in certain high security areas like finance, legal, or insurance then your hands might be tied as far as the legality of using hosted virtual machines or virtual machines at all since you're handling extremely sensitive client data.
Here are the pros & cons of virtualization:
Cost effective as it saves on power usage, facility square footage, etc.
Less complex network & data storage structure
Easier to manage
Less downtime due to physical failures
Depending on the size & uniqueness of your organization virtualization can be a complex, lengthy process
Licenses can be costly
Software licenses tied to machine hardware may not work
Older applications may not be supported
First off the immediate affect of virtualization is the savings on square footage & power as not only will you be using very few servers, but with all of that empty space you no longer need a huge data center. However vendors are aware of this & factor your savings into their pricing. This is one of the reasons why VM software or hosted services can seem pretty steep. There's also much less overhead. You no longer need multiple system engineers to manage your data center nor do you have to worry about mechanical parts failing if you're using internal flash storage or a flash VSAN. This leaves more time to focus on more critical issues such as upgrading other systems like telephony/VOIP that tend to be neglected.
"The process of virtualization can be a bit tricky & get lengthy depending on the size or uniqueness of your organization."
Your network will also be less complex as servers need only one virtual network adapter. Physical host devices like a vBlock have built in redundancy (4 physical network adapters, 4 storage arrays, etc.) so you can rest assured if one part goes down. The less complicated IP tables & assorted network equipment means network planning is a breeze compared to managing hundreds or thousands of physical servers.
VM tools are also integrated into the software so you don't necessarily have to download extra tools in-order to work on virtual machines. Need to hot swap a CPU or add memory to a VM? I can be done in seconds without having to shut down the machine. Need to remote into a machine? Remote viewing is integrated into things like vCenter or Workstation Pro. In a fully virtual environment you may have to use traditional remote desktop tools when using 4k resolution monitors as by default VMware's Hypervisor/ESXi's virtual graphics adapter only goes up to 2K resolution by default as it doesn't detect the ESXi host's host when viewing through workstation. However, if you view through the browser it'll detect your resolution.
The process of virtualization can be a bit tricky & get lengthy depending on the size or uniqueness of your organization. For example warehouse software is something that companies typically don't update & is usually tied to physical hardware to avoid piracy issues so this type of software is the first to run into issues with virtual machines. As time has gone on virtual machines have gotten to the point where they can give full access to the host's physical hardware or emulate actual physical hardware (such as being able to assign an Intel Xeon Platinum 8276) which has improved the license situation. Although you should still check with your vendor as their software still may not work & letting a software gain full access to the host's physical hardware may affect other applications.
For some enterprises full virtualization may take years to complete as the process of converting several hundred physical servers then recycling or securely disposing all of the equipment can be time consuming. Negotiating licenses can also take a bit as well as some vendors require different licenses for virtual machines. As you're doing inventory you'll also be looking to see what you can get rid of which will lead to a lot of waiting until contracts expire before dumping unnecessary systems or switching to alternatives. A skilled, decently sized IT team can handily work through all of this, but those that are understaffed may struggle.
Overall virtualization is a great, cost effective opportunity to move onto better performing flash storage, giving your IT team the time needed to focus on more important issues or expand their skill set. If you're mindful of the software in your environment, it's compatibility with VMs & the legality of using virtual machines or hosted services you'll have less headaches as you transition. A fully virtual environment can be a big commitment & notably difficult to achieve in high-security industries so most settle for a hybrid environment. In the end virtualization is definitely worth it, especially when it comes to future proofing.