Virtualization

From Wikipedia, the free encyclopedia
  (Redirected from Virtualize)
Jump to navigation Jump to search

In computing, virtualization refers to the act of creating a virtual (rather than actual) version of something, including virtual computer hardware platforms, storage devices, and computer network resources.

Virtualization began in the 1960s, as a method of logically dividing the system resources provided by mainframe computers between different applications. Since then, the meaning of the term has broadened.[1]

Hardware virtualization[edit]

Hardware virtualization or platform virtualization refers to the creation of a virtual machine that acts like a real computer with an operating system. Software executed on these virtual machines is separated from the underlying hardware resources. For example, a computer that is running Microsoft Windows may host a virtual machine that looks like a computer with the Ubuntu Linux operating system; Ubuntu-based software can be run on the virtual machine.[2][3]

Nested virtualization becomes more necessary as widespread operating systems gain built-in hypervisor functionality, which in a virtualized environment can be used only if the surrounding hypervisor supports nested virtualization. For example, Windows 7 can run Windows XP applications inside a built-in virtual machine. Furthermore, moving existing virtualized environments to a cloud, following the infrastructure as a service (IaaS) approach, is much more complicated if the destination IaaS platform does not support nested virtualization.[4][5]

The way nested virtualization can be implemented on a particular computer architecture depends on supported hardware-assisted virtualization capabilities. If a particular architecture does not provide hardware support required for nested virtualization, various software techniques are employed to enable it.[4] Over time, more architectures gain required hardware support; for example, since the Haswell microarchitecture (announced in 2013), Intel started to include VMCS shadowing as a technology that accelerates nested virtualization.[6]

Licensing[edit]

Virtual machines running proprietary operating systems require licensing, regardless of the host machine's operating system. For example, installing Microsoft Windows into a VM guest requires its licensing requirements to be satisfied.[7][8][9]

Desktop virtualization[edit]

Desktop virtualization is the concept of separating the logical desktop from the physical machine.

One form of desktop virtualization, virtual desktop infrastructure (VDI), can be thought of as a more advanced form of hardware virtualization. Rather than interacting with a host computer directly via a keyboard, mouse, and monitor, the user interacts with the host computer using another desktop computer or a mobile device by means of a network connection, such as a LAN, Wireless LAN or even the Internet. In addition, the host computer in this scenario becomes a server computer capable of hosting multiple virtual machines at the same time for multiple users.[10]

As organizations continue to virtualize and converge their data center environment, client architectures also continue to evolve in order to take advantage of the predictability, continuity, and quality of service delivered by their converged infrastructure. For example, companies like HP and IBM provide a hybrid VDI model with a range of virtualization software and delivery models to improve upon the limitations of distributed client computing.[11] Selected client environments move workloads from PCs and other devices to data center servers, creating well-managed virtual clients, with applications and client operating environments hosted on servers and storage in the data center. For users, this means they can access their desktop from any location, without being tied to a single client device. Since the resources are centralized, users moving between work locations can still access the same client environment with their applications and data.[11] For IT administrators, this means a more centralized, efficient client environment that is easier to maintain and able to more quickly respond to the changing needs of the user and business.[12][13]

Another form, session virtualization, allows multiple users to connect and log into a shared but powerful computer over the network and use it simultaneously. Each is given a desktop and a personal folder in which they store their files.[10] With multiseat configuration, session virtualization can be accomplished using a single PC with multiple monitors, keyboards, and mice connected.

Thin clients, which are seen in desktop virtualization, are simple and/or cheap computers that are primarily designed to connect to the network. They may lack significant hard disk storage space, RAM or even processing power, but many organizations are beginning to look at the cost benefits of eliminating “thick client” desktops that are packed with software (and require software licensing fees) and making more strategic investments.[14] Desktop virtualization simplifies software versioning and patch management, where the new image is simply updated on the server, and the desktop gets the updated version when it reboots. It also enables centralized control over what applications the user is allowed to have access to on the workstation.

Moving virtualized desktops into the cloud creates hosted virtual desktops (HVDs), in which the desktop images are centrally managed and maintained by a specialist hosting firm. Benefits include scalability and the reduction of capital expenditure, which is replaced by a monthly operational cost.[15]

Containerization[edit]

Operating-system-level virtualization, also known as containerization, refers to an operating system feature in which the kernel allows the existence of multiple isolated user-space instances. Such instances, called containers,[16] partitions, virtual environments (VEs) or jails (FreeBSD jail or chroot jail), may look like real computers from the point of view of programs running in them. A computer program running on an ordinary operating system can see all resources (connected devices, files and folders, network shares, CPU power, quantifiable hardware capabilities) of that computer. However, programs running inside a container can only see the container's contents and devices assigned to the container.

