There are several types of virtualizations, each serving different purposes and operating at different levels of the technology stack. Here are some of the main types of virtualization:
Server Virtualization:
Server virtualization involves dividing a physical server into multiple virtual machines (VMs), each running its own operating system (OS) and applications. It allows better utilization of server resources, consolidation of multiple physical servers onto a single physical server, and improved scalability and flexibility.
Desktop Virtualization:
Desktop virtualization, also known as Virtual Desktop Infrastructure (VDI), involves hosting multiple desktop environments on a centralized server or data center. Each user accesses their own virtual desktop remotely, providing flexibility in device choice and simplified management of desktop environments.
Network Virtualization:
Network virtualization abstracts and virtualizes network resources, such as switches, routers, and firewalls, creating virtual networks that operate independently of the physical infrastructure. It enables the creation of isolated virtual networks for different applications or tenants, simplifies network management, and improves scalability and agility.
Storage Virtualization:
Storage virtualization abstracts physical storage devices and presents them as logical storage units, decoupling the logical view from the physical infrastructure. It allows for centralized management of storage resources, enables features like data migration and replication, and simplifies storage provisioning and allocation.
Application Virtualization:
Application virtualization encapsulates applications from the underlying OS and hardware, allowing them to run in a self-contained environment.
It enables applications to be isolated, portable, and run on different operating systems without conflicts or dependencies.
Operating System Virtualization:
Operating system virtualization, also known as containerization, involves running multiple isolated instances, called containers, on a single host OS. Each container shares the same OS kernel, but has its own user space, providing lightweight and efficient virtualization for deploying applications.
GPU Virtualization:
GPU virtualization allows sharing and virtualization of Graphics Processing Units (GPUs) across multiple virtual machines or users.
It enables efficient utilization of GPU resources, allowing multiple users or VMs to access the GPU for accelerated graphics or compute workloads.
These are some of the prominent types of virtualization, each specific aspects of IT infrastructure and application deploys depending on own requirements, may utilize one or more of these virtualization technologies.