文章
服务器与存储管理
作者:Matthias Pfützner
2012 年 8 月 发布(转载自 eStep 博客)
第 8 部分 — 使用 Oracle Enterprise Manager Ops Center 管理虚拟化
第 7 部分 — Oracle Virtual Desktop Infrastructure 在虚拟化战略中的作用
第 6 部分 — Oracle VM VirtualBox — 个人桌面虚拟化
第 5 部分 — 网络虚拟化和网络资源管理
第 4 部分 — 资源管理是虚拟化的必备技术
第 3 部分 — Oracle Solaris 区域和 Linux 容器在虚拟化战略中的作用
第 2 部分 — Oracle VM Server for x86 在虚拟化战略中的作用
第 1 部分 — Oracle VM Server for SPARC 在虚拟化战略中的作用
|
在本文中,我们将讨论硬件、桌面和操作系统虚拟化。此外,还有各种 Oracle 虚拟技术,其中包括 Oracle VM Server for SPARC。
首先,我们来讨论一下虚拟化 的含义。Wikipedia 是这样描述的:
“在计算领域,虚拟化是指为硬件平台、操作系统、存储设备或网络资源等创建虚拟版本,而非实际版本。”
按照所涉及的层面,虚拟化可分为以下几类:
本文不介绍操作系统层面之外的软件虚拟化,但提供了一些软件虚拟化示例:
因此,软件虚拟化技术范围很广。
在深入介绍硬件虚拟化之前,我们先来介绍以下虚拟化概念:
现在,我们来介绍虚拟机管理程序 这一术语的定义。同样,Wikipedia 用整篇文章进行了介绍,但在这里,您只需要了解虚拟机管理程序是抽象底层元素的层,它使虚拟机管理程序的上层程序不能看到下层结构,而只看到虚拟机管理程序暴露的接口。您也可以将虚拟机管理程序称为虚拟机管理器,它可以部署到体系的不同层面。
虚拟机管理程序有几种不同类型:
同样,Wikipedia 提供了具体文章。
Oracle 提供基于 SPARC 和 x86 的系统,以下虚拟化技术可用在这些系统上:
Oracle VM Server for SPARC 和 Oracle VM Server for x86 是 Type 1 虚拟机管理程序。Oracle VM VirtualBox 是 Type 2 虚拟机管理程序。
如果您想从更高的层次上了解操作系统虚拟化,也可以参考 Wikipedia 上的相关文章。
操作系统虚拟化为应用程序提供安全、隔离的运行时环境,可作为专用的 OS 实例,同时还能共享设备、内核等操作系统资源。如果使用操作系统虚拟化,则需要资源管理。
在深入探讨之前,先来看一下可以在不同类型的 Oracle 硬件上运行的不同操作系统:
对于 Oracle Solaris 11 而言,其虚拟化技术为 Oracle Solaris 区域(在 Oracle Solaris 10 中称为 Oracle Solaris 容器)。
桌面虚拟化是虚拟化的另一个主要领域。
首先,我们来定义什么是桌面。Wikipedia 提供了两篇相关文章:一篇是关于桌面虚拟化,另一篇是关于桌面环境。在此,我们继续使用这一定义:桌面是在计算机显示器上看到且能够通过键盘和鼠标与之交互的内容。
桌面虚拟化是将“桌面提供程序”从控制显示器、键盘和鼠标的系统中分离出来的技术。
Oracle VM Server for SPARC 是 Type 1 薄虚拟机管理程序,用于在 SPARC T 系列服务器上执行硬件虚拟化并使用半虚拟化。因此,Oracle VM for SPARC 提供了在一个系统上运行多个逻辑域的技术。每个域运行各自的操作系统,并独立于其他逻辑域。
就这一点而言,图 1 概括了本文前面讨论的内容。

图 1. Oracle 虚拟化技术和产品
在图 1 中,我们可以看到名为 Oracle VM Server for x86 的类似产品。此处对 Oracle VM Server for SPARC 的一些一般性解释同样适用于 Oracle VM Server for x86。
回顾 Type 1 薄虚拟机管理程序的定义,显然,我们需要解释一下如何管理和设置逻辑域。作为“薄虚拟机管理程序”的特征之一,我们需要通过外部实体对其进行管理。Oracle VM Server for SPARC 的另一个特征是“Type 1”,这意味着虚拟机管理程序直接运行在硬件上。首先来介绍虚拟机管理程序。
您可能已经接触过 SPARC T 系列系统,因为该系列从多年前的 Sun Fire T1000 服务器一直延续至今天的 Oracle SPARC T4-4 服务器。虽然它们是用相同的虚拟机管理程序,但您可能从亲眼见到、处理、或体验过。这是因为在 SPARC T 系列系统中,虚拟机管理程序作为系统组成部分,“隐藏”在 OBP (Open Boot PROM) 中,而 OBP 相当于 x86 系统中的 BIOS。因此,与 x86 系统上的大多数虚拟机管理程序相反,在 SPARC T 系列系统上,不需要安装额外的软件。但是,检查 OBP 的版本不失为谨慎之举,因为有些更改和更新可能会增加新的特性。
如果您正在使用 SPARC T 系列系统,但从未将其细分为逻辑域,说明您正运行在一个占用所有硬件的大逻辑域中。这可以作为 SPARC T 系列系统中虚拟机管理程序的成熟度与稳定性的证据。
前面提到过,由于薄虚拟机管理程序本身不具备管理功能,因此需要使用外部实体进行管理。对于 SPARC T 系列系统而言,管理工作可由虚拟机管理程序上的 guest 来完成,因此无需大型外部管理框架即可使用系统(但如有必要,也可以由大型外部框架进行管理)。
在 SPARC T 系列系统中,由于虚拟机管理程序是 OBP 的一部分,所以系统中运行的任何 OS 都运行在虚拟机管理程序上,因此,每个 OS 均是都是虚拟机管理程序上的来宾系统。因此,要创建管理系统,我们只需在已运行的 OS 中启动相关控制后台程序,为“控制域”分配所需的虚拟 CPU,配置虚拟网络和存储设备,然后重新引导。完成这些操作后,就可以利用未使用、不再使用以及闲置的硬件来创建更多逻辑域了。要了解详细过程,请参阅 Oracle VM for SPARC 文档。
Oracle VM Server for SPARC 在逻辑边界(例如,一个 CPU 内核中的线程)上执行系统细分或分区,并通过 I/O 服务或通过分配 I/O 设备来分割 I/O 资源。因此,可以具有比物理设备更多的逻辑域,可导致在逻辑域之间共享设备。可与网络接口、启动磁盘或存储 HBA 来进行共享。要管理这些项目,您可创建特定 I/O 域。您还可在冗余的高度可用的设置中创建域。还需要注意,当在不同域之间共享单个物理设备时,域可影响底层单台物理设备的吞吐量。因此,使用 Oracle Solaris 11 中网络虚拟功能等技术可以帮组为特定域定义服务属性的质量。
有不同类型的域,对这些不同类型有个大概的了解对了解 Oracle VM Server for SPARC 如何运作非常重要。
图 2 提供 Oracle VM Server for SPARC 的概览。

图 2. Oracle VM Server for SPARC 架构
从上面的描述我们可以看到,构建虚拟化环境可能变得复杂,而周密的计划可保证所创建架构的长期最佳使用效果。
另外,还有一个重要事项需要谨记。考虑到摩尔定律以及软件需求的增长速度落后于硬件速度的提高,我们很有可能将旧的环境整合到更少但功能更强大的新系统中。基于 Oracle SPARC T4 处理器的系统为这些整合任务提供正确的解决方案。
Oracle VM Server for SPARC 的优势包括:
Oracle VM Server for SPARC 是 Oracle SPARC T 系列系统上经实践检验、成熟且稳定的虚拟化技术。随着基于 Oracle SPARC T4 处理器的系统的问世,CPU 的“性能”甚至能与基于 x86 的虚拟化环境的性能抗衡。Oracle VM Server for SPARC 经过全面的集成,因此易于部署、管理和使用。
Matthias Pfützner 在 1998 至 2012 年间曾任职于 Sun Microsystems,现在为 AppSense 工作。在为 Sun 和 Oracle 工作的 14 年间,他作为专业服务与售前小组的成员,为 Deutsche Bank、Deutsche Telekom、Vodafone 和 Daimler Chrysler 等客户提供集群、供给、系统管理、虚拟化和云计算等方面的技术支持。作为全球范围内近百位 Sun 与 Oracle 重要领域技术专家中的一员,他帮助定义和促成了这些技术,对全球的 IT 业务产生了重要影响。此外,他还在各种专题会议和客户会议上发表过演讲。
Matthias 感谢 Uwe Strahlendorf 和 Detlef Drewanz 为本文提供宝贵反馈。
| 修订版 1.0,2012 年 8 月 14 日 |
要了解所有 Oracle 技术中与系统管理员相关的内容,请在 Facebook 和 Twitter 上关注 OTN Systems。