Server virtualization, private, public, hybrid cloud, Saa, PaaS..etc. anything related to virtualization is an old topic nowadays. Everyone is exposed to virtualization and the cloud if you take any organization from small to high multi-million businesses. As a decision-maker in the organization, you must know the disadvantages of server virtualization if you start or invest from scratch.
Virtualization offers many advantages, but a few disadvantages should be considered. I have been working with private clouds and public clouds like Azure for the last many years; based on my experience and research, this article outlines the disadvantages of virtualization. Although the disadvantages are minor compared to the advantages, they should be considered when using them in a production environment.
This list is mainly going with server virtualization. Desktop virtualization on your physical computer or testing environment is not critical since it has no critical servers or applications. But, regarding server virtualization in a production environment with highly critical servers, you must also consider the disadvantages.
Server Virtualization Basics
Server virtualization is a great technology for businesses of any size as it increases efficiency, reduces costs, and provides scalability. It also introduces a level of agility that can be applied to different aspects of the business, such as development and test environment needs.
The overall concept behind server virtualization is quite simple: divide one physical server into several virtual environments to better use the available resources. Also, this technology allows multiple Operating Systems and physical servers to be consolidated into one unit, such as a cluster – we discussed the Hyper-V cluster earlier. In addition, server resources are effectively masked from other users to ensure secure access at all times.
Now let us discuss the main disadvantages of server virtualization in the production environment.
List of Virtualization Disadvantages
1) High Risk of Physical Failures
It is great to host your critical five servers/applications (as virtual) in one physical server. But, have you imagined the impact of these five servers by a single hardware failure? It will put all five important servers/apps offline. It’s a big disadvantage and drawback in virtualization that must be considered in the production environment while planning.
You can use multiple physical servers with similar configurations and centralized storage (Network Access Storage – NAS) to run these five virtual servers in a cluster environment where a single physical server failure will not impact the virtual servers. But, it involves high costs and a complex setup. Cluster and private cloud management and efficiency have been greatly improved in the past years on every hypervisor product, such as Hyper-V and VMware.
For example, the above server setup is a real-world example of where I’m working. These two servers are hosting 15 virtual servers now. Hyper-v server virtualization software runs in a cluster environment; these two servers access centralized storage. Therefore, if one physical server goes down for some reason, the second server will take care of all 15 servers.
But the issue is that these two servers are running next to the next in one chassis. If this chassis or power supply goes down, then both physical servers with 15 virtual servers will go down simultaneously.
It is also a high safety risk; for example, if this rack or server catches fire, all 15 servers can’t be accessible. Luckily the backup and DR system will play a role in recovering the virtual machines, but it will take time to restore on different hardware and start the servers.
This is just an example and may not be the same scenario for you. I’m just illustrating the high risk of physical server fault when you stack more VMs on a single host.
2) Is Performance the Same? – Degraded performance
I always have had doubts about this from the beginning to now. Let’s say that you have allocated 4GB RAM and two virtual CPUs of 3GHz to a virtual server that will be used as a web server. My question is, will the server and application perform like running on a physical server with the same 4GB RAM and 2 CPUs of 3GHz? I doubt that.
The problems posed by degraded performance in virtualization are highly expensive and difficult to solve. Not only can capacity planning be inaccurate in predicting how many extra resources will be needed to run an application virtually, but certain applications cannot handle the stress of running on a virtual platform. This is true even if they perform perfectly fine on physical servers.
There will be certain performance drawbacks in a virtual environment compared to similar hardware in the physical environment. Since we get various other benefits, we often omit this performance issue. You must consider this factor while planning and allocating virtual servers.
Collecting and monitoring logs from the guest and host Operating Systems can give clear insights into the performance.
3) It’s Not Easy – Complicated
Yes, setting up and managing the virtual environment with highly critical servers in a production environment is not as easy as managing physical servers. If you are an expert in PC hardware, you should be able to manage most of the server hardware and configuration aspects in Intel-based servers.
Unfortunately, that will not be the case in the virtual environment. To work with them, you must have special knowledge of VMware, Hyper-v, or Xen server virtualization software.
You would find a similar setup in most physical server brands such as Dell, HP, etc. But server virtualization software like VMware, Hyper-v, and Xen are different, and you can’t work on all with the same knowledge. Special skills and knowledge are required to work with server virtualization products.
4) Virtual Machine Sprawl
Virtual servers are a great and easy way to manage different types of server applications. With only a few clicks, you can create and install a new virtual machine based on a master image.
However, this can backfire sometimes. It can lead to an overwhelming increase in the number of virtual machines running at any given time, referred to as “virtual machine sprawl”. This can be caused by a lack of oversight or inadequate staff to manage the new machines being created regularly.
Not having proper management over virtual server usage leads to inefficiency concerning resource allocation and performance—more resources than necessary may be used, resulting in higher costs. Reducing sprawl can have many positive effects, such as providing better clarity over current asset usage and ensuring optimal performance from all virtual systems due to fewer competing resources simultaneously.
To prevent such unmanageable growth of VMs in your environment, someone should be responsible for monitoring virtual machines and ensuring that the company does not surpass its physical capability for running them.
5) Not Supported by All Applications
Some core applications, including a few database applications, are not ready for virtualization yet. Sometimes your applications or Operating Systems may face issues and act differently in the virtual environment without giving any clues.
It would be best to consider this while planning your server Operating Systems and application implementation; make sure it’s certified and fully supported to virtualization 100%.
6) Server/Application Security
Server security is an ongoing challenge for both physical and virtual infrastructures. Securing virtual servers becomes even more complex due to their setup on the same hardware/storage. Since we quickly create and forget a VM, it won’t be easy to apply proper security measures continually.
Luckily, modern security applications related to server virtualization can help provide much-needed security if integrated with an inventory system that keeps track of all active servers. This integration allows the security program to access accurate information regarding all current virtual servers to protect their data stores using its best efforts successfully.
As an IT administrator, you should monitor and manage all VMs, either critical or non-critical, to ensure the eniter security of the host server.
7) New Management Tools
You need some new management tools when you have a server virtualization technology and want to maintain high standards and reduce the risk of failure. It can add additional complexity and license cost to any virtual infrastructure. But it is essential to have new management tools and processes in place to ensure the system is running at optimal performance.
The cost can be a significant disadvantage of server virtualization. Though there are many ways that virtualization can save money on hardware costs, in many cases, the associated software licenses, storage requirements, and other costs associated with setting up and maintaining a virtualized environment can exceed the cost of physical servers.
Also, new learning skills are required to manage a virtual environment. A good IT team should know the basics of server hardware, but in a virtualized environment, they must also become familiar with the associated software and learn new ways to manage and troubleshoot servers. This may require additional training or hiring new personnel with the expertise needed to manage virtualized environments.
If you are an IT person deciding on virtualization as a solution for your production environment, it’s always better to consider the disadvantages. Virtualization has a few limitations you or your company can’t manage; in this case, physical servers are the best solution. For best practices of SQL server virtualization, check this article from SentryOne.
You May Ask:
What are the disadvantages of data virtualization?
The main disadvantage of data virtualization is that it can create significant performance and scalability issues as the data traffic grows. Additionally, data virtualization can lead to a lack of control over the source/target systems and further increased complexity when replicating or migrating from one platform to another.
What are some of the disadvantages of virtual networks?
Some disadvantages of virtual networks include potential security risks, decreased performance due to remote access, and potential compatibility issues if using multiple systems. Additionally, virtual networks can require more maintenance and support for configuration, which can be costly and time-consuming.
Which is not a benefit of server virtualization
Reduced cost for hardware upgrades.
What are the risks of virtualization?
The risks of virtualization include the following:
- Data breaches
- Downtime Resource over-allocation
- Scalability issues
- Difficulty managing multiple technology platforms
- More expensive than traditional computing environments due to additional licenses and hardware costs.
Having the proper backup, redundancy, failover, and load balancing can minimize the flaws in virtualization technology.
HI Dinesh,
I agree with you for some points which you highlighted. virtualization is not a technology to run the complete production. We could be benefited only if we use that in mix mode. Technically & cost effectively. Also yes , We know we cant run each & every server on a V- environment
1) Regarding the Risk factor you mentioned, yes there is a risk of falling down the Host , So guests will be down automatically. So depending on the criticality we should split those servers in to different enclosure & Racks. Thats simply Criticality Vs Investment.
2 Is Performance Same ? – Yes for servers which we do not stress the server , No for high utilization applications . So we should know what we should make online in virtual environment. Eg – Its not a good idea to run production Terminal Server as a V – guest.
In any technology we have Plus , Minus & good & bads. so we should mix products to get the max output to the production.
Hi Dinesh Jitendra Here
I Do Agree there are some disadvantages on virtualization.
I feel virtualization technology fits more for DTV is (Desktop Top Virtualization).
For example In an organization where they don’t want to invest more on Desktop Machine, ie If they want to buy 250 desktop there investment is more, In this case virtualization helps them.
Just they can create vm’s on vmware esx box where all vm’s are stored in san. Just This vm’s are published or Streamed via Citrix DDC. (Desktop delivery Controller). Here on client side there will be no hdd os get booted without hdd, here thin client box are used like which comes from sun or Wyse . Here os and applications are installed in centerlised location and streamed to thinclient box.
But on server virtualization we need to think more and do more rnd before putting to production environment.
For Example
Your Domain controller can’t be virtualized.
Your Huge Data Base of SQL can’t be virtulized.
I think virtualization is the only way forward when it comes to datacenter management. Agreed, that you need a different set of skills but the benefits far outweigh the drawbacks. As far as performance is concerned, you’re only talking about CPU here, but in my opinion, the bottleneck is modern servers is not the CPU, it is the IO subsystem and as long as your physical server can handle the IO load, everything will be fine.
Hi, I have found your blog when searching how to use physical disk in Virtualbox 😛 Not the best software for server virtualization but I don’t really have choice (Windows Host).
Anyway, I read your article about virtualization and it’s very interesting. I have a wonder about the point n°2: Intel VT-x / AMD-V are designed to give “full access to CPU” on a guest, and virtual memory is a cluster of physical memory. So isn’t it possible to have full performance ?
Agreed with the fact that virtualization does put all your applications if NOT executed correctly. A highly available virtual storage does have the capability to recover from the disaster that you are mentioning in the article. SCVM offers setting up a virtual environment that supports highly available infrastructure.
Hi Dinesh,
I agree with you for some points which you highlighted. virtualization is not a technology to run the complete production. We could be benefited only if we use that in mix mode. Technically & cost effectively. Also yes , We know we cant run each & every server on a V- environment
1) Regarding the Risk factor you mentioned, yes there is a risk of falling down the Host , So guests will be down automatically. So depending on the criticality we should split those servers in to different enclosure & Racks. Thats simply Criticality Vs Investment.
2 Is Performance Same ? – Yes for servers which we do not stress the server , No for high utilization applications . So we should know what we should make online in virtual environment. Eg – Its not a good idea to run production Terminal Server as a V – guest.
In any technology we have Plus , Minus & good & bads. so we should mix products to get the max output to the production.