Containerization started gaining prominence in 2014, with the introduction of Docker.[17][18]

Other types[edit]

Software
Memory
Storage
Data
  • Data virtualization: the presentation of data as an abstract layer, independent of underlying database systems, structures and storage
  • Database virtualization: the decoupling of the database layer, which lies between the storage and application layers within the application stack over all
Network

See also[edit]

References[edit]

  1. ^ Graziano, Charles. "A performance analysis of Xen and KVM hypervisors for hosting the Xen Worlds Project". Retrieved 2013-01-29.
  2. ^ Turban, E; King, D; Lee, J; Viehland, D (2008). "Chapter 19: Building E-Commerce Applications and Infrastructure". Electronic Commerce A Managerial Perspective. Prentice-Hall. p. 27.
  3. ^ "Virtualization in education" (PDF). IBM. October 2007. Retrieved 6 July 2010.
  4. ^ a b Muli Ben-Yehuda; Michael D. Day; Zvi Dubitzky; Michael Factor; Nadav Har’El; Abel Gordon; Anthony Liguori; Orit Wasserman; Ben-Ami Yassour (2010-09-23). "The Turtles Project: Design and Implementation of Nested Virtualization" (PDF). usenix.org. Retrieved 2014-12-16.
  5. ^ Alex Fishman; Mike Rapoport; Evgeny Budilovsky; Izik Eidus (2013-06-25). "HVX: Virtualizing the Cloud" (PDF). rackcdn.com. Retrieved 2014-12-16.
  6. ^ "4th-Gen Intel Core vPro Processors with Intel VMCS Shadowing" (PDF). Intel. 2013. Retrieved 2014-12-16.
  7. ^ Foley, Mary Jo (5 July 2012). "Microsoft goes public with Windows Server 2012 versions, licensing". ZDNet. CBS Interactive. Finn explained that Standard covers 2 CPUs in a host, and goes from one VOSE (virtual operating system environment - 1 free Std install in a VM on that host) to two, and 'now has all the features and scalability of Datacenter.' He noted there will be a small price increase, but said he thought that wouldn't matter, as it 'should be virtualised anyway and the VOSE rights doubling will compensate. Windows Server Datacenter was a minimum of two 1-CPU licenses with unlimited VOSEs. 'Now it is a simpler SKU that covers two CPUs in a host with unlimited VOSEs,' Finn said.
  8. ^ "Windows Server 2012 Licensing and Pricing FAQ" (PDF). Microsoft. Retrieved 5 July 2012.
  9. ^ "Licensing Windows desktop operating system for use with virtual machines" (PDF). microsoft.com. Microsoft. Retrieved 22 December 2018.
  10. ^ a b "Strategies for Embracing Consumerization" (PDF). Microsoft Corporation. April 2011. p. 9. Retrieved 22 July 2011.
  11. ^ a b Chernicoff, David, “HP VDI Moves to Center Stage,” ZDNet, August 19, 2011.
  12. ^ Baburajan, Rajani, "The Rising Cloud Storage Market Opportunity Strengthens Vendors," infoTECH, August 24, 2011. It.tmcnet.com. 2011-08-24.
  13. ^ "Oestreich, Ken, "Converged Infrastructure," CTO Forum, November 15, 2010. Thectoforum.com". Archived from the original on January 13, 2012. Retrieved December 2, 2011.
  14. ^ "Desktop Virtualization Tries to Find Its Place in the Enterprise". Dell.com. Retrieved 2012-06-19.
  15. ^ "HVD: the cloud's silver lining" (PDF). Intrinsic Technology. Archived from the original (PDF) on 2 October 2012. Retrieved 30 August 2012.
  16. ^ Hogg, Scott (2014-05-26). "Software Containers: Used More Frequently than Most Realize". Network World. Network World, Inc. Retrieved 2015-07-09.
  17. ^ Vaughan-Nichols, Steven J. (21 March 2018). "What is Docker and why is it so darn popular?". ZDNet. CBS Interactive.
  18. ^ Butler, Brandon (10 June 2014). "Docker 101: What it is and why it's important". Network World. IDG.
  19. ^ "Enterprise Systems Group White paper, Page 5" (PDF). Enterprise Strategy Group White Paper written and published on August 20, 2011 by Mark Peters. Archived from the original (PDF) on March 30, 2012. Retrieved July 18, 2013.

External links[edit]