📜  虚拟化的特点

📅  最后修改于: 2021-10-22 03:05:40             🧑  作者: Mango

先决条件 – 云计算中的虚拟化和类型

1. 增加安全性 –
以完全透明的方式控制客户程序执行的能力为提供安全、受控的执行环境开辟了新的可能性。客户程序的所有操作通常都是针对虚拟机执行的,然后虚拟机将它们转换并应用于主机程序。
虚拟机管理器可以控制和过滤客户程序的活动,从而防止执行一些有害操作。主机暴露的资源可以隐藏或简单地保护客户。处理不受信任的代码时需要提高安全性.

  • 示例 1:可以在 Cuckoo 沙箱环境中分析不受信任的代码。
    沙箱一词标识了一个隔离的执行环境,在该环境中,指令可以在实际执行环境中被翻译和执行之前被过滤和阻止。
  • 示例 2: Java虚拟机 (JVM) 的表达式沙盒版本是指 JVM 的特定配置,其中通过安全策略可以阻止被认为具有潜在危害的指令。

2. 管理执行 –
特别是,共享、聚合、仿真和隔离是最相关的功能。


图 –托管执行启用的功能

3. 分享——
虚拟化允许在同一主机内创建单独的计算环境。此基本功能用于减少活动服务器的数量并限制功耗。

4. 聚合——
不仅可以在多个来宾之间共享物理资源,而且虚拟化还允许聚合,这是相反的过程。一组独立的主机可以连接在一起并作为单个虚拟主机表示给来宾。此功能是通过集群管理软件实现的,该软件利用一组同类机器的物理资源并将它们表示为单个资源。

5. 仿真——
来宾程序在由虚拟化层控制的环境中执行,虚拟化层最终是一个程序。还可以模拟与主机完全不同的环境,从而允许执行需要物理主机中不存在的特定特性的客户程序。

6. 隔离——
虚拟化允许为来宾(无论它们是操作系统、应用程序还是其他实体)提供一个完全独立的环境,并在其中执行它们。来宾程序通过与抽象层交互来执行其活动,抽象层提供对底层资源的访问。虚拟机可以过滤来宾的活动并防止针对主机的有害操作。

除了这些特性之外,虚拟化启用的另一个重要功能是性能调整。鉴于支持虚拟化的硬件和软件的巨大进步,此功能目前已成为现实。通过微调通过虚拟环境公开的资源的属性,可以更容易地控制来宾的性能。此功能提供了一种有效实施服务质量 (QoS) 基础架构的方法。

7. 便携性——
可移植性的概念根据所考虑的特定虚拟化类型以不同方式应用。

  1. 在硬件虚拟化解决方案的情况下,guest 虚拟机被打包成一个虚拟映像,在大多数情况下,可以安全地移动并在不同的虚拟机上执行。
  2. 在由 JVM 或 .NET 运行时实现的编程级虚拟化的情况下,表示应用程序组件(jar 或程序集)的二进制代码无需在相应虚拟机的任何实现上进行任何重新编译即可运行。