Nested virtualization: Difference between revisions
m Dating maintenance tags: {{Unreviewed}} |
m clean up, added orphan, uncategorised tags using AWB |
||
Line 1: | Line 1: | ||
{{Orphan|date=April 2014}} |
|||
<!--- Don't mess with this line! --->{{Unreviewed|date=April 2014}} |
<!--- Don't mess with this line! --->{{Unreviewed|date=April 2014}} |
||
<!--- Replace Subject of my article with the subject, and the ... after is with whatever your subject is. ---> |
<!--- Replace Subject of my article with the subject, and the ... after is with whatever your subject is. ---> |
||
'''Nested Virtualization''' |
'''Nested Virtualization''' |
||
<!--- Write your article below this line ---> |
<!--- Write your article below this line ---> |
||
[[Virtualization]], in computing, refers to the act of creating a virtual (rather than actual) version of something, including but not limited to a virtual computer [[hardware platform]], [[Operating system|operating system (OS)]], storage device, or computer network resources. A [[hypervisor]] is a software layer that creates the virtualization by abstracting away the underlying physical infrastructure and presenting virtual resources to the system. The term virtual machine (VM) typically refers to an encapsulated entity which includes the operating system, the applications running inside it as well as meta data that define it. It is treated as a “guest” which runs on top of a physical server which serves as the “host”. Virtualization is often considered the key enabling technology in delivering [[IaaS|Infrastructure As A Service]] (IaaS) |
[[Virtualization]], in computing, refers to the act of creating a virtual (rather than actual) version of something, including but not limited to a virtual computer [[hardware platform]], [[Operating system|operating system (OS)]], storage device, or computer network resources. A [[hypervisor]] is a software layer that creates the virtualization by abstracting away the underlying physical infrastructure and presenting virtual resources to the system. The term virtual machine (VM) typically refers to an encapsulated entity which includes the operating system, the applications running inside it as well as meta data that define it. It is treated as a “guest” which runs on top of a physical server which serves as the “host”. Virtualization is often considered the key enabling technology in delivering [[IaaS|Infrastructure As A Service]] (IaaS) |
||
Nested virtualization is a relatively new technology concept takes the abstraction and encapsulation to the next level. It abstracts the differences in hypervisors, networking and storage in different clouds so that existing virtual machines can be run on other hypervisors and on other clouds without any modifications to the virtual machines or their networking. A nested hypervisor is a software layer that runs on top of other virtual environments such as public clouds (like Amazon Web Services and Google Compute Engine) and enables unmodified guest VMs to run in these non-native environments. It also creates a higher level of encapsulation by treating multiple VMs along with their networking and storage configurations as a single entity. |
Nested virtualization is a relatively new technology concept takes the abstraction and encapsulation to the next level. It abstracts the differences in hypervisors, networking and storage in different clouds so that existing virtual machines can be run on other hypervisors and on other clouds without any modifications to the virtual machines or their networking. A nested hypervisor is a software layer that runs on top of other virtual environments such as public clouds (like Amazon Web Services and Google Compute Engine) and enables unmodified guest VMs to run in these non-native environments. It also creates a higher level of encapsulation by treating multiple VMs along with their networking and storage configurations as a single entity. |
||
Nowadays there is significant diversity in IaaS clouds. The differences span from virtualization technology and hypervisors, through storage and network configuration, to the cloud management APIs. These differences make migration of a VM (or a set of VMs) from a private cloud into a public cloud, or between different public clouds, complicated or even impractical for many use-cases. Nested virtualization is the technology that enables complete abstraction of underlying cloud infrastructure from the application virtual machines. This allows deployment of existing VMs into the cloud without any modifications, mobility between the clouds and easy duplication of the entire deployment.<ref>{{cite web|last=Fishman|first=Alex|title=HVX: Virtualizing the cloud|url=http://0b4af6cdc2f0c5998459-c0245c5c937c5dedcca3f1764ecc9b2f.r43.cf2.rackcdn.com/11552-hotcloud13-fishman.pdf}}</ref> |
Nowadays there is significant diversity in IaaS clouds. The differences span from virtualization technology and hypervisors, through storage and network configuration, to the cloud management APIs. These differences make migration of a VM (or a set of VMs) from a private cloud into a public cloud, or between different public clouds, complicated or even impractical for many use-cases. Nested virtualization is the technology that enables complete abstraction of underlying cloud infrastructure from the application virtual machines. This allows deployment of existing VMs into the cloud without any modifications, mobility between the clouds and easy duplication of the entire deployment.<ref>{{cite web|last=Fishman|first=Alex|title=HVX: Virtualizing the cloud|url=http://0b4af6cdc2f0c5998459-c0245c5c937c5dedcca3f1764ecc9b2f.r43.cf2.rackcdn.com/11552-hotcloud13-fishman.pdf}}</ref> |
||
==Use cases for nested virtualization== |
==Use cases for nested virtualization== |
||
Nested virtualization is primarily used for cloning existing multi-tier applications from the data center into the cloud. For example, if a certain application is running in the data center natively in a VMware environment, it can cloned in the public cloud for creating development and test environments or for rapid prototyping, without any modifications to the VM or networking by using a nested hypervisor in the cloud. |
Nested virtualization is primarily used for cloning existing multi-tier applications from the data center into the cloud. For example, if a certain application is running in the data center natively in a VMware environment, it can cloned in the public cloud for creating development and test environments or for rapid prototyping, without any modifications to the VM or networking by using a nested hypervisor in the cloud. |
||
Nested virtualization has many other potential uses. Platforms with hypervisors embedded in firmware need to support any workload and specifically other hypervisors as guest virtual machines. An Infrastructure-as-a-Service (IaaS) provider could give a user the ability to run a user-controlled hypervisor as a virtual machine.This way the cloud user could manage his own virtual machines directly with his favorite hypervisor of choice, and the cloud provider could attract users who would like to run their own hypervisors. Nested virtualization could also enable the live migration of hypervisors and their guest virtual machines as a single entity for any reason, such as load balancing or disaster recovery. It also enables new approaches to computer security, such as honeypots capable of running hypervisor-level root-kits, hypervisor-level rootkit protection, and hypervisor-level intrusion detection —for both hypervisors and operating systems. Finally, it could also be used for testing, demonstrating, benchmarking and debugging hypervisors and virtualization setups. |
Nested virtualization has many other potential uses. Platforms with hypervisors embedded in firmware need to support any workload and specifically other hypervisors as guest virtual machines. An Infrastructure-as-a-Service (IaaS) provider could give a user the ability to run a user-controlled hypervisor as a virtual machine.This way the cloud user could manage his own virtual machines directly with his favorite hypervisor of choice, and the cloud provider could attract users who would like to run their own hypervisors. Nested virtualization could also enable the live migration of hypervisors and their guest virtual machines as a single entity for any reason, such as load balancing or disaster recovery. It also enables new approaches to computer security, such as honeypots capable of running hypervisor-level root-kits, hypervisor-level rootkit protection, and hypervisor-level intrusion detection —for both hypervisors and operating systems. Finally, it could also be used for testing, demonstrating, benchmarking and debugging hypervisors and virtualization setups. |
||
Line 20: | Line 21: | ||
==Commercially available implementations of nested hypervisors== |
==Commercially available implementations of nested hypervisors== |
||
Conventional hypervisors such as [[VMware ESX]], [[Kernel Virtual Machine|KVM]] and [[Xen]] are designed to run on physical x86 hardware and use virtualization extensions offered by modern CPUs (Intel VT and AMD SVM) to virtualize the Intel architecture. On the other hand a nested hypervisor runs inside a virtual machine, where these hardware extensions are not normally available. This can cause someperformance overhead which minimizes the commercial use of these hypervisors in a nested mode. New commercially available high performance nested hypervisors are built ground-up to be run nested in the cloud. For example, the team behind the popular KVM hypervisor commercialized [http://www.ravellosystems.com/technology HVX] at [http://www.ravellosystems.com Ravello Systems] in the year 2013. HVX employs a technology called Binary Translation to implement high-performance virtualization that does not require these virtualization extensions. HVX uses DBT for virtualization. The concept is the same as in the VAX-to-Alpha example. But instead of translating instructions from one CPU to the other, HVX uses DBT to find the “illusion breaking” instructions, and translate those into safe equivalents. HVX can be deployed on almost any existing IaaS cloud and can run unmodified guests from almost any existing hypervisors.<ref>{{cite web|title=Nested Virtualization With Binary Translation|url=http://www.ravellosystems.com/blog/nested-virtualization-with-binary-translation/}}</ref> |
Conventional hypervisors such as [[VMware ESX]], [[Kernel Virtual Machine|KVM]] and [[Xen]] are designed to run on physical x86 hardware and use virtualization extensions offered by modern CPUs (Intel VT and AMD SVM) to virtualize the Intel architecture. On the other hand a nested hypervisor runs inside a virtual machine, where these hardware extensions are not normally available. This can cause someperformance overhead which minimizes the commercial use of these hypervisors in a nested mode. New commercially available high performance nested hypervisors are built ground-up to be run nested in the cloud. For example, the team behind the popular KVM hypervisor commercialized [http://www.ravellosystems.com/technology HVX] at [http://www.ravellosystems.com Ravello Systems] in the year 2013. HVX employs a technology called Binary Translation to implement high-performance virtualization that does not require these virtualization extensions. HVX uses DBT for virtualization. The concept is the same as in the VAX-to-Alpha example. But instead of translating instructions from one CPU to the other, HVX uses DBT to find the “illusion breaking” instructions, and translate those into safe equivalents. HVX can be deployed on almost any existing IaaS cloud and can run unmodified guests from almost any existing hypervisors.<ref>{{cite web|title=Nested Virtualization With Binary Translation|url=http://www.ravellosystems.com/blog/nested-virtualization-with-binary-translation/}}</ref> |
||
==References== |
==References== |
||
Line 32: | Line 32: | ||
<!--- STOP! Be warned that by using this process instead of Articles for Creation, this article is subject to scrutiny. As an article in "mainspace", it will be DELETED if there are problems, not just declined. If you wish to use AfC, please return to the Wizard and continue from there. ---> |
<!--- STOP! Be warned that by using this process instead of Articles for Creation, this article is subject to scrutiny. As an article in "mainspace", it will be DELETED if there are problems, not just declined. If you wish to use AfC, please return to the Wizard and continue from there. ---> |
||
{{Uncategorized|date=April 2014}} |
Revision as of 06:27, 5 April 2014
Template:Unreviewed Nested Virtualization
Virtualization, in computing, refers to the act of creating a virtual (rather than actual) version of something, including but not limited to a virtual computer hardware platform, operating system (OS), storage device, or computer network resources. A hypervisor is a software layer that creates the virtualization by abstracting away the underlying physical infrastructure and presenting virtual resources to the system. The term virtual machine (VM) typically refers to an encapsulated entity which includes the operating system, the applications running inside it as well as meta data that define it. It is treated as a “guest” which runs on top of a physical server which serves as the “host”. Virtualization is often considered the key enabling technology in delivering Infrastructure As A Service (IaaS)
Nested virtualization is a relatively new technology concept takes the abstraction and encapsulation to the next level. It abstracts the differences in hypervisors, networking and storage in different clouds so that existing virtual machines can be run on other hypervisors and on other clouds without any modifications to the virtual machines or their networking. A nested hypervisor is a software layer that runs on top of other virtual environments such as public clouds (like Amazon Web Services and Google Compute Engine) and enables unmodified guest VMs to run in these non-native environments. It also creates a higher level of encapsulation by treating multiple VMs along with their networking and storage configurations as a single entity.
Nowadays there is significant diversity in IaaS clouds. The differences span from virtualization technology and hypervisors, through storage and network configuration, to the cloud management APIs. These differences make migration of a VM (or a set of VMs) from a private cloud into a public cloud, or between different public clouds, complicated or even impractical for many use-cases. Nested virtualization is the technology that enables complete abstraction of underlying cloud infrastructure from the application virtual machines. This allows deployment of existing VMs into the cloud without any modifications, mobility between the clouds and easy duplication of the entire deployment.[1]
Use cases for nested virtualization
Nested virtualization is primarily used for cloning existing multi-tier applications from the data center into the cloud. For example, if a certain application is running in the data center natively in a VMware environment, it can cloned in the public cloud for creating development and test environments or for rapid prototyping, without any modifications to the VM or networking by using a nested hypervisor in the cloud.
Nested virtualization has many other potential uses. Platforms with hypervisors embedded in firmware need to support any workload and specifically other hypervisors as guest virtual machines. An Infrastructure-as-a-Service (IaaS) provider could give a user the ability to run a user-controlled hypervisor as a virtual machine.This way the cloud user could manage his own virtual machines directly with his favorite hypervisor of choice, and the cloud provider could attract users who would like to run their own hypervisors. Nested virtualization could also enable the live migration of hypervisors and their guest virtual machines as a single entity for any reason, such as load balancing or disaster recovery. It also enables new approaches to computer security, such as honeypots capable of running hypervisor-level root-kits, hypervisor-level rootkit protection, and hypervisor-level intrusion detection —for both hypervisors and operating systems. Finally, it could also be used for testing, demonstrating, benchmarking and debugging hypervisors and virtualization setups. [2]
Commercially available implementations of nested hypervisors
Conventional hypervisors such as VMware ESX, KVM and Xen are designed to run on physical x86 hardware and use virtualization extensions offered by modern CPUs (Intel VT and AMD SVM) to virtualize the Intel architecture. On the other hand a nested hypervisor runs inside a virtual machine, where these hardware extensions are not normally available. This can cause someperformance overhead which minimizes the commercial use of these hypervisors in a nested mode. New commercially available high performance nested hypervisors are built ground-up to be run nested in the cloud. For example, the team behind the popular KVM hypervisor commercialized HVX at Ravello Systems in the year 2013. HVX employs a technology called Binary Translation to implement high-performance virtualization that does not require these virtualization extensions. HVX uses DBT for virtualization. The concept is the same as in the VAX-to-Alpha example. But instead of translating instructions from one CPU to the other, HVX uses DBT to find the “illusion breaking” instructions, and translate those into safe equivalents. HVX can be deployed on almost any existing IaaS cloud and can run unmodified guests from almost any existing hypervisors.[3]
References
- ^ Fishman, Alex. "HVX: Virtualizing the cloud" (PDF).
- ^ Muli, Ben-Yehuda. "The Turtles Project: Design and Implementation of Nested Virtualization" (PDF).
- ^ "Nested Virtualization With Binary Translation".
This redirect has not been added to any content categories. Please help out by adding categories to it so that it can be listed with similar redirects. (April 2014) |