Virtual Machine: PROS
VMs reduce costs. Instead of an application running on a single server, a virtual machine allows you to use a single physical resource to perform multiple tasks. Therefore, you don’t have to buy, maintain and maintain countless stacks of servers.
A single host allows you to efficiently manage all virtual environments with the centralized power of a hypervisor. These systems are completely separate from each other, which means you can install multiple system environments.
Most importantly, the virtual machine is isolated from the host operating system and is a safe place to test and develop applications.
Virtual Machine: CONS
Virtual machines can take up a lot of host system resources because they are several gigabytes. Using one application in a virtual server means making a copy of the operating system and a virtual copy of all the hardware needed to run the system. This adds up to a lot of RAM and CPU cycles quickly.
Moving an application running in a virtual machine can also be difficult because it is always tied to the operating system. Therefore, you must migrate the application and operating system with it. In addition, when creating a virtual machine, the hypervisor allocates hardware resources dedicated to the VM.
A virtual machine rarely uses all available resources, which can make planning and deployment difficult. However, it is economical compared to using separate real computers